Ici
l'on va créer un testeur de variable, c'est très utile
pour suivre son script et repéré très facilement
les bugs.
On
veux que si tous les hommes d'une équipe soit monter dans le
camion, une phrase s'affiche à l'écran du joueur, pour
se faire on fait un mission toute simple, et l'on créer un script
de comptage et l'on va comparer si le nombre de soldat dans le camion
est égal au nombre de soldats dans le camion avant montage plus
l'équipe qui monte en cargaison, si ils sont égaux l'on
affiche la phrase "Chargement terminer".
Une
fois créer le script l'on lance la mission et l'on regarde ce
qu'il se passe. Mais les hommes ont beau être a l'intérieur
de véhicule la phrase ne s'affiche pas. Alors l'on va tester
notre script savoir ou ça coince avec le testeur.
Voici
la mission avec le script intégrer, à décomprésser
dans votre dossier "C:\Documents
and Settings\NomDUtilisateur\Mes documents\ArmA Other Profiles\PseudoDuJeu\missions"
Lancer
la mission et vous le constater aussi que rien ne s'affiche. Alors il
faut modifier le script, pour se faire allé dans le dossier sus
mensioner puis dans Compte.Intro et vous éditer script.sqs avec
un éditeur de text de type NotePad.
En
terme de script tout se joue ici:
?((_list
+ _sol)
== _alpha):GoTo
"Suite"
si
mon script bug et vu qu'il n'y a eu aucun message d'erreur c'est que
cette condition n'est pas remplie, donc l'on va créer un testeur
dans se script qui va nous afficher en temps réel la valeur des
variables _list, _sol, _alpha.
Voici
la commande pour faire un testeur:
Hint Format ["Variable
= %1",
_variable]
// affichera
la variable à l'écran même si elle n'est pas encore
définie
Avec
ceci vous allez afficher l'intérieur d'une variable à l'écran
quelque soit le type de donnée qu'elle rescelle.
Astuce:
Le retour à la ligne est le classique \n
comme en langage C, ainsi pour afficher deux variables il suffis d'écrire
ceci:
Hint Format ["Variable
1 = %1\nVariable
2 = %2",
_variable1,
_variable2]
Ainsi
de suite.
Attention:
pour que le testeur affiche le résultat en temps réel
il faut que la Commande Hint Format soit dans un boucle.
Alors
pour notre script l'on va tester les variables et les afficher à
l'écran, ce qui donne:
#Chargement
Hint Format ["Unites
du Camion = %1\nUnites
du Groupe = %2\nAddition
= %3",
_list,_sol,_alpha]
~0.5
?((_list
+ _sol)
== _alpha):GoTo
"Suite"
GoTo "Chargement"
Je
lance la mission et vois ça:
J'ai
bien le nombre de soldat en équipage dans le camion, deux, un
conducteur et un tirreur, j'ai bien le nombre de soldat dans mon escouade,
9, Mais mon addition ne bouge pas.
Je
sais par expérience pour avoir fait souvant cette erreur qu'une
variable si on ne la défini pas elle ne le fera pas toute seulle,
donc si je veux que _alphe bouge, il faut que je le face, je relis le
script et vois que j'ai mis _alpha
= 0 avant
ma boucle, mais que je ne l'ai pas recalculer dans la boucle. Je corrige
ça et sa donne:
#Chargement
Hint Format ["Unites
du Camion = %1\nUnites
du Groupe = %2\nAddition
= %3",
_list,_sol,_alpha]
~0.5
?((_list
+ _sol)
== _alpha):GoTo
"suite"
J'enregistre
le script, relance la mission et là j'ai bien Addition qui vari.
Voila un exemple pour utiliser le testeur, il vous sera bien utile pour
gagner du temps de test sans bug apparant mais aussi sans réaction
du jeu.