Can a timer trigger a timer? Asset flow question


#1

I have an asset flow that I want to be able to scroll to an image, and then let it pause there for 10 seconds. Then after 10 seconds, I want the asset flow to cycle through each item every 2 seconds. Make sense?


#2

I am guessing you would need to add two triggers - 1. has been inactive 10 secs (no repeat) scroll to next item.

then where this ends you put the second trigger and set it to has been inactive 2 secs (repeat) scroll to next item.

I just did a quick test and it works


#3

Hello @tedc,

I think I’ll go like this …

First, let’s make the Asset Flow play “automagically” :

  • set a Global Variable “slide direction” that will have value LtR (left to right will be the starting default value)
  • set a Global Variable “slide timer” to value of 2 (will be seconds)
  • set a Trigger/Action on Asset Flow : when Asset Flow last item is reached, set “slide direction” to “RtL” (Right to Left)
  • set a Trigger/Action on Asset Flow : when index 1 is reached, set “slide direction” to “LtR”
  • set a Trigger/Action : timer every “slide timer” secs and direction is LtR, Asset Flow goes Next
  • set a Trigger/Action : timer every "slide timer" secs and direction is RtL, Asset Flow goes Previous

Now you have a nice Asset Flow that goes back and forth every 2 secs.

Let’s set up the “pause slide” :

  • set a Global Variable “target slide” that will have the index value of the slide you want to pause on
  • set a Trigger/Action on Asset Flow : when Asset Flow reaches index “target slide” set Global Variable “slide timer” to 10secs
  • set a Trigger/Action on Asset Flow : when Asset Flow index is changed and index not equal to “target slide” set Global Variable “slide timer” to 2secs

And you’re done, the Asset Flow will stay 10secs on your target slide and 2secs on the others.

I’ve done it quick and dirty while typing this and it works :wink:


#4

Thanks for reply guys. Melvyn, I can’t seem to get this to work. I stacked two triggers on the asset flow:

WHEN
Asset Flow has been inactive 10 sec no repeat — next, asset flow
WHEN
Asset Flow has been inactive 2 sec repeat — next, asset flow — start time 10 seconds

Things get goofy, and when I scroll and stop an item … the timing is off and sometimes it changes after 2 seconds.

I wish you could reset a timer when user activity occurs.


#5

Alex, this is pushing my skill set here, but this is very cool and I am curious. The only thing I see, is what if I want to stop on a random item in asset flow?


#6

Use a Random Number Generator Interface Asset instead of using a fixed Global Variable.

You can set it so it’s generated between 1 and the number of elements of your Asset Flow. You can even add a trigger to refresh it when it suits you.


#7

Alex, I have complete first four steps. But I can’t seem to figure out:

set a Trigger/Action : timer every “slide timer” secs and direction is LtR, Asset Flow goes Next

Where do you set the trigger? If I put a timer on Asset Flow, then I only have has been inactive and timer has elapsed options?


#8

This must have something to do with binding …


#9

You have to put it directly on the Scene like this :

(and do it another time with “RtL” and “Previous”)

It’s your Scene that will “move” the Asset Flow indefinitely, in one direction or the other, with a delay of 2 or 10secs according to the Slide you want to have displayed longer.


#10

Sorry if spamming you. I got the first part to work! Yay. Thank you. I don’t randomly pause on a slide, I mean if I scroll to index 2, I want the asset flow to pause on that slide. If I scroll to index 15, etc.


#11

Ok, I am so close, I set user activity detected to change timer to 10 seconds. But I am not sure how to get timer set back to 2 seconds after 10 second pause.


#12

You can try to set a second action after the one that sets the timer to 10secs.
This second action will be to set the timer back to 2secs but will trigger only after 10secs (on the Timing and Animation panel on the right side)


#13

Eureka! Thanks for making me a smarter human today!