Copy link to clipboard
Copied
Hello. I have a question for all of you about the Captivate's Advanced Actions. I was wondering if I can trigger an Advanced Action on slide load, that will show a button at a specific time on all slides, not an individual one only?
I have a mandatory course requirement, set by the client, that each slide must be viewed for at least ## of time before being allowed to move to the next slide. This time keeps changing, but not the timeline. So I would like to try working Smarter and using a single delay setting in the Captivate files that can be changed in one place, if possible.
I know I can do the delay action and then show a selected object in the either the timeline on a slide or using an Advanced Action on each slide that targets a named object on the slide. The issue is that I have a mandated time limit for this project that keeps changing. This delay has gone through different lengths, starting at 5 seconds and then 7 and now 8 seconds.
This change of time can be made on the timeline of course, but not course wide from one spot. It would be great if it could be set for course wide display. My project is 28 chapters, over 2000 slides and it is getting hard to keep up with the timeline for completion with the changing of the times.
Anyway, with the constant change in required lengths, I was hoping to use the on slide load feature to preform an advanced action that would be delayed by the delay the appearance of the "btn_MainNext" on each slide, but each slide has a different name since there can't be two objects with the same name, btn_MainNext_1, btn_MainNext_2, btn_MainNext_3 . Note, there are videos and interaction slide have different named next buttons, like "btn_VideoNext."
When trying this theory, I can get the next button to show on slide load, but I have to adjust the Advanced Action on every slide, not chapter wide, so it is the same as the timeline edit.
Any thoughts on how to change the timing of 2000+ slides, broken up into 28 chapter files, without fixing them by hand in the timeline one by one?
Copy link to clipboard
Copied
Maybe you never used Shared actions? Both delay time and button name could be parameters.
Another idea: have the button on the first slide, timed for the rest of the project, but disable it and use Delay command to enable it after a certain time. If you have put that in a shared action the only parameter to be changed would be the time delay.
Copy link to clipboard
Copied
Lilybiri, thank you for the new direction to explore. I tried the Shared Action and was able to use it to show the NEXT button at the same delay on each slide.
However, I can't seem to edit the existing 8 second delay Shared Action to change it to a different time and have all the existing references to the Shared Actions update to the new time.
For example, I have a initial delay of 8 seconds on every next button with the "shd_delayNextAction". As expected the buttons show 8 seconds after slide load since I placed it on the slide enter. However, if the client changes the requirement to 10 seconds to meet the new mandatory total time limit, how can I change the delay to 10 seconds? I can not directly edit the Shared Action from within the Advanced Actions menu or even open the .cpaa file. It makes you create a new one and create a new name, like "shd_delayNextAction2". This forces me to reset the Shared Action to the new "#2" on every slide enter. I can't seem to edit it, only create a new one that has a different name.
If I have to reset the shared action link on each slide to change the time it seems like it has not reduced my work load of editing every page of the 2000+ course.
Any ideas would be welcome.
Copy link to clipboard
Copied
You need some tutoring on parameters for advanced actions apparently. Can you read this article:
Parameters in Shared Actions - Captivate 7 vs. 8 - Captivate blog
The delay time is a 'literal' which is what I call a 'candidate' parameter. Indicate it to be a parameter, and you'll be able to change it on each shared action.
I quickly created a short shared action, where an audio clip is played after a certain time. The audio clip is a compulsory parameter, but the literal (was 5 seconds) has to be indicated as parameter by checking the checkbox.
Copy link to clipboard
Copied
Lilybiri, I am able to create the delay as a candidate parameter and set it to the 8 second delay in a new variable "time". When I add the shared action to the slide load, on every page, to show of the button, I can set the delay's variable value to "time". I was able to then change the value of the variable "time" to change the actual delay on all slides within the Captivate project that have that shared action applied to it and not make adjustment on every page.
I was able tp change all the existing values from their current setting (say 4 seconds) to a new value of 6 seconds changing only the numerical value of the variable "time"
Variable: "time"=8
Shared Action: delay = "time" (variable) | seconds
show = nextBtn (parameter)
Thank you for the article share.
Copy link to clipboard
Copied
You didn't have to use a variable, the literal can be a parameter as well as I showed in the screenshot. It makes it a bit more complicated with a variable, that is up to you. If you have a lot of slides with the same delay this makes sense, but I hadn't understood that from the initial question.
Copy link to clipboard
Copied
Thank you, I have over 2000 slides and I think the variable will help. I appreciate your help with this. I felt like I was missing a link until your help.