• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

[Solved] Skipping Cinematics wont stop entire trigger

Status
Not open for further replies.
Level 7
Joined
Apr 21, 2011
Messages
93
I'm making a map with lots of cinematics that resemble the classic Warcraft 3 campaign cinematics, and I also want to add the option to cancel a cinematic.

I've used the "When Player skips a cinematic sequence" event trigger, turning off the cinematic mode and clearing things to how it should be at the end of the cinematic (example below), but the problem is that after a cinematic is skipped, the trigger for the cinematic will still run, and even though the game camera has been normalized and cinematic mode is off, the transmissions that were supposed to occur if the cinematic wasn't cancelled still occur, and so do the camera shifts!

The only way I see that a trigger can actually be stopped mid-execution is via the "Skip remaining actions" action, but that can't be applied to cancelling cinematics. Or can it?

Any help appreciated :pir:

  • SkipCinematicExample
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
    • Actions
      • Trigger - Turn off Cinematic01 <gen>
      • Cinematic - Turn cinematic mode Off for (All players)
      • Unit - Unpause all units
      • -------- Everything else I need to clear like unit positions etc. + a camera reset. --------
 
Level 7
Joined
Apr 21, 2011
Messages
93
Post your trigger that is bugging.

Remember that if you're using waits, you need to add Skip remaining actions after every wait.

I did not know that about the waits. :eekani:

Oooh, so maybe this could work:
What if I was to do something like
"When cinematic is skipped change variable "CinematicSkip" to 1 (integer)", and in my cinematic triggers, add "If, then, else -> If CinematicSkip = 1, then Skip remaining actions, else Do nothing" to every time the trigger uses a wait.

Hang on, going to create an example trigger to show you what I mean.

However, right at this time I'm really leaning towards Aeroblyctos' idea about adding the choice to skip a cinematic at the beginning of it, as the second one would need more work.

EDIT:

  • SkipCinematicExample
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
    • Actions
      • Set CinematicSkip = 1
  • StartingCinematic Copy
    • Events
    • Conditions
    • Actions
      • Unit - Pause all units
      • Cinematic - Turn cinematic mode On for (All players)
      • Game - Set the time of day to 10.00
      • Camera - Apply 00CinematicA00 <gen> for Player 1 (Red) over 0.00 seconds
      • Camera - Apply 00CinematicA01 <gen> for Player 1 (Red) over 9.00 seconds
      • Camera - Change camera smoothing factor to 2.00
      • Cinematic - Fade in over 4.00 seconds using texture White Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
      • Animation - Lock CinematicUnit00's Head to face CinematicUnit01, offset by (0.00, 0.00, 90.00)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • CinematicSkip Equal to 1
        • Then - Actions
          • Skip remaining actions
        • Else - Actions
      • Wait 3.00 seconds
      • Cinematic - Send transmission to (All players) from CinematicUnit00 named Commander Blightbane: Play No sound and display Captain Farguard, y.... Modify duration: Set to 6.00 seconds and Don't wait
      • Animation - Lock CinematicUnit01's Head to face CinematicUnit00, offset by (0.00, 0.00, 150.00)
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • CinematicSkip Equal to 1
        • Then - Actions
          • Skip remaining actions
        • Else - Actions
      • Wait 3.00 seconds
      • Camera - Apply 00CinematicA02 <gen> for Player 1 (Red) over 10.00 seconds
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • CinematicSkip Equal to 1
        • Then - Actions
          • Skip remaining actions
        • Else - Actions
Of course the triggers would include all the clearing up actions etc, but this is just the general idea. Would that work?
 
Level 37
Joined
Mar 6, 2006
Messages
9,243
Of course the triggers would include all the clearing up actions etc, but this is just the general idea. Would that work?

Add the skip remaining actions right after waits, don't have any other actions in between.

wait 2 seconds
if condition then skip actions
actions here
wait 3 seconds
if condition then skip actions
actions here
...
 
Level 4
Joined
Apr 9, 2011
Messages
84
Go to your Campaign Editor, hit open and click on the "DemoCampaign.w3n". Select any mission and have a look at the cinematic triggers. Helped me long time ago too.

~Renschi
 
Status
Not open for further replies.
Top