Dans ArmA2 il est possible d'interagir sur certain objet de la carte.
Par exemple il se pourrait que vous aurez comme objectif de détruire un bâtiment d'origine, ou encore de couper le courant dans une ville ce qui provoquera la coupure des lampadaires.
Détecter qu'un bâtiment est détruit
- Cliquez sur le bouton Afficher ID qui se trouve sur le menu principal de l'éditeur. Il permettra d'afficher les IDs des différents objets de la carte.
- Repérez l'ID du bâtiment qui vous intéresse.
- Placer un déclencheur sur la position du bâtiment et insérer la commande suivante dans le champ "Condition" et remplacer ID_Du_Batiment par l'ID du bâtiment que vous voulez :
getdammage ([0,0,0] nearestObject ID_Du_Batiment) == 1
C'est à vous de régler les autres paramètres du déclencheur selon vos désirs.
Dans notre cas, le déclencheur s'activera une fois que le bâtiment sera détruit.
Détruire un bâtiment
Pour détruire un bâtiment d'origine, récupérer son
ID comme précédemment puis ajouter dans le champ "
Sur Activation" d'un déclencheur la commande suivante :
([0,0,0] nearestObject ID_Du_batiment) setDammage 1
Éteindre/Allumer un lampadaire
Un seul
Pour éteindre un lampadaire, récupérer son
ID, puis ajouter dans le champ "
Sur Activation" d'un déclencheur la commande suivante :
(Pour tester, mettez true dans le champ "Condition")([0,0,0] nearestObject ID_Du_Lampadaire) switchLight "OFF"
De la même manière, vous pouvez rallumer le lampadaire avec la commande suivante :
([0,0,0] nearestObject ID_Du_Lampadaire) switchLight "ON"
Plusieurs
Pour éteindre plusieurs lampadaires dans une même zone, vous devez dans un premier temps placer une
logique de jeu nommée
centre.
Ensuite, dans le champ "
Sur Activation" d'un déclencheur, mettez la commande suivante :
{_x switchLight "OFF"} forEach ((getPos centre) nearObjects ["StreetLamp",200]);
300 : rayon avec comme centre la logique de jeu "centre". Tous les lampadaires se trouvant dans ce cercle seront éteints.
Bien entendu, pour rallumer ces lampadaires, il suffit de remplacer
OFF par
ON.