Les variables
Il existe plusieurs types de variables
les variables short : petit chiffre
Les variables long : grand chiffre
Les variables float : nombre decimaux
les variables ref : les references
Pour crée une variable dans votre script on doit mettre cette ligne entre le scn et le premier block - Citation :
nom_dy_type_de_la_variable mavariable
Exemple
- Citation :
scn nom_du_sript
Short mavar
begin ..... ; suite
J'ai ici crée une variable mavar du type short
Les variables permettent de determiner des choses et de verifier ou non des conditionsainsi
- Citation :
Scn test
short mavar
begin gamemode
if mavar == 1
startconversation player GREETING
endif
end
Signifie que lorsque mavar est a 1, Le pnj qui a se script sur lui va chercher le player et entamer une conversation
Une variable crée est a 0, ainsi pour l'instant ma variable n'est jamais a 1.
Pour changer la valeur d'une variable on fait
- Citation :
set mavar to nombre_qu_on_veut
Voici un autre script
- Citation :
scn test2
begin onhit ; quand je touche le pnj qui a le script
set PNJ1.mavar to 1
endif
end
Plusieurs petites nouveauté, je n'est pas crée la variable pourtant le script marchera. J'ai changer une variable d'un autre script
Ainsi si on avait mis le script test sur PNJ1
La variable changé dans test2 est celle contenu dans PNJ1
Donc quand je touche le pnj qui a la script test2, je met la variable mavar de test du PNJ1 a 1 se qui engage la conversation
Ainsi pour changer une variable d'un script d'un PNJ on fait
- Citation :
- set PNJ.lavar to 1
ASTUCE
: Certaine fonctions font faire un bug dans le menu jeu
par exemple lorsque je fait
- Citation :
Begin gamemode
messagebox "BUG""ok"
end
Il y a un messagebox BUG a chaque fois que l'on clique sur ok, donc toujour des messagebox. POur resoudre se probleme ou fait une variable Doonce. Doonce n'est qu'un nom comme sa, on peut appeller la variable "a" ou "josse" ou "haricotvert" ou "charlie" comme une variable normal. C'est de part son placement qu'elle fera la difference
- Citation :
short Doonce
Begin gamemode
if Doonce == 0
messagebox "PAS BUG""ok"
set Doonce to 1
endif
end
Ici dans me menu jeu, on a une fois le message "PAS BUG" car Doonce est a 0 puis celle ci devient a 1. DOnc normalement sans Doonce on a un deuxieme message (et ainsi de suite) sauf que la, la condition n'est plus verifié. (Voir la partie des conditions en dessous pour plus de detail)
Et voila, une variable Doonce sert a ne faire qu'une action une seul fois (a noté qu'elle n'est pas toujour utilisé dans un script de menumode)
Exempe d'autre menu sur un PNJ
- Citation :
Short a ; une variable Doonce
begin onactivate ; quand on active PNJ
if a == 0 ; si ma Doonce n'a pas servit
messagebox "Le PNJ est occupé" ; Un message apparait Le PNJ est occupé
set a to 1 ; Le doonce se met a 1
else ; sinon (donc a different de 1)
activate ; on active le PNJ. (en RP il n'est plus occupé)
endif ; ensuite
end ; fin
Donc la, on clicke sur PNJ, a premiere fois on a le messagebox, la deuxieme et les autres fois, le PNJ est bien activé normalement