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 14:20:50
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 |
nunch Grand Sage du Conseil Messages: 966 Localisation: Dans la gueule du Lyon |
Hello,
J'ai un probleme avec le script suivant: Code : object oPlayer = GetLastPlayerDied();
object oSoul = OBJECT_INVALID; // Assigne l'ame au PJ oSoul = GetObjectByTag("it_AmePJ",0); if(oSoul != OBJECT_INVALID) { PrintString("Essaye d'assigner la gemme d'ame"); ActionGiveItem(oSoul,oPlayer); PrintString("Gemme d'ame assignee"); } else PrintString("Gemme d'ame non trouvee"); Voilà, le script fait planter le jeu sur la commande "ActionGiveItem" (j'ai vérifié avec les traces dans le fichier de logs) lorsque le joueur meurt et je ne comprends pas pourquoi. Toute aide est la bienvenue pour m'aider à élucider ce mystère !! [Edite] Pense de mettre les balises sur les codes. Merci. Tyrion. Sinon Bienvenu sur ce forum ! |
Revenir en haut | |
Tyrion Ecuyer Messages: 43 |
Essayer avec la fonction CreateItemOnObject() comme ceci (pense de mettre le resref a l'endroit ou je te l'es indiqué.
Code : object oPlayer = GetLastPlayerDied();
object oSoul = OBJECT_INVALID; // Assigne l'ame au PJ oSoul = GetObjectByTag("it_AmePJ",0); if(oSoul != OBJECT_INVALID) { PrintString("Essaye d'assigner la gemme d'ame"); CreateItemOnObject("resref de ton oSoul",oPlayer); PrintString("Gemme d'ame assignee"); } else PrintString("Gemme d'ame non trouvee"); _________________ Ce n'est pas parce que les choses sont difficiles que l'on ose pas les faire. C'est parce que l'on ose pas les faire qu'elles sont difficile. Dernière édition par Tyrion le 23/05/2003 21:02:29; édité 1 fois
|
Revenir en haut | |
nunch Grand Sage du Conseil Messages: 966 Localisation: Dans la gueule du Lyon |
Merci Tyrion, ça fonctionne !
Je penserai à mettre les balises la prochaine fois, promis ! D'ailleurs j'ai vu sur le forum du site de bioware qu'il y a une sacré liste de fonctions buggées et ActionGiveItem() en fait partie. |
Revenir en haut | |
Tyrion Ecuyer Messages: 43 |
Ben disons que le GiveItem sa marche bien pour donner un Item present dans un inventaire de PNJ (script pour dialogue) alors que le CreateItem ben c'est un genre de passe partout
Content d'avoir pu te rendre service _________________ Ce n'est pas parce que les choses sont difficiles que l'on ose pas les faire. C'est parce que l'on ose pas les faire qu'elles sont difficile. |
Revenir en haut | |
Meliok Novice Messages: 12 |
QQun pourrait me dire si il y a encore une erreur sur ActionGiveItem ?
je fais ca : Code : void main() { object oPC = GetPCSpeaker(); object oInnKeeper = GetObjectByTag("BIW_INNKEEPER"); int amountOfGold = GetGold(oPC); if ( amountOfGold >= 50 ) { object oKey1 = GetObjectByTag("BIW_ROOM_KEY1"); if( oKey1 == OBJECT_INVALID ) SendMessageToPC(oPC, "Objet invalide"); else { SendMessageToPC(oPC, GetTag(oKey1)); SendMessageToPC(oPC, GetTag(GetItemPossessor(oKey1))); } TakeGoldFromCreature(50,oPC,FALSE); ActionGiveItem(oKey1,oPC); SetLocalInt(oInnKeeper,"BIW_KEY1_AVAILABLE",FALSE); } } ca ne produit pas d'erreur , mais le tenancier de l'auberge (oInnKeeper) ne donne pas la clef a oPC... Une idée sur le pourquoi du comment ? Merci |
Revenir en haut | |
Meliok Novice Messages: 12 |
Bon, j'ai trouvé une parade qui fonctionne, je ne sais pas trop pourquoi, mais elle fonctionne :
Code : void main() { object oPC = GetPCSpeaker(); object oInnKeeper = GetObjectByTag("BIW_INNKEEPER"); int amountOfGold = GetGold(oPC); if ( amountOfGold >= 50 ) { object oKey1 = GetObjectByTag("BIW_ROOM_KEY1"); TakeGoldFromCreature(50,oPC,FALSE); DelayCommand(0.5,ActionGiveItem(oKey1,oPC)); SetLocalInt(oInnKeeper,"BIW_KEY1_AVAILABLE",FALSE); } } |
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