La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 18:56:02
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
tonton Novice Messages: 8 |
voila j'ai une petite question trés simple a résoudre et comme je suis novice en script je compt sur vous pour y répondre , Merci d'avance :
voila il faudrais juste rajouter une ligne dans mon script qui enlève les pierres de rappel,ce script le fais déja mes il enlève qu'une seul foix l'item et les joueurs qui en ons acheters plusieurs voie toujour dans leurs inventaires ces fameuses pierre de Rappel . d'ou mon problème quand un joueur ce retrouve en prison . voila le script en question : Code : [/code]
#include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); { object oPC= GetEnteringObject(); if (GetIsPC(oPC)) { if (GetItemPossessedBy(oPC, "pierre_univ")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "pierre_univ")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } } } } |
Revenir en haut | |
Sith Vicious Grand Sage du Conseil Messages: 693 |
NWScript : #include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); object oPC= GetEnteringObject(); if (!GetIsPC(oPC)) return; object oPierre = GetFirstItemInInventory(oPC); while (oPierre != OBJECT_INVALID) { if (GetTag(oPierre) == "pierre_univ") { SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); DestroyObject(oPierre); } oPierre = GetNextItemInInventory(oPC); } } |
Revenir en haut | |
tonton Novice Messages: 8 |
Merci pour ta réponce aussi rapide SITH .
mes j'ai un autre petit problème car j'ai oublier d'y ajouter d'autre pierre que les joueurs save utiliser . peux tu me refaire le script si cela nes pas trop te demander stp avec le script suivant: NWScript :
#include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); { object oPC= GetEnteringObject(); if (GetIsPC(oPC)) { if (GetItemPossessedBy(oPC, "pierre_univ")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "pierre_univ")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "bouteille_de_ricard")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "bouteille_de_ricard")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "pierre_sacree2")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "pierre_sacree2")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "ba_pierre_dragon")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "ba_pierre_dragon")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "ba_pierre_apo")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "ba_pierre_apo")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "ba_pierre_chaos")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "ba_pierre_chaos")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } if (GetItemPossessedBy(oPC, "ba_pierre_temple")!= OBJECT_INVALID) { DestroyObject (GetItemPossessedBy(oPC, "ba_pierre_temple")); SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); } } } } Merci encore pour ton aide et ta rapidité . Bonne journée . |
Revenir en haut | |
Sith Vicious Grand Sage du Conseil Messages: 693 |
suffit de rajouter les tags dans la condition :
NWScript :
#include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); object oPC= GetEnteringObject(); if (!GetIsPC(oPC)) return; object oPierre = GetFirstItemInInventory(oPC); string sTag; while (oPierre != OBJECT_INVALID) { sTag = GetTag(oPierre); if ( sTag == "pierre_univ" || sTag == "bouteille_de_ricard" || sTag == "pierre_sacree2" || sTag == /*TAG de tes objets*/) //autant de fois que necessaire { SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); DestroyObject(oPierre); } oPierre = GetNextItemInInventory(oPC); } } Bon c'est un peu lourd, mais bon ça doit tenir. Enfin c'est bien si les objets peuvent être présents plusieurs fois dans l'inventaire, sinon ton script de départ est mieux. |
Revenir en haut | |
tonton Novice Messages: 8 |
Merci de ton aide.
Apres vérification j'ai une petite hereur sur ton script a la ligne 23 : NWScript : #include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); object oPC= GetEnteringObject(); if (!GetIsPC(oPC)) return; object oPierre = GetFirstItemInInventory(oPC); string sTag; while (oPierre != OBJECT_INVALID) { sTag = GetTag(oPierre); if ( sTag == "pierre_univ" || sTag == "pierre_sacree2" || sTag == "ba_pierre_dragon" || sTag == "ba_pierre_apo" || sTag == "ba_pierre_chaos" || sTag == "ba_pierre_temple" { ///////////////////l'hereur et sur cette ligne ci.//////////////// SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); DestroyObject(oPierre); } oPierre = GetNextItemInInventory(oPC); } } /* warning: 1 unclosed parenthesis () */ Dernière édition par tonton le 26/04/2006 19:20:08; édité 1 fois
|
Revenir en haut | |
tonton Novice Messages: 8 |
tonton a écrit : Merci de ton aide.
Apres vérification j'ai une petite hereur sur ton script a la ligne 23 : NWScript : #include "nw_i0_spells" void main() { RemoveSpecificEffect(EFFECT_TYPE_SANCTUARY, GetEnteringObject()); object oPC= GetEnteringObject(); if (!GetIsPC(oPC)) return; object oPierre = GetFirstItemInInventory(oPC); string sTag; while (oPierre != OBJECT_INVALID) { sTag = GetTag(oPierre); if ( sTag == "pierre_univ" || sTag == "pierre_sacree2" || sTag == "ba_pierre_dragon" || sTag == "ba_pierre_apo" || sTag == "ba_pierre_chaos" || sTag == "ba_pierre_temple" { ///////////////////l'hereur et sur cette ligne ci.//////////////// SendMessageToPC(oPC, "on vient de vous voler votre pierre de rappel"); DestroyObject(oPierre); } oPierre = GetNextItemInInventory(oPC); } } /* warning: 1 unclosed parenthesis () */ |
Revenir en haut | |
tonton Novice Messages: 8 |
bon j'ai trouver d'ou venez le problème je devais juste rajouter une parentèse a la fin
de || sTag == "ba_pierre_temple" ) encore merci pour ton aide , et désoler pour le double poste . bonne continuation . |
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Page 1 sur 1 ¤
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum