Différences entre les versions de « TESCS : HasItemEquipped »

De Wiwiki
Aller à la navigation Aller à la recherche
(Réorganisation des données/Ajout d'infos)
(Exemple + correction mineure)
 
Ligne 1 : Ligne 1 :
[[Catégorie:TESCS : Liste des commandes de script|HasItemEquipped]]
[[Catégorie:TESCS : Liste des commandes de script|HasItemEquipped]]


HasItemEquipped permet de savoir si le joueur porte en ce moment un objet défini.
'''HasItemEquipped''' permet de savoir si le joueur porte en ce moment un objet défini.
_NOTOC_
 
===Syntaxe===
===Syntaxe===
La syntaxe correcte pour cette fonction est :
La syntaxe correcte pour cette fonction est :
Ligne 9 : Ligne 9 :


===Exemple d'utilisation===
===Exemple d'utilisation===
Voici un exemple d'utilisation : si le joueur <<fait ceci>>, <<alors il se passera ceci>>.
Voici un exemple d'utilisation : si le joueur n'a pas équipé son magnifique ''ClubDeGolf'', une messageBox l'en informe toutes les 10 secondes.
  <<Exemple de script>>
  [[TESCS : Begin|Begin]] ClubDeGolf
  <<Toutes les fonctions de script doivent linker vers leur page dédiée>>
  <<La fonction sur laquelle la page porte doit être mise en gras>>
[[TESCS : Float|Float]] Timer
<<Exemple : la page AddItem, version du 25/10/2010>>
  <<Ne pas oublier l'espace devant chaque ligne>>
[[TESCS : If|If]] ( MenuMode )
<<Toujours présenter un script COMPLET.>>
  [[TESCS : Return|Return]]
<<Description détaillée de 'ce que fait le script'>>
[[TESCS : Endif|Endif]]
   
  [[TESCS : If|If]] ( Player->'''HasItemEquipped''' "ClubDeGolf" == 0 )
  [[TESCS : If|If]] ( Timer < 10 )
  [[TESCS : Set|Set]] Timer to ( Timer + GetSecondsPassed )
  [[TESCS : Return|Return]]
  [[TESCS : Endif|Endif]]
  [[TESCS : MessageBox|MessageBox]] "Équipez immédiatement votre MAGNIFIQUE club de golf !", "Ok"
  [[TESCS : Set|Set]] Timer to 0
[[TESCS : Endif|Endif]]
  [[TESCS : End|End]]
Si le joueur n'a pas équipé le Club de Golf (''Player->HasItemEquipped "ClubDeGolf" == 0''), on déclenche une MessageBox (''MessageBox "[...]", "Ok"'') toutes les 10 secondes (''If ( Timer < 10 ) [...] Return ''). Si l'on est en mode menu (''If ( MenuMode )''), c'est que le joueur va probablement équiper ce club ; on interrompt donc le script et, avec lui, le timer (''Return'').


===Notes===
===Notes===

Version actuelle datée du 26 octobre 2010 à 17:04


HasItemEquipped permet de savoir si le joueur porte en ce moment un objet défini.

Syntaxe

La syntaxe correcte pour cette fonction est :

reference->HasItemEquipped "objet_id"

Dans une boucle If, cette fonction renverra 1 si l'acteur reference porte (a équipé) l'objet objet_id, et renverra 0 dans le cas contraire.

Exemple d'utilisation

Voici un exemple d'utilisation : si le joueur n'a pas équipé son magnifique ClubDeGolf, une messageBox l'en informe toutes les 10 secondes.

Begin ClubDeGolf

Float Timer

If ( MenuMode )
 Return
Endif

If ( Player->HasItemEquipped "ClubDeGolf" == 0 )
 If ( Timer < 10 )
  Set Timer to ( Timer + GetSecondsPassed )
  Return
 Endif
 MessageBox "Équipez immédiatement votre MAGNIFIQUE club de golf !", "Ok"
 Set Timer to 0
Endif

End

Si le joueur n'a pas équipé le Club de Golf (Player->HasItemEquipped "ClubDeGolf" == 0), on déclenche une MessageBox (MessageBox "[...]", "Ok") toutes les 10 secondes (If ( Timer < 10 ) [...] Return ). Si l'on est en mode menu (If ( MenuMode )), c'est que le joueur va probablement équiper ce club ; on interrompt donc le script et, avec lui, le timer (Return).

Notes

  • HasItemEquipped n'est documenté qu'avec Tribunal, cependant il semblerait que cette fonction soit parfaitement opérationnelle avec Morrowind seul. Cela a été confirmé par certains mods (notamment Vampire Realism de Jaxalot, qui utilise cette fonction mais n'est pas Tribunal requis).

Voir également