voila, je veux crée un script qui, lorsque j'équipe une arme (une lance dans l'exemple) une armure apparaissent dans l'inventaire
Spoiler
begin 0o_darth_sc short ObjectCount if ( GetItemCount, "0o_darth_helm" < 1 ) if ( GetItemCount, "0o_darth_boots" < 1 ) if ( GetItemCount, "0o_darth_cuirass" < 1 ) if ( GetItemCount, "0o_darth_gant_l" < 1 ) if ( GetItemCount, "0o_darth_gant_r" < 1 ) if ( GetItemCount, "0o_darth_greaves" < 1 ) if ( GetItemCount, "0o_darth_pauld_l" < 1 ) if ( GetItemCount, "0o_darth_pauld_r" < 1 ) if ( GetItemCount, "0o_darth_shield" < 1 ) set ObjectCount to 1 else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif else set ObjectCount to 0 endif if ( player->HasItemEquipped, "0o_darth_spear" == 1 ) if ( ObjectCount == 1 ) player->additem "0o_darth_helm" 1 player->additem "0o_darth_boots" 1 player->additem "0o_darth_cuirass" 1 player->additem "0o_darth_gant_l" 1 player->additem "0o_darth_gant_r" 1 player->additem "0o_darth_greaves" 1 player->additem "0o_darth_pauld_r" 1 player->additem "0o_darth_pauld_l" 1 player->additem "0o_darth_shield" 1 set ObjectCount to 2 stopscript "0o_darth_sc" endif endif if ( player->HasItemEquipped, "0o_darth_spear" == 0 ) if ( ObjectCount == 2 ) player->removeitem "0o_darth_helm" 2 player->removeitem "0o_darth_boots" 2 player->removeitem "0o_darth_cuirass" 2 player->removeitem "0o_darth_gant_l" 2 player->removeitem "0o_darth_gant_r" 2 player->removeitem "0o_darth_greaves" 2 player->removeitem "0o_darth_pauld_l" 2 player->removeitem "0o_darth_pauld_r" 2 player->removeitem "0o_darth_shield" 2 set ObjectCount to 0 endif endif if ( ObjectCount == 0 ) return endif end
le script me donne des centaines d'armures IG.
j'ai donc demandé au débuggeur de script du wiwiland ce qui n'allai pas.
voici la réponse :
Spoiler
DebugTES3 version 2.03 : script "0o_darth_sc"
-----------------------------------------------
Liste des erreurs :
---------------------
- Ligne 13 : alerte, 1 tabulation a été detectée après le premier caractère (risques de plantage in-game).
- Ligne 45 : erreur dans l'expression logique du If.
- Ligne 45 : erreur dans l'expression logique du ElseIf.
- Ligne 45 : erreur dans l'expression logique du While.
- Ligne 46 : erreur dans l'expression logique du If.
- Ligne 46 : erreur dans l'expression logique du ElseIf.
- Ligne 46 : erreur dans l'expression logique du While.
- Ligne 47 : erreur dans l'expression logique du If.
- Ligne 47 : erreur dans l'expression logique du ElseIf.
- Ligne 47 : erreur dans l'expression logique du While.
- Ligne 48 : erreur dans l'expression logique du If.
- Ligne 48 : erreur dans l'expression logique du ElseIf.
- Ligne 48 : erreur dans l'expression logique du While.
- Ligne 49 : erreur dans l'expression logique du If.
- Ligne 49 : erreur dans l'expression logique du ElseIf.
- Ligne 49 : erreur dans l'expression logique du While.
- Ligne 50 : erreur dans l'expression logique du If.
- Ligne 50 : erreur dans l'expression logique du ElseIf.
- Ligne 50 : erreur dans l'expression logique du While.
- Ligne 51 : erreur dans l'expression logique du If.
- Ligne 51 : erreur dans l'expression logique du ElseIf.
- Ligne 51 : erreur dans l'expression logique du While.
- Ligne 52 : erreur dans l'expression logique du If.
- Ligne 52 : erreur dans l'expression logique du ElseIf.
- Ligne 52 : erreur dans l'expression logique du While.
- Ligne 53 : erreur dans l'expression logique du If.
- Ligne 53 : erreur dans l'expression logique du ElseIf.
- Ligne 53 : erreur dans l'expression logique du While.
- Ligne 55 : erreur dans l'expression logique du If.
- Ligne 55 : erreur dans l'expression logique du ElseIf.
- Ligne 55 : erreur dans l'expression logique du While.
- Ligne 61 : erreur dans l'expression logique du If.
- Ligne 61 : erreur dans l'expression logique du ElseIf.
- Ligne 61 : erreur dans l'expression logique du While.
Liste des variables locales utilisées :
-----------------------------------------
- "objectcount" (type SHORT)
Liste des variables globales utilisées :
------------------------------------------
- "e" (type indéterminé)
- "f" (type indéterminé)
- "ayer" (type indéterminé)
- "opscript" (type indéterminé)
- "turn" (type indéterminé)
Liste des objets physiques utilisés :
---------------------------------------
- "0o_darth_helm" (type CONTENU)
- "0o_darth_boots" (type CONTENU)
- "0o_darth_cuirass" (type CONTENU)
- "0o_darth_gant_l" (type CONTENU)
- "0o_darth_gant_r" (type CONTENU)
- "0o_darth_greaves" (type CONTENU)
- "0o_darth_pauld_l" (type CONTENU)
- "0o_darth_pauld_r" (type CONTENU)
- "0o_darth_shield" (type CONTENU)
- "player" (type PERSONNE)
- "0o_darth_spear" (type OBJET EQUIPABLE)
DebugTES3 version 2.03 : script "0o_darth_sc"
-----------------------------------------------
Liste des erreurs :
---------------------
- Ligne 13 : alerte, 1 tabulation a été detectée après le premier caractère (risques de plantage in-game).
- Ligne 45 : erreur dans l'expression logique du If.
- Ligne 45 : erreur dans l'expression logique du ElseIf.
- Ligne 45 : erreur dans l'expression logique du While.
- Ligne 46 : erreur dans l'expression logique du If.
- Ligne 46 : erreur dans l'expression logique du ElseIf.
- Ligne 46 : erreur dans l'expression logique du While.
- Ligne 47 : erreur dans l'expression logique du If.
- Ligne 47 : erreur dans l'expression logique du ElseIf.
- Ligne 47 : erreur dans l'expression logique du While.
- Ligne 48 : erreur dans l'expression logique du If.
- Ligne 48 : erreur dans l'expression logique du ElseIf.
- Ligne 48 : erreur dans l'expression logique du While.
- Ligne 49 : erreur dans l'expression logique du If.
- Ligne 49 : erreur dans l'expression logique du ElseIf.
- Ligne 49 : erreur dans l'expression logique du While.
- Ligne 50 : erreur dans l'expression logique du If.
- Ligne 50 : erreur dans l'expression logique du ElseIf.
- Ligne 50 : erreur dans l'expression logique du While.
- Ligne 51 : erreur dans l'expression logique du If.
- Ligne 51 : erreur dans l'expression logique du ElseIf.
- Ligne 51 : erreur dans l'expression logique du While.
- Ligne 52 : erreur dans l'expression logique du If.
- Ligne 52 : erreur dans l'expression logique du ElseIf.
- Ligne 52 : erreur dans l'expression logique du While.
- Ligne 53 : erreur dans l'expression logique du If.
- Ligne 53 : erreur dans l'expression logique du ElseIf.
- Ligne 53 : erreur dans l'expression logique du While.
- Ligne 55 : erreur dans l'expression logique du If.
- Ligne 55 : erreur dans l'expression logique du ElseIf.
- Ligne 55 : erreur dans l'expression logique du While.
- Ligne 61 : erreur dans l'expression logique du If.
- Ligne 61 : erreur dans l'expression logique du ElseIf.
- Ligne 61 : erreur dans l'expression logique du While.
Liste des variables locales utilisées :
-----------------------------------------
- "objectcount" (type SHORT)
Liste des variables globales utilisées :
------------------------------------------
- "e" (type indéterminé)
- "f" (type indéterminé)
- "ayer" (type indéterminé)
- "opscript" (type indéterminé)
- "turn" (type indéterminé)
Liste des objets physiques utilisés :
---------------------------------------
- "0o_darth_helm" (type CONTENU)
- "0o_darth_boots" (type CONTENU)
- "0o_darth_cuirass" (type CONTENU)
- "0o_darth_gant_l" (type CONTENU)
- "0o_darth_gant_r" (type CONTENU)
- "0o_darth_greaves" (type CONTENU)
- "0o_darth_pauld_l" (type CONTENU)
- "0o_darth_pauld_r" (type CONTENU)
- "0o_darth_shield" (type CONTENU)
- "player" (type PERSONNE)
- "0o_darth_spear" (type OBJET EQUIPABLE)
please HELP