Forum Discussion

IvanBurgess's avatar
IvanBurgess
Community Member
10 months ago

Object states and the timeline

I have a slide where the timeline pauses, and the learner makes a decision which team to root for at 9 seconds.  After that decision is made, at 20 seconds I want the team mascot to appear, this mascot should be for the team they selected earlier.  Trouble is, I'm having a terrible time making that work. 

I tried having the two pictures stacked and when they select team 1, a trigger changes the top image (team 2) to hidden which should just leave the image underneath (team 1) to show up at that 20 second mark, but the team 1 image is still showing.

I tried having both mascots set to an initial state as hidden and using the decision to change the state of the selected one to normal, but instead of showing up at the 20 second point, it appears immediately. 

I tried having the picture as two states, one with each mascot, and the trigger for the decision to change the state of that picture to the correct mascot, but instead of showing up at the 20 second point, again, it shows immediately.   

Am I missing something obvious, or is the only way to do this with variables and trigger actions based on the variable at the 20 second point?

  • A simple trigger should work to change the state of the appropriate mascot to Normal when the timeline reaches 20 seconds.

    If you're using a trigger like that, but the state isn't changing, there might be an issue with the trigger that resumes the timeline (i.e., the timeline never reaches 20 seconds). 

    It's hard to tell without seeing the .story file. I suggest you upload that for troubleshooting. 

    Here are the best practices for uploading a .story file:

    • Only include slides that are involved in the problem.
    • Be sure all objects, layers, motion paths, and variables have meaningful names.
    • If there is proprietary content, replace or delete it. For example, replace proprietary text with ipsum lorem text.
    • Be sure to clearly describe the following:
      • What you want to happen
      • What is not happening that should happen
      • What is happening that shouldn’t happen
      • What you have tried
    • IvanBurgess's avatar
      IvanBurgess
      Community Member

      Thank you for the reply, Ill upload the file as soon as I get out of work.

    • IvanBurgess's avatar
      IvanBurgess
      Community Member

      Thank you for taking the time.  I’ve attached the storyline file with everything removed except the relevant part.  The lesson is on the differences between a liquid sodium cooled reactor and a traditional light water reactor presented as a friendly competition.  This is the first review slide, and it has the learner choose which team they are rooting for.  After that the pictures of the fans, mascots, and plushies should all be displayed in the chosen team colors.

      What should happen is at the eight-second point the slide pauses, and the learner clicks “Pick sodium” and the trigger changes the state of “Water plush” to hidden and resumes the timeline.  At 20 seconds the sodium plush should be shown since that’s where it first enters the stage on the timeline.

      What’s actually happening is the water plush isn’t changing state and appears at the 20 second point (it’s overtop of the sodium plush).

      I’ve tried having both plushies initial state as hidden and using the team selection to change the appropriate ones state to normal, but that makes it appear immediately instead of at the 20 second point where is starts on the timeline.

      I’ve also tried using a single picture with each plush as a different state, then having the team selection choose the appropriate state.  There again, it appears immediately rather than at the 20 second point.

      Thank you for looking at this. 

      V/R Bernard

  • The attached file has an edited version of the slide that works like you want it to. Here are the changes:

    • Cue points on the timeline provide an easy way to indicate a time in "when timeline reaches" triggers.
    • The plushy and child pics span the entire timeline. They all have the Initial State of Hidden, so they won't appear until a trigger changes them to Normal.
      • They also have a short entrance animation, so they'll fade in when changed to Normal.) 

     

    • A text variable called mascotChoice is used to track what team is chosen. The initial value is blank. Triggers on the "Pick" buttons adjust the variable to a meaningful value. 

     

    • At the cue points, triggers change the state of the appropriate plushy and child pics to Normal. This is based on the value of the mascotChoice variable. 
      • Because there are only 2 choices, one If/Else trigger works to show the appropriate pic. If there were more options, there would have to be a separate trigger for each potential condition. 
    • IvanBurgess's avatar
      IvanBurgess
      Community Member

      Thank you very much for your time and assistance.  I had done something similar to make it work, but your way is a bit more elegant.  I had been hoping I was just missing a setting or something obvious, turns out I just didn't understand how the timeline works.   Thank you.

      V/R Bernard

      • JudyNollet's avatar
        JudyNollet
        Super Hero

        You're welcome, Bernard.

        As Walt often says, "PIFWYC (pay it forward when you can)." 

  • Judy, of course, gave you the solution, but for anybody that reads this, perhaps I can shed a little light on why it didn’t work for you originally.

    You said,

    What should happen is at the eight-second point the slide pauses, and the learner clicks “Pick sodium” and the trigger changes the state of “Water plush” to hidden and resumes the timeline.  At 20 seconds the sodium plush should be shown since that’s where it first enters the stage on the timeline.

    What’s actually happening is the water plush isn’t changing state and appears at the 20 second point (it’s overtop of the sodium plush).

    When an object appears later on the timeline, it isn’t non-existent, as most people assume. It is present, but in a temporary hidden state. The appearance point on the timeline has a built-in trigger to change the state to Normal. So your trigger to change “water plush” to the hidden state has no effect. Then when the timeline reaches 20 seconds, it changes “water plush” from Hidden to Normal, as it is designed to do.

    I’ve tried having both plushies initial state as hidden and using the team selection to change the appropriate ones state to normal, but that makes it appear immediately instead of at the 20 second point where is starts on the timeline.

    That also means you can’t change the state of an object, and expect it to stay hidden until the timeline shows it, and have it show up in that state. When your trigger changes its state, it leaves the Hidden state and assumes the new state immediately.

     

    • IvanBurgess's avatar
      IvanBurgess
      Community Member

      Thank you very much.  You are correct, this is not at all how I thought it worked.  This also explains why I wasn't able to change the state of objects on a layer before the layer was visible.  I really appreciate the explanation so I will have much less frustration in the future.

       

      V/R Bernard