• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Trouble with Trigger

Status
Not open for further replies.
Level 2
Joined
Jun 9, 2013
Messages
18
Hey All.

Having trouble with this trigger. Its suppose to be a trigger so players can click on the Hero's and kind of see what they are about.

The problem I'm having is that when one player clicks on the Hero, it puts both players in Cinematic mode, displaying the text for just the player who clicked the unit.

I really would like it to just put the player who clicked the Hero into Cinematic Mode.

I know it's an error with the first Action, but not sure what I should put in place of what I have.

  • Monk Camera
    • Events
      • Player - Player 1 (Red) Selects a unit
      • Player - Player 2 (Blue) Selects a unit
    • Conditions
      • (Triggering unit) Equal to Monk 0011 <gen>
      • (Monk 0011 <gen> is selected by (Triggering player)) Equal to True
    • Actions
      • Cinematic - Turn cinematic mode On for (All players controlled by a ((Triggering player) controller) player)
      • Cinematic - Turn on letterbox mode (hide interface) for (Player group((Triggering player))): fade out over 2.00 seconds
      • Camera - Pan camera for (Triggering player) to (Center of Monk Zone <gen>) over 0.00 seconds
      • Camera - Apply Monk <gen> for (Triggering player) over 1.00 seconds
      • Game - Display to (Player group((Triggering player))) for 7.00 seconds the text: |Cffffff00---------...
      • Wait 7.00 seconds
      • Cinematic - Turn off letterbox mode (show interface) for (All players controlled by a ((Triggering player) controller) player): fade in over 2.00 seconds
      • Camera - Reset camera for (Triggering player) to standard game-view over 0.00 seconds
      • Cinematic - Turn cinematic mode Off for (All players controlled by a ((Triggering player) controller) player)
 
Level 29
Joined
Oct 24, 2012
Messages
6,543
anything u use twice or more should be stored into a temp variable and that should be used. u have location leaks. and again waits are a bad idea.

the reason that all players are going to cinematic mode is this line
  • Cinematic - Turn cinematic mode On for (All players controlled by a ((Triggering player) controller) player)
 
Level 9
Joined
Apr 23, 2010
Messages
312
Don't use the 'All players controlled by a ((Triggering player) controller) player)'. Change this...
  • Cinematic - Turn cinematic mode On for (All players controlled by a ((Triggering player) controller) player)
to this...
  • Cinematic - Turn cinematic mode On for (Player group((Triggering player)))
though you really should use variables for this kind of thing. Also if you are planning on having multiple units to look at (assuming you are using multiple triggers to do this) I would recommend you do something like this...
  • Events
    • Player - Player 1 (Red) Selects a unit
    • Player - Player 2 (Blue) Selects a unit
  • Conditions
  • Actions
    • Cinematic - Turn cinematic mode On for (Player group((Triggering player)))
    • Cinematic - Turn on letterbox mode (hide interface) for (Player group((Triggering player))): fade out over 2.00 seconds
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Picked Unit) Equal to Monk 0011 <gen>
        • (Monk 0011 <gen> is selected by (Triggering player)) Equal to True
      • Then - Actions
        • Camera - Pan camera for (Triggering player) to (Center of Monk Zone <gen>) over 0.00 seconds
    • Camera - Apply Monk <gen> for (Triggering player) over 1.00 seconds
    • Game - Display to (Player group((Triggering player))) for 7.00 seconds the text: <Monk Text>
  • ---- Else - Actions
  • <Use a loop trigger as the wait>
  • Set Player_Variable = (Triggering player)
  • Set Player_Number = (Player number of (Triggering player))
  • Set Loop_Timer[Player_Number] = 7
  • Events
    • Time - Every 1.00 seconds of game time
  • Conditions
  • Actions
    • Set Loop_Timer[Player_Number] = Loop_Timer[Player_Number] - 1
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • Loop_Timer[Player_Number] = 0
      • Then - Actions
        • Cinematic - Turn off letterbox mode (show interface) for (Player group((Triggering player))): fade in over 2.00 seconds
        • Camera - Reset camera for Player_Variable to standard game-view over 0.00 seconds
        • Cinematic - Turn cinematic mode Off for (Player group((Triggering player)))
      • Else - Actions
 
Status
Not open for further replies.
Top