The Guild 2/Introduction

Un livre de Wikilivres.
Sauter à la navigation Sauter à la recherche

Pour faire du modding, on prend son éditeur de texte préféré et on édite les scripts Lua. Nous partons du principe que vous avez une expérience de base en programmation.

function mafonction (parametre, parametre2)
  instructions

Sert à déclarer une fonction qui s'appelle "mafonction" (nom à changer). Elle recevra les paramètres entre parenthèses séparés par des virgules. Pour plus de clarté, le code devra être indenté. Lorsque le bloc d'instruction est terminé, vous devez finir par exit

Pour clarifier le code, vous devriez faire des commentaires, c'est-à-dire mettre des phrases dans votre code que l'ordinateur ignorera mais que vous pourrez lire en codant. Vous devez précéder votre commentaire par 2 tirets : -- Votre commentaire.

Une variable se déclare en écrivant "local" suivit du nom de la variable : local variable

Les conditions se font simplement :

if (condition) then 
   instructions

Si cette condition n'est pas vraie, vous pouvez faire une autre condition qui sera vérifiée si la précédente est fausse (vous pouvez en accumuler plusieurs à la suite) :

elseif (condition) then 
   instructions

Pour finir, si aucune des conditions étaient vraies, vous pouvez exécuter des instructions, qui ne s’exécutent pas si une condition est vraie :

else 
   instructions

Lorsqu'un bloc de if, elseif et else est fini, on le termine par end

Vous connaissez désormais quelques bases.

Voici quelques instructions propres au jeu.

this:EnableModule("CameraSaver", 0) --activation d´un module, suivi de, si il y a lieu, parametres
this:DisableModule("WorldSessionCtrl") --désactivation du module
this:ChangeGameState("StartMenu") -- changement dans le jeu (la, il va au menu)
MsgQuick("", "@L_BANK_007_PAYBACKCREDIT_FAILURES_+0") -- affiche un message (a verifier)
GetData("CreditNumber") -- pour acquérir des informations (liste a faire)
SimSetAge("", 20) -- afin de changer l´age d´un personnage, premier argument : le personnage et en argument 2 le nouvel age
GetHP("") -- connaitre le nombre d´HP 1er parametre : personnage
GetMaxHP("") -- connaitre le nombre max d´HP du personnage en premier parametre

SetMainQuestTitle("Control", "@L_TUTORIAL_CHAPTER_1_CONTROLS_NAME")--ajout d´un article au journal, titre

SetMainQuestDescription("Control","@L_TUTORIAL_CHA
PTER_1_CONTROLS_QUESTBOOK")-- description
SetData("MissionDifficulty",Difficulty) -- changer les données du jeu : dans le premier parametre il y a le nom de la variable a changer et dans le 2 eme argument, il y a la nouvelle valeur.