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:08:46
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 |
Cocasso Ecuyer Messages: 41 |
BOnjour a tous ...
voila mon ptit soucis .*j'explique la situation* en fait les pj doivent rammener des peau de rat a un pnj qui celui ci remet une recompense au pj...(jusqu'ici tout vas bien) seulement j aimerais qu'il prenne toute les peu de rat qui se trouve dans l inventaire d un coup...et non pas faire la manipe pour chaque peau..(car si le PJ en possede 50,ça risque de le saouler tres vite) voici le script en question.. //:////////////////////////////////////////////// //:: FileName sc_002 //:///////////////////////////////////////////// //:///////////////////////////////////////////// //:: Created By: Script Wizard //:: Created On: 10/04/04 18:53:55 //:///////////////////////////////////////////// #include "nw_i0_tool" int StartingConditional() { // Vérifier que le PJ qui parle possède ces objets dans son inventaire if(!HasItem(GetPCSpeaker(), "peauderat")) return FALSE; return TRUE; } Merci de votre aide.. |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
Alors ce script là, c un script qui vérifie si tu as une peau de rat.
Ce n'est pas le script qui les prends, t'as du te gourer quelque part ^^ Et enfin, le prochain script que tu met, tu le sélectionnes, et tu cliques sur l'oeil en haut qui ressemble à ça : il sera bien plus lisible, merci _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
ok je t acherais de le faire ..^^
merci .. Bon je vait essayer de trouver le bon script |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
vi je me suis effectivement planter de script...
voici le bon..^^ NWScript : //:///////////////////////// ///////////////////// //:: FileName at_006 //:///////////////////////// //////////////////// //:///////////////////////// //////////////////// //:: Created By: Script Wizard //:: Created On: 10/04/04 18:59:43 //:///////////////////////// //////////////////// void main() { object oItemToTake; oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "peauderat"); if(GetIsObjectValid(oItemToTake) != 0) DestroyObject(oItemToTake); } |
Revenir en haut | |
maremick Acolyte Messages: 25 |
Voila qui devrait marcher
NWScript : //:///////////////////////// ///////////////////// //:: FileName at_006 //:///////////////////////// //////////////////// //:///////////////////////// //////////////////// //:: Created By: Script Wizard //:: Created On: 10/04/04 18:59:43 //:///////////////////////// //////////////////// void main() { object oItemToTake = GetObjectByTag("peauderat"); string sTagObjet = "peauderat"; object oPC = GetPCSpeaker(); if(GetIsObjectValid(oItemToTake)) { int nNbItem = GetNumItems(oPC, sTagObjet); // Compte les objets TakeNumItems(oPC, sTagObjet, nNbItem); // Les prend } } |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Merci .. je vait tester ton scrip et je te dit ca..^^
|
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
helas .. toujours pareil
il les prend un par un.. merci quand meme.. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Mais en fonction du nombre de peau .. donnera t il ceci pour chaque peau pris...??
ou faut il compiler les deux scripts? en fait bein j aimerais qu'il prenne toutes les peau et qu il donne une recompense pour ne nombre de peau pris..une peau/recompense voici le script qui suit apres qu il est recuperer une (seule ) peau.. y a t il un myen pour que le sript calcule le nombre de peau dans l inventaire,qu il les enleve toute d un coup,et qu il donne le nombre de recompense en fonction du nombre de peau? NWScript :
//:///////////////////////// ///////////////////// //:: FileName at_007 //:///////////////////////// //////////////////// //:///////////////////////// //////////////////// //:: Created By: Script Wizard //:: Created On: 10/04/04 19:02:56 //:///////////////////////// //////////////////// void main() { GiveGoldToCreature(GetPCSpeaker(), 100); GiveXPToCreature(GetPCSpeaker(), 5); } Merci de votre aide .. en esperant que ce soit clair |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
NWScript : void main() { object oPJ = GetPCSpeaker(); //Le joueur qui parle object oItemToTake = GetItemPossessedBy(oPJ, "peauderat"); while (GetIsObjectValid(oItemToTake) != 0) { DestroyObject(oItemToTake); //destruction de la peau GiveGoldToCreature(oPJ, 100); //on donne 100Po GiveXPToCreature(oPJ, 5); //on donne 5XP } SpeakString("Merci bien!"); //On dit merci pasqu'on est poli ^^ } _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
maremick Acolyte Messages: 25 |
T'es sûr de bien l'avoir remplacé ? Parce que j'avais oublié l'include et ça devrait même pas compiler .
Et pourquoi tu ne mets pas les deux scripts en un ? Je me demande même comment tu fais. Essaie celui-ci dans "action conséquente". Mais faut que dans ta réplique avant tu vérifies qu'il aie au moins une "peauderat". NWScript : //////////////////////////// /////////////////// //:: FileName vend_peauderat //////////////////////////// ////////////////// //////////////////////////// ////////////////// //:: Created By: Maremick //:: Created On: 26/05/2004 //////////////////////////// ////////////////// #include "nw_i0_plot" void main() { object oItemToTake = GetObjectByTag("peauderat"); // objet string sTagObjet = "peauderat"; // Tag objet object oPC = GetPCSpeaker(); // Joueur int nNbItem = GetNumItems(oPC, sTagObjet); int iXP = 5*nNbItem; int iGold = 100*nNbItem; if(GetIsObjectValid(oItemToTake)) { TakeNumItems(oPC, sTagObjet, nNbItem); GiveXPToCreature(oPC, iXP); // Donne l'XP GiveGoldToCreature(oPC, iGold); // Donne l'Or } } |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Merci.. je vais tester et je reviens vous dire...^^
|
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Bon je vien de tester les deux scripts...^^
et la les deux me fond la meme erreur(to many instruction,et donne la recompense a l'infini,s'en prendre les peau de rat de l inventaire) mais c'est bizard que les deux script fasse la meme erreur... ca vient peut etre de moi.. question bete..pour vous mais pas pour moi..."compiler" il le fait tout seul ou faut faire une manipe... car je crois pas avoir ommis de faire qqchose en mettent de script.... bein sa marche po... Merci de vos effort en tout cas..^^ |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
c'est bon ... vos scripts fonctionnent..^^
en fait j'ais essayer a tous azart de metre le script dans Condition d'execusion,au lieux d'action consequante, et la .. tous se deroule a merveille....en instantaner!! il vide l inventaire danne le nombre de recompense par raport au peau pris, Bref exactement se que je desirais .. Merci encore,Z'etes trop efficasse. |
Revenir en haut | |
maremick Acolyte Messages: 25 |
C'est peut-être la getobjectbytag qui plante vu qu'il y a plusieurs objets du même tag. Et compiler, c'est quand tu sauvegarde ton script, il y a l'onglet compiler qui vient en bas à gauche et qui te dit si ca s'est bien compilé, ou s'il y a des erreurs de syntaxe et que ca ne marchera pas.
Essaie ceci NWScript :
//////////////////////////// /////////////////// //:: FileName vend_peauderat //////////////////////////// ////////////////// //////////////////////////// ////////////////// //:: Created By: Maremick //:: Created On: 26/05/2004 //////////////////////////// ////////////////// #include "nw_i0_plot" void main() { // object oItemToTake = GetObjectByTag("peauderat "); // objet string sTagObjet = "peauderat"; // Tag objet object oPC = GetPCSpeaker(); // Joueur int nNbItem = GetNumItems(oPC, sTagObjet); int iXP = 5*nNbItem; int iGold = 100*nNbItem; if (nNbItem) // if(GetIsObjectValid(oItemToTak e)) { TakeNumItems(oPC, sTagObjet, nNbItem); GiveXPToCreature(oPC, iXP); // Donne l'XP GiveGoldToCreature(oPC, iGold); // Donne l'Or } } Edit : Ma foi, je sais pas ce que t'as foutu mais ça m'a l'air bien drole. Bon, je t'explique comment faire : Tu dois avoir un dialogue du genre: Salut vous avez mes peaux de rats ? Oui, tenez. Merci, tenez pour vous. [fin de dialogue] Alors dans le condition d'execution de "oui, tenez", tu mets ton script que t'as mis au début. et dans le action conséquente de "merci, tenez pour vous", tu mets celui qu'on t'a donné. Ce sera un peu plus^propre. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
lool...
oui en effet ..je sais pas moi meme se que je fait..^^ je me rend seulement compte que si tu possede la sript...tu est liiiiibre...!! Bref moi je ni connais rien,lool Mais.....S' coup si j'ais bien suivit se que tu m'as dis .. et devine koi?? mais tu dois bien t'en douter..^^ c'est fonctionne niquel.. Merci encore..^^ |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
euhh....apres verif j'ai un ptit soucis avec le sript..
oui en effet il fonctionne mais des fois il reprend la totaliter des item et des fois non... (en fait en 2 fois) Mais par contre qu'il prenne la totaliter ou non il fait le bon calcul au niveau des xp et des po... ce qui veux dire que si le pj pocede 40 peau de rat,il recevras la totaliter des po ainsi que des xp..meme si le pnj en reprend que 2... par contre au deuxieme essay il reprend bien tous les item mais redonne la meme recompense... je vous remet le script en question... en faite j aimerais qu'il enleve tous les item d un coup..(car le calcule est bon..^^) je vous remerci d'avance... NWScript : ////////////////////////////// ///////////////// //:: FileName vend_peauderat ////////////////////////////// //////////////// ////////////////////////////// //////////////// //:: Created By: Maremick //:: Created On: 26/05/2004 ////////////////////////////// //////////////// #include "nw_i0_plot" void main() { // object oItemToTake = GetObjectByTag("peauderat "); // objet string sTagObjet = "peauderat"; // Tag objet object oPC = GetPCSpeaker(); // Joueur int nNbItem = GetNumItems(oPC, sTagObjet); int iXP = 50*nNbItem; int iGold = 500*nNbItem; if (nNbItem) // if(GetIsObjectValid(oItemToTak e)) { TakeNumItems(oPC, sTagObjet, nNbItem); GiveXPToCreature(oPC, iXP); // Donne l'XP GiveGoldToCreature(oPC, iGold); // Donne l'Or } } |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Bien j'ai resolut le prob..^^
en fait le scrip est bon... Mais si le pj a plein de chose a remetre d un coup.(ce qui est souvent le cas avec les peau de rat..^^) ne pas faire de point de passage au pnj...car celui ci est tellement pressé de se balader qu'il en oublie de tout prendre dans l inventaire..^^ en conclusion script a metre sur un pnj statique,et la effectivement tout fonctionne a merveille... |
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