Différences entre les versions de « TESCS : HasItemEquipped »
(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. | ||
===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 | Voici un exemple d'utilisation : si le joueur n'a pas équipé son magnifique ''ClubDeGolf'', une messageBox l'en informe toutes les 10 secondes. | ||
[[TESCS : Begin|Begin]] ClubDeGolf | |||
[[TESCS : Float|Float]] Timer | |||
[[TESCS : If|If]] ( MenuMode ) | |||
[[TESCS : Return|Return]] | |||
[[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).