Si vous aussi vous avez connu des boulets qui sabotaient vos parties sans rien pouvoir faire, ce tuto est fait pour vous. Je vais donc vous montrer comment à l'aide de l'éditeur de déclencheur on peut réguler ce genre de problème.
A - Le kickLe kick est la meilleur façon ce se débarrasser d'un joueur gênant étant donner qu'après cela il sera exclu de la partie( à bon?).
Le déclencheur est asser simple.
1) Le déclencheur - Code:
-
Kick
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -kick as Une sous-chaîne
Conditions
(Name of (Triggering player)) Egal à Hoth
Actions
For each (Integer A) from 1 to 12, do (Actions)
Boucle - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Substring((Entered chat string), 7, (Length of (Entered chat string)))) Egal à (String((Integer A)))
Alors - Actions
Partie - Defeat (Player((Integer A))) with the message: Tu as été viré par Hoth le Fourbe! muahahaha.
Sinon - Actions
Do nothing
Recopier un déclencheur c'est bien, mais le comprend c'est mieux. Si vous le comprenez passer à la suite, sinon lisez cette explication:
2) L'explication en détail:Je vais donc vous expliquer chaque parie de ce déclencheur dit en GUI.
Tout d'abord l'événement: Le joueur peut être changer à votre guise(le J1 est souvent l'host) et en fonction de la map. L'événement permet de voir si le message envoyé par le joueur contient -kick comme une sous chaîne. C'est à dire que celui ci contient "-kick" mais que celà ne représente pas forcément le reste du message.
La Condition: Celle ci permet juste d'éviter que n'importe qui puisse l'utiliser, celà vous permet de faire en sorte que seul le ou les joueurs qui ont leur noms ici puissent l'utilisé. Pour pouvoir entrer d'autres joueurs utiliser la fonction "OR"
Ensuite l'action: Tout commence par le "For each (integrer A) from 1 to 12, do (Actions)" Ceci vous permet de faire une boucle pour tout entier de 1 à 12, autrement dit pour chaque joueur. Vous pouvez changer le 12 en fonction du nombre de joueurs de la map.
Le " If (All Conditions are True) then do (Then Actions) else do (Else Actions)" vous permet de n'exécuter la suite que si la condition qui suit est validé: "(Substring((Entered chat string), 7, (Length of (Entered chat string)))) Egal à (String((Integer A)))" Cette condition vérifie que 7 lettre après le début(-kick ENTIER) se trouve un entier comprit entre 1 et 12(ce qui a été définit plus haut).
Là peut alors s'effectuer la véritable action: Partie - Defeat (Player((Integer A))) with the message: Tu as été viré par Hoth le Fourbe! muahahaha. Cette action va imposer une défaite au joueur désigner par l'entier A(si -kick 2 => joueur 2 exclu) avec le message de votre choix.
B - Le KILL ALL UNIT
Ceci vous permet de détruire totalement un joueur tout en le laissant dans la partie (dans la plus part des cas)
1) Le déclencheur:
- Code:
-
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -killall as Une sous-chaîne
Conditions
(Name of (Triggering player)) Egal à Hoth
Actions
For each (Integer A) from 1 to 12, do (Actions)
Boucle - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Substring((Entered chat string), 10, (Length of (Entered chat string)))) Egal à (String((Integer A)))
Alors - Actions
Groupe unité - Pick every unit in (Units owned by (Player((Integer A)))) and do (Actions)
Boucle - Actions
Unit - Kill (Picked unit)
Sinon - Actions
Do nothing
2)L'explication en détails:Le déclencheur est sur le même modèle pour l’évènement et la conditton. L'action reste cependant légèrement différente.
On retrouve le " For each (Integer A) from 1 to 12, do (Actions)" cette fois ci suivit par " (Substring((Entered chat string), 10, (Length of (Entered chat string)))) Egal à (String((Integer A)))" car le "-killall" est plus long( -killall ENTIER).
"Groupe unité - Pick every unit in (Units owned by (Player((Integer A)))) and do (Actions)" vous permet de rentrer dans un groupe toutes les unités que possède le joueur assigné à l'entier(2=> bleu, 3=> cyan...)
Le " Unit - Kill (Picked unit)" vous permet de tuer toutes les unités de ce groupe.
C - Le Change ownerCe déclencheur vous permet de changer la personne qui contrôle l'unité sélectionnée. C'est très utile pour prendre lentement le contrôle d'une unité sélectionnée ou pour donner des unités à un joueur mort à cause d'un boulet par exemple.
- Code:
-
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -disp as Une sous-chaîne
Conditions
(Name of (Triggering player)) Egal à Hoth
Actions
For each (Integer A) from 1 to 12, do (Actions)
Boucle - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Si - Conditions
(Substring((Entered chat string), 7, (Length of (Entered chat string)))) Egal à (String((Integer A)))
Alors - Actions
Groupe unité - Pick every unit in (Units currently selected by Joueur 1 (Rouge)) and do (Actions)
Boucle - Actions
Unité - Change ownership of (Picked unit) to (Player((Integer A))) and Changer couleur
Sinon - Actions
Do nothing
Ici le déclencheur passe le contrôle de l'unité sélectionnée par le joueur 1 au joueur désigné par l'entier A
En modifiant ce déclencheur on peut faire en sorte qu'il tue l'unité selectionnée.
D - La Pause
Quoi de mieux que de mettre le jeux en pause quand on a épuisé toutes celles disponibles? C'est possible:
Pause:
- Code:
-
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -pause as Résultat équivalent
Conditions
(Name of (Triggering player)) Egal à Hoth
Actions
Partie - Pause the game
Quête - Display to (All players) the Astuce message: La Partie est mise en pause.
Ici l’évènement vérifie que le message est bien "-pause" et non pas qu'il le contient.
Unpause
- Code:
-
Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -unpause as Résultat équivalent
Conditions
(Name of (Triggering player)) Egal à Hoth
Actions
Partie - Unpause the game
Quête - Display to (All players) the Astuce message: La Partie est reprise
Voilà si vous avez des questions n'hésitez pas. Je rajouterais peut être d'autres moyens de réguler(moins utiles) les parties plus tards.