
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.







La date/heure actuelle est 05/05/2025 17:35:57
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 |
Zaph Novice Messages: 6 |
Je fais appel aux scripteurs confirmés pour m'aider un peu.... voilà ce dont j'aurai besoin svp :
1- un script d'alarme lorsque le joueur possédant 1 item A passe sur un déclencheur, ce dernier l'annonce (** le joueur "nom" est "nom du lieu"**) 2-un script pour que les PJ's lorsqu'ils respawn laissent un loot (genre main ou oreille..etc) : Le joueur A possédant un item A laisse un loot A, et le joueur B possédant un item B laisse un loot B (si c'est pas clair faut me le dire ![]() 3- Un dernier : Un PNJ donne un item A ou B au PJ, si le PJ retourne le voir, le PNJ lui répond qu'il possède déjà un objet. (doit y avoir une question de fonction "ou", mais j'arrive pas à la placer... Voilà voilà, merci d'avance à ceux qui auront la bonté de m'aider. |
Revenir en haut | ![]() ![]() ![]() |
Sith Vicious Grand Sage du Conseil ![]() Messages: 693 |
1- Sur le OnEnter du trigger :
NWScript :
#include "nw_i0_plot" void main() { object oPC = GetEnteringObject(); if (!GetIsPC(oPC)) return; if (HasItem(oPC,"TAG_OBJET")) SpeakString("**Le joueur "+GetName(oPC)+" est "+GetName(GetArea(OBJECT_SELF))+"**"); } Je suis pas sur d'avoir compris ce qui doit envoyer le message ni à qui, la c'est le déclancheur qui va parler. 2- Ca depend surtout de ce que tu veux en faire par la suite... En fait il faut créer un item de loot avec une resref unique ("lootjoueur" par ex.) avec un tag qui code le joueur qui l'a laissé. Dans le OnPlayerDeath du module NWScript :
CreateObject(OBJECT_TYPE_ITEM,"lootjoueur",GetLocation(GetLastPlayerDied()),FALSE,GetName(GetLastPlayerDied())); La l'objet aura le nom du joueur mort comme tag. 3-Dans la condition d'execution de "ben non petit malin, je t'ai déjà donné un objet" NWScript :
object oPC =GetPCSpeaker(); string sTag = ""; object oItem = GetFirstObjectInInventory(oPC); while (GetIsObjectValid(oItem)) { sTag=GetTag(oItem); if (sTag=="TAGA" || sTag=="TAGB") return TRUE; oItem = GetNextItemInInventory(oPC); } return FALSE; Sachant que justement si c'est pour éviter que le pnj donne plusieurs objets, il vaut mieux avoir recours à une variable locale sur le joueur, sinon le petit malin en question n'a qu'a poser l'objet par terre. Enfin le script peut toujours servir pour dans d'autres conditions, j'ai ptet pas bien compris. |
Revenir en haut | ![]() ![]() ![]() |
Zaph Novice Messages: 6 |
Merci Sith Vicious....
pour le 1 aucun soucis c'est clair... pour le 2 je n'ai pas très bien compris... En fait j'ai dans le module, deux factions opposées qui doivent lâcher respectivement deux loots différents. Chaque Pj de la faction possède une pierre d'âme... pour le 3 c'est juste ce que je cherchais ^^ de toute façon les p'tits malins pourront pas lâcher l'item en question ![]() |
Revenir en haut | ![]() ![]() ![]() |
Zaph Novice Messages: 6 |
Heu pour la dernière solution, le scripy compile pas... L'éditeur me met ça :
Erreur. '_destinee_verif' n'est pas compilé. _destinee_verif.nss(3): ERREUR : PARSING VARIABLE LIST |
Revenir en haut | ![]() ![]() ![]() |
Sith Vicious Grand Sage du Conseil ![]() Messages: 693 |
Ah ben C'est GetFirstItemInInventory(oPC) et pas GetFirstObject, je me plante chaque fois...
|
Revenir en haut | ![]() ![]() ![]() |


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