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 22:58:20
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 |
yellow submarine Grand Chevalier Messages: 143 |
salut
l' du jour qui n'a pas pesté d'attendre une heure précise pour faire une action (moi bien sur) donc j'ai fait un objet : sac de couchage (Propriété : Lancer un sort, pouvoir unique) un dialogue pour dormir X heures et les scripts qui vont avec. ca fonctionne sur un lit par exemple (bon le PJ dort toujours à côté du lit mais ca fonctionne) maintenant l'idée c'est que dans certaines zones seulement, on puisse utiliser le sac de couchage (le rêve ce serait de pouvoir le concrétiser sur le sol et dormir dessus) la question est : quel script mettre dans OnEnter de la zone amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
Lavok Légende vivante Messages: 434 Localisation: Sphère planaire |
Dans l'événement 'OnActivateItem' (petit EDIT ) du module :
NWScript :
#include "nw_i0_2q4luskan" void main() { object oItem = GetItemActivated(); object oPC = GetItemActivator(); if(GetTag(oItem)=="sacdecouchageinv") { if(GetLocalInt(oPC, "sacdecouchage")==1) { AssignCommand(oPC, PlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 2.0)); DelayCommand(2.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "sacdecouchage", GetLocation(oPC))); DestroyObject(oItem); } else { SendMessageToPC(oPC, "Vous ne pouvez pas utiliser votre sac de couchage ici."); } } } Créé un "plaçable" à l'apparence d'un lit de camp (tag et blueprint 'sacdecouchage') et un objet d'inventaire de tag et blueprint 'sacdecouchageinv'. Dans le OnEnter de toute zone où le sac de couchage est permis : NWScript :
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. Et dans celui des zones où le sac de couchage est interdit : NWScript :
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. Enfin, donne un dialogue à ton sac de couchage "plaçable" dans lequel ou peut soit choisir de reprendre son sac de couchage, soit de dormir. _________________ ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera. Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera. Dernière édition par Lavok le 17/12/2003 14:20:18; édité 1 fois
|
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
encore et encore merci
mais avec moi tu n'as pas fini dans mon OnActivateItem du module (je pense que c'est de cela dont tu parles) j'ai déjà ce script (pierre de rappel) NWScript :
void main() { object oItem=GetItemActivated(); object oActivator=GetItemActivator(); if(GetTag(oItem)=="DMsHelper") { if(GetIsDM(oActivator) != TRUE) { SendMessageToPC(oActivator,"You are mortal and this is not yours!"); DestroyObject(oItem); return; } // get the wand's activator and target, put target info into local vars on activator object oMyActivator = GetItemActivator(); object oMyTarget = GetItemActivatedTarget(); SetLocalObject(oMyActivator, "dmwandtarget", oMyTarget); location lMyLoc = GetItemActivatedTargetLocation(); SetLocalLocation(oMyActivator, "dmwandloc", lMyLoc); //Make the activator start a conversation with itself AssignCommand(oMyActivator, ActionStartConversation(oMyActivator, "dmwand", TRUE)); return; } if(GetTag(oItem)=="AutoFollow") { object oTarget = GetItemActivatedTarget(); if(GetIsObjectValid(oTarget)) { AssignCommand ( oActivator, ActionForceFollowObject(oTarget)); } return; } if(GetTag(oItem) == "NW_IT_RECALL") { location LastRecallUsed; //Set the location variable LastRecallUsed = GetLocation(GetItemActivator()); //Get the location, fill up the variable SetLocalLocation(GetItemActivator(),"LastRecallUsed",LastRecallUsed); // Set where the portal jump the player to SetLocalInt(GetItemActivator(),"HasRecalled",1); // To make the recall poretal tells the player if he want to go back ActionCastFakeSpellAtObject ( SPELL_DISMISSAL , GetItemActivator()); DelayCommand (0.5, AssignCommand(GetItemActivator(), JumpToLocation(GetLocation(GetObjectByTag("portail_pierre"))))); // Get the player to the temple } } ma question comment faire pour réunir les deux? amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
Lavok Légende vivante Messages: 434 Localisation: Sphère planaire |
Fusion :
NWScript : #include "nw_i0_2q4luskan" void main() { object oItem = GetItemActivated(); object oActivator = GetItemActivator(); if(GetTag(oItem)=="sacdecouchageinv") { if(GetLocalInt(oActivator, "sacdecouchage")==1) { AssignCommand(oActivator, PlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 2.0)); DelayCommand(2.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "sacdecouchage", GetLocation(oActivator))); DestroyObject(oItem); } else { SendMessageToPC(oActivator, "Vous ne pouvez pas utiliser votre sac de couchage ici."); } } if(GetTag(oItem)=="DMsHelper") { if(GetIsDM(oActivator) != TRUE) { SendMessageToPC(oActivator,"You are mortal and this is not yours!"); DestroyObject(oItem); return; } // get the wand's activator and target, put target info into local vars on activator object oMyActivator = GetItemActivator(); object oMyTarget = GetItemActivatedTarget(); SetLocalObject(oMyActivator, "dmwandtarget", oMyTarget); location lMyLoc = GetItemActivatedTargetLocation(); SetLocalLocation(oMyActivator, "dmwandloc", lMyLoc); //Make the activator start a conversation with itself AssignCommand(oMyActivator, ActionStartConversation(oMyActivator, "dmwand", TRUE)); return; } if(GetTag(oItem)=="AutoFollow") { object oTarget = GetItemActivatedTarget(); if(GetIsObjectValid(oTarget)) { AssignCommand ( oActivator, ActionForceFollowObject(oTarget)); } return; } if(GetTag(oItem) == "NW_IT_RECALL") { location LastRecallUsed; //Set the location variable LastRecallUsed = GetLocation(GetItemActivator()); //Get the location, fill up the variable SetLocalLocation(GetItemActivator(),"LastRecallUsed",LastRecallUsed); // Set where the portal jump the player to SetLocalInt(GetItemActivator(),"HasRecalled",1); // To make the recall poretal tells the player if he want to go back ActionCastFakeSpellAtObject ( SPELL_DISMISSAL , GetItemActivator()); DelayCommand (0.5, AssignCommand(GetItemActivator(), JumpToLocation(GetLocation(GetObjectByTag("portail_pierre"))))); // Get the player to the temple } } _________________ ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera. Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera. |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
chapeau bas
ça fonctionne Lavok a écrit : Enfin, donne un dialogue à ton sac de couchage "plaçable" dans lequel ou peut soit choisir de reprendre son sac de couchage, soit de dormir. amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
Lavok Légende vivante Messages: 434 Localisation: Sphère planaire |
yellow submarine a écrit : quand tu dis reprendre c'est : le détruire Plus précisément, voici le script exact en action conséquente de cette réplique du "dialogue" :
NWScript : void main() { object oPC = GetPCSpeaker(); AssignCommand(oPC, PlayAnimation(ANIMATION_LOOPING_GET_MID, 1.0, 1.0)); object oItem = CreateItemOnObject("sacdecouchageinv", oPC); DelayCommand(0.5, DestroyObject(OBJECT_SELF)); } _________________ ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera. Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera. |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
et en plus ça de la classe...
amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Pour les feignassous ça existe (heu moi)
j'ai retiré dans le script du module : NWScript :
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. et je coche seulement dans les zones ou il ne peut pas dormir la case : Pas de repos et les deux scripts relatifs à la condition ne sont plus utiles encore merci amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Monsieur plus
je veux placer à côté du sac de couchage un feu de camp en "arrangeant" le script plus haut, j'arrive à créer mon feu de camp mais bien sur je n'ai pas la solution pour qu'il soit à côté du sac et non dessus quelle est l'amélioration à : NWScript :
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. les ???? étant mon ignorance amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
lendraste Grand Maître Chanteur du Conseil Messages: 1403 Localisation: Quelque part ailleurs |
yellow submarine a écrit : Monsieur plus
Il suffit de calculer une nouvelle position à partir des coordonnées du sac une fois posé.
je veux placer à côté du sac de couchage un feu de camp en "arrangeant" le script plus haut, j'arrive à créer mon feu de camp mais bien sur je n'ai pas la solution pour qu'il soit à côté du sac et non dessus quelle est l'amélioration à : NWScript :
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. les ???? étant mon ignorance amicalement En partant du principe que tu disposes d'un objet oSac, on va essayer de calculer une location qui soit à 1 mètre à la droite ou à la gauche de la tête du sac (note que je ne sais pas trop ou est le point de référence du sac, c'est-à-dire comment le sac est placé autour de sa loc, mais en ajustant quelques paramètre, il doit y avoir moyens d'arriver à ses fins) : NWScript :
float fAngle = 90.0; float fDist = 1.0; //Rassembler les informations de la position du sac location lLocSac = GetLocation(oSac); object oArea = GetAreaFromLocation(lLocSac); vector vPos = GetPositionFromLocation(lLocSac); float fFacing = GetFacingFromLocation(lLocSac); //Rassembler les informations de la nouvelle position float fNewFacing = fFacing + fAngle; if (fNewFacing > 360.0) { fNewFacing = fNewFacing - 360.0; } else if (fNewFacing < 0.0) { fNewFacing = fNewFacing + 360.0; } float fNexX = vPos.x + fDist * cos(fNewFacing); float fNewY = vPos.y + fDist * sin(fNewFacing); vector vNewPos = Vector(fNewX, fNewY, vPos.z); //Construction de la nouvelle Loc location lNewLoc = Location(oArea, vNewPos, fNewFacing); lNewLoc est la location à utiliser. Je n'ai pas testé. Fais-moi savoir si c'est bon ou s'il faut ajuster quelque chose. _________________ Lendraste de Loreval Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel. La cité des mensonges - 1 |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
bonjour
lendraste a écrit : Je n'ai pas testé. Fais-moi savoir si c'est bon ou s'il faut ajuster quelque chose j'ai quand même une erreur, mais comme tu ne m'as tout maché le travail... c'est moi qui ai surement rien compris. donc j'ai mis la variable ici : DelayCommand(3.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "feudecamp",GetLocation(lNewLoc))); et j'ai l'erreur : DECLARATION DOES NOT MATCH PARAMETERS merci de ton aide amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
lendraste Grand Maître Chanteur du Conseil Messages: 1403 Localisation: Quelque part ailleurs |
Il ne faut pas faire un GetLocation(lNewLoc) puisque que lNewLoc est déjà une location. GetLocation sert à connaître la location de n'importe quel objet du module et son paramètre est donc un objet. DECLARATION DOES NOT MATCH PARAMETERS indique que la fonction attend un paramètre objet et que tu lui fournis une localisation.
Ta commande devient donc : Code : DelayCommand(3.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "feudecamp",lNewLoc)); [EDIT]PS : désolé pour la faute de frappe. Mais pour rester cohérent, il valait mieux changer la déclaration de fNexX en fNewX ("new" signifiant nouveau). Cela n'a toutefois aucune incidence sur le calcul et la création de cette location _________________ Lendraste de Loreval Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel. La cité des mensonges - 1 |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Merci encore Lendraste
j'ai fait les rectifs (fNewX aussi, pour la cohérence) et c'est super amicalement Je profite pour souhaiter à tout le Forum de superbes fêtes de fin d'année car Ce soir je suis en vacances pour 15 jours Longue vie au Forum et à ceux qui l'animent. _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Je suis encore là
Tout fonctionne mais voilà (d'accord ce n'est qu'un détail): Le PJ s'assoie sur le sac de couchage (à condition qu'il reste dessus) mais les pieds à la tête ma question : il y a-t-il un moyen d'orienter le sac de couchage? amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
lendraste Grand Maître Chanteur du Conseil Messages: 1403 Localisation: Quelque part ailleurs |
yellow submarine a écrit : ma question : il y a-t-il un moyen d'orienter le sac de couchage? Et bien oui. Il semble qu'il faille effectuer un calcul sur la position du sac également et non pas se contenter de lui donner la location du PJ. Notamment, si le PJ n'est pas déplacé pendant l'opération de mise en place du sac, il faut faire subir à celui-ci une rotation de 180 degré.
Le principe de calcul est très similaire à celui que j'ai déjà donné. Voici globalement ce que ça donnerait si l'on veux que le calcul de la position du feu de camp continue à donner le même résultat (Hypothèse : oPC est un objet représentant le PJ) : NWScript :
float fRot = 180.0; float fAngle = 90.0; float fDist = 1.0; //Rassembler les informations de la position du PJ location lLocPJ = GetLocation(oPC); object oArea = GetAreaFromLocation(lLocPJ); vector vPosSac = GetPositionFromLocation(lLocPJ); float fFacingSac = GetFacingFromLocation(lLocPJ); //Nouvelle orientation du sac fFacingSac = fFacingSac + fRot; if (fFacingSac > 360.0) { fFacingSac = fFacingSac - 360.0; } else if (fFacingSac < 0.0) { fFacingSac = fFacingSac + 360.0; } location lLocSac = Location(oArea, vPosSac, fFacingSac); //Rassembler les informations de la nouvelle position pour le feu de camp float fNewFacing = fFacingSac + fAngle; if (fNewFacing > 360.0) { fNewFacing = fNewFacing - 360.0; } else if (fNewFacing < 0.0) { fNewFacing = fNewFacing + 360.0; } float fNewX = vPosSac.x + fDist * cos(fNewFacing); float fNewY = vPosSac.y + fDist * sin(fNewFacing); vector vNewPos = Vector(fNewX, fNewY, vPosSac.z); //Construction de la Loc du feu de camp location lNewLoc = Location(oArea, vNewPos, fNewFacing); De cette façon tu utilises lLocSac et lNewLoc pour le Sac et le Feu de camp respectivement. _________________ Lendraste de Loreval Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel. La cité des mensonges - 1 |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
lendraste a écrit : (Hypothèse : oPC est un objet représentant le PJ) le script étant dans le OnActivateItem (du module)
que mettre pour déclarer OBJECT oPC = amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
lendraste Grand Maître Chanteur du Conseil Messages: 1403 Localisation: Quelque part ailleurs |
Il a été cité dans le script de Lavok :
Code : object oActivator = GetItemActivator(); Tu l'appelles oActivator ou oPC à ta convenance, quoi qu'il faille quand même vérifier si l'activateur de l'objet est bien un PJ (GetIsPC) _________________ Lendraste de Loreval Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel. La cité des mensonges - 1 |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
OK
maintenant c'est à la ligne object oArea = GetAreaFromLocation(lLocPJ); que j'ai l'erreur : VARIABLE ALREADY USED WITHIN SCOPE (je pense que tu vas être content que je perte en vacances ) amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
lendraste Grand Maître Chanteur du Conseil Messages: 1403 Localisation: Quelque part ailleurs |
yellow submarine a écrit : object oArea = GetAreaFromLocation(lLocPJ); que j'ai l'erreur : VARIABLE ALREADY USED WITHIN SCOPE Autrement dit, il faudrait que tu réaffiches le script en entier pour voir ce qui peut clocher, mais je dirais que oArea a été déclaré deux fois et je suppose que c'est parce que tu as mal fusionné les différentes propositions. Citation : (je pense que tu vas être content que je perte en vacances ) _________________ Lendraste de Loreval Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel. La cité des mensonges - 1 |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Bonjour à tous et très très bonne année
lendraste a écrit : Autrement dit, il faudrait que tu réaffiches le script en entier pour voir ce qui peut clocher, mais je dirais que oArea a été déclaré deux fois et je suppose que c'est parce que tu as mal fusionné les différentes propositions. NWScript :
#include "nw_i0_2q4luskan" void main() { object oItem = GetItemActivated(); object oActivator = GetItemActivator(); object oTarget = GetItemActivatedTarget(); if(GetTag(oItem)=="sacdecouchageinv") { //if(GetLocalInt(oActivator, "sacdecouchage")==1) //{ float fRot = 180.0; float fAngle = 90.0; float fDist = 1.0; //Rassembler les informations de la position du PJ location lLocPJ = GetLocation(oActivator); object oArea = GetAreaFromLocation(lLocPJ); vector vPosSac = GetPositionFromLocation(lLocPJ); float fFacingSac = GetFacingFromLocation(lLocPJ); //Nouvelle orientation du sac fFacingSac = fFacingSac + fRot; if (fFacingSac > 360.0) { fFacingSac = fFacingSac - 360.0; } else if (fFacingSac < 0.0) { fFacingSac = fFacingSac + 360.0; } location lLocSac = Location(oArea, vPosSac, fFacingSac); //Rassembler les informations de la nouvelle position pour le feu de camp float fNewFacing = fFacingSac + fAngle; if (fNewFacing > 360.0) { fNewFacing = fNewFacing - 360.0; } else if (fNewFacing < 0.0) { fNewFacing = fNewFacing + 360.0; } float fNewX = vPosSac.x + fDist * cos(fNewFacing); float fNewY = vPosSac.y + fDist * sin(fNewFacing); vector vNewPos = Vector(fNewX, fNewY, vPosSac.z); //Construction de la Loc du feu de camp location lNewLoc = Location(oArea, vNewPos, fNewFacing); AssignCommand(oActivator, PlayAnimation(ANIMATION_LOOPING_GET_LOW, 1.0, 2.0)); //ANIMATION_LOOPING_GET_MID DelayCommand(2.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "sacdecouchage", lLocSac)); DelayCommand(3.0, CreateObjectVoid(OBJECT_TYPE_PLACEABLE, "feudecamp",lNewLoc)); DestroyObject(oItem); } else { SendMessageToPC(oActivator, "Vous ne pouvez pas utiliser votre sac de couchage ici."); } //} //trackinkit object oUser = GetItemActivator(); string sItemTag = GetTag(GetItemActivated()); if (sItemTag == "TrackingKit") { ExecuteScript("ranger_tracking", oUser); return; } // fin if(GetTag(oItem)=="DMsHelper") { if(GetIsDM(oActivator) != TRUE) { SendMessageToPC(oActivator,"You are mortal and this is not yours!"); DestroyObject(oItem); return; } // get the wand's activator and target, put target info into local vars on activator object oMyActivator = GetItemActivator(); object oMyTarget = GetItemActivatedTarget(); SetLocalObject(oMyActivator, "dmwandtarget", oMyTarget); location lMyLoc = GetItemActivatedTargetLocation(); SetLocalLocation(oMyActivator, "dmwandloc", lMyLoc); //Make the activator start a conversation with itself AssignCommand(oMyActivator, ActionStartConversation(oMyActivator, "dmwand", TRUE)); return; } if(GetTag(oItem)=="AutoFollow") { object oTarget = GetItemActivatedTarget(); if(GetIsObjectValid(oTarget)) { AssignCommand ( oActivator, ActionForceFollowObject(oTarget)); } return; } if(GetTag(oItem) == "NW_IT_RECALL") { location LastRecallUsed; //Set the location variable LastRecallUsed = GetLocation(GetItemActivator()); //Get the location, fill up the variable SetLocalLocation(GetItemActivator(),"LastRecallUsed",LastRecallUsed); // Set where the portal jump the player to SetLocalInt(GetItemActivator(),"HasRecalled",1); // To make the recall poretal tells the player if he want to go back ActionCastFakeSpellAtObject ( SPELL_DISMISSAL , GetItemActivator()); DelayCommand (0.5, AssignCommand(GetItemActivator(), JumpToLocation(GetLocation(GetObjectByTag("portail_pierre"))))); // Get the player to the temple } } je n'ai plus d'erreur de compil mais si le PJ s'éloigne du sac avant de revenir pour dormir => il dort à côté du sac amicalement et encore bonne année à toi _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
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