Aller au contenu


[Résolu]Besoin D'Aide Pour Comprendre Le Script


  • Veuillez vous connecter pour répondre
6 réponses à ce sujet

#1 rhcpmuse

rhcpmuse

Posté 31 juillet 2011 - 21:46

Bonjour,
Alors voilà, m'intéressant au moddage depuis quelques semaines, j'ai décidé d'apprendre à créer des quêtes.
Mais pour cela il faut faire des scripts.
J'ai bien lu la page wiwiki sur les scripts et la banque aux scripts, mais je n'ai toujours pas bien saisi le langage script...

Si quelqu'un se donnait la peine de m'expliquer plus clairement, ce sera avec grand plaisir :)

Modifié par rhcpmuse, 03 août 2011 - 16:35.


#2 Shadow she-wolf

Shadow she-wolf

    Le katana de la GBT


Posté 31 juillet 2011 - 22:11

Coucou...


C'est un petit peu dur de te répondre...
La question est très vague, à moins de te réécrire tout un tutoriel on ne peut que te répondre tout aussi vaguement...
Surtout que tu dois bien avoir compris des trucs non...?

Par exemple un tel script...
ScriptName HelloWorldScript

Short DoOnce

Begin OnActivate

if ( DoOnce == 0 )
   MessageBox "Hello Wold !"
   Set DoOnce to 1
endif

End
Tu as des choses qui te bloquent dedans...?

Il est plus facile pour nous de répondre à des problèmes précis, et ça ferait gagner du temps à tout le monde je crois... :)

#3 rhcpmuse

rhcpmuse

Posté 31 juillet 2011 - 22:17

ScriptName HelloWorldScript

Short DoOnce

Begin OnActivate

if ( DoOnce == 0 )
   MessageBox "Hello Wold !"
   Set DoOnce to 1
endif

End



Moi j'ai compris le ScriptName, BeginOnActivate, et le End

Sinon le if je ne sais pas trop ce que c'est, le DoOnce ==0 non plus...

Bref je n'arrive pas bien a dechiffrer le script... je sais je suis la honte du CS :)


PS : Sinon je crois avoir compris la fonction du script (un message Hello World apparait lorsqu'on lance une partie) mais je ne saurais pas utiliser ce langage à ma guise

Modifié par rhcpmuse, 31 juillet 2011 - 22:20.


#4 gwada7

gwada7

Posté 31 juillet 2011 - 22:38

Voir le messagerhcpmuse, le 31 juillet 2011 - 22:17, dit :

ScriptName HelloWorldScript

Short DoOnce

Begin OnActivate

if ( DoOnce == 0 )
   MessageBox "Hello Wold !"
   Set DoOnce to 1
endif

End



Moi j'ai compris le ScriptName, BeginOnActivate, et le End

Sinon le if je ne sais pas trop ce que c'est, le DoOnce ==0 non plus...

Bref je n'arrive pas bien a dechiffrer le script... je sais je suis la honte du CS :)


PS : Sinon je crois avoir compris la fonction du script (un message Hello World apparait lorsqu'on lance une partie) mais je ne saurais pas utiliser ce langage à ma guise

En fait le Doonce est une variable qui est au départ égale à 0.
à l'activation (OnActivate) le script vérifie si la variable doOnce est toujours égale à 0
(la condition if ( DoOnce == 0 ) signifie "si doonce = 0, la suite du script, jusqu'au endif peut s'effectuer)

La suite du script, c'est l'affichage du message "hello world!"

et on voit qu"après l'affichage du message, on donne à Doonce la valeur 1.
Ceci signifie qu'à la suite de l'exécution de cette partie du script, Doonce sera égal à 1

Donc si on essaie d'activer encore une fois le script, en revenant au début (begin OnActivate) comme Doonce ne sera pas égal à zéro, le message "hello world!" ne seras pas affiché car la condition "if" ne sera pas vraie.

J'espère avoir été clair.
En gros DoOnce a été mis là pour permettre une exécution unique du script.

Modifié par gwada7, 31 juillet 2011 - 22:41.

Membre des Fervents Partisans de l'Immuabilité Avatarienne.

Le chat change les moeurs... Et débarasse des souris en plus.

#5 rhcpmuse

rhcpmuse

Posté 31 juillet 2011 - 22:46

Ah merci gwada tu m'as bien aidé...
La condition DoOnce peut s'appliquer à quel type de script ? (type = affichage d'un message, obtenir/retirer un objet, etc.)

Ici DoOnce est entre parenthèses... Ces parenthèses c'est pour placer des conditions ?

Modifié par rhcpmuse, 31 juillet 2011 - 22:57.


#6 gwada7

gwada7

Posté 31 juillet 2011 - 23:07

La variable DoOnce, tu peux l'utiliser pour tous les scripts dont tu veux que l'utilisation se fasse qu'une fois en n'oubliant pas toutes les étapes (la faire changer de valeur, utiliser le "if".)

sinon oui, en gros on va dire que le If vérifie si ce qui est entre parenthèse est vrai ou faux, avant d'exécuter (ou pas) ce qui se trouve après. Donc n'oublie pas d'utiliser les parenthèses parce qu'une mauvaise écriture peut ruiner tout ton script.





Membre des Fervents Partisans de l'Immuabilité Avatarienne.

Le chat change les moeurs... Et débarasse des souris en plus.

#7 rhcpmuse

rhcpmuse

Posté 31 juillet 2011 - 23:13

Voir le messagegwada7, le 31 juillet 2011 - 23:07, dit :

La variable DoOnce, tu peux l'utiliser pour tous les scripts dont tu veux que l'utilisation se fasse qu'une fois en n'oubliant pas toutes les étapes (la faire changer de valeur, utiliser le "if".)

sinon oui, en gros on va dire que le If vérifie si ce qui est entre parenthèse est vrai ou faux, avant d'exécuter (ou pas) ce qui se trouve après. Donc n'oublie pas d'utiliser les parenthèses parce qu'une mauvaise écriture peut ruiner tout ton script.

Merci beaucoup gwada7, maintenant je vais pouvoir me coucher moins bête ^^

et merci aussi à Shadow she-wolf pour nous répondre toujours très rapidement

Sur ce, bonne vacances à tous




0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)