When dealing with problems like this it is often helpful to 'dry run' the triggers - imagine what will happen when the conditions are met (you may use pen and paper if you wish). Triggers set to a group of players are just copied amoung the specified players; in your case, the shown trigger will be owned by P1-5. Triggers run from P1 to P8, so when P1 dies, this trigger runs for him and sets the deaths of "Left Upper Level Door" back to 0. This trigger does not run for any other player because the cinditions are not met.
You need some variable/condition that will stay in the 'Player N has died' state for atleast one full trigger cycle to allow the message to be seen by everyone.
One possibility is to make a trigger for Force 1 that will set the deaths of some unit for the player that died to 2. Each trigger cycle subtract one from this death counter. When it hits 1, display the message. This will display the message one trigger cycle after a player has died, because if, say, P3 dies, you have to wait one tirgger cycle and then display the message. Otherwise it will be displayed only to P4 and P5 (the players whose triggers run after the triggers or P3).
Here is an example of such a method:
You have a trigger for Force 1 that detects the death conditions and sets the deaths of "Cantina" to 2 for the dead player.
Trigger("Force 1"){
Conditions:
Score("Current Player", Custom, Exactly, 1);
Deaths("Current Player", "Left Upper Level Door", Exactly, 2);
Actions:
Comment("");
Preserve Trigger();
Set Deaths("Current Player", "Cantina", Set To, 2);
}
//-----------------------------------------------------------------//
Then, for one of the computer players (P8 in this example), you make the following trigger that subtracts the "Cantina" death counter:
Trigger("Player 8"){
Conditions:
Always();
Actions:
Comment("");
Preserve Trigger();
Set Deaths("Force 1", "Cantina", Subtract, 1);
}
//-----------------------------------------------------------------//
And finally, you have the set of these five triggers for Force 1 that display the death of other palyers:
Trigger("Force 1"){
Conditions:
Deaths("Player 1", "Cantina", Exactly, 1);
Deaths("Current Player", "Cantina", Exactly, 0);
Actions:
Comment("");
Preserve Trigger();
Display Text Message(Always Display, "P1 has died.");
}
//-----------------------------------------------------------------//
Trigger("Force 1"){
Conditions:
Deaths("Player 2", "Cantina", Exactly, 1);
Deaths("Current Player", "Cantina", Exactly, 0);
Actions:
Comment("");
Preserve Trigger();
Display Text Message(Always Display, "P2 has died.");
}
//-----------------------------------------------------------------//
Trigger("Force 1"){
Conditions:
Deaths("Player 3", "Cantina", Exactly, 1);
Deaths("Current Player", "Cantina", Exactly, 0);
Actions:
Comment("");
Preserve Trigger();
Display Text Message(Always Display, "P3 has died.");
}
//-----------------------------------------------------------------//
Trigger("Force 1"){
Conditions:
Deaths("Player 4", "Cantina", Exactly, 1);
Deaths("Current Player", "Cantina", Exactly, 0);
Actions:
Comment("");
Preserve Trigger();
Display Text Message(Always Display, "P4 has died.");
}
//-----------------------------------------------------------------//
Trigger("Force 1"){
Conditions:
Deaths("Player 5", "Cantina", Exactly, 1);
Deaths("Current Player", "Cantina", Exactly, 0);
Actions:
Comment("");
Preserve Trigger();
Display Text Message(Always Display, "P5 has died.");
}
//-----------------------------------------------------------------//
Note that it will not display the death message to the dead player himself because of the "Deaths("Current Player", "Cantina", Exactly, 0);" condition. If you want the player to see his own death message just like everyone else, remove that condition.
Post has been edited 4 time(s), last time on Aug 2 2009, 1:25 pm by JaFF.
None.