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 20:04:42
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 |
bonjour
dans le OnDeath des NPJ j'ai mis ce script pour compter chaque NPJ tué NWScript :
void main() { int nMort = GetLocalInt(GetModule(), "nbMort"); ++nMort; SetLocalInt(GetModule(), "nbMort", nMort); } dans le dialogue je voudrai que lorsque le PJ demande sa récompense il lui soit donner automatiquement des PO et des XP selon le nombre de nMort et là je cale si qqun..... amicalment _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
Seth de Sombrelune Seigneur Messages: 156 |
là tu stock le nombre de créature tuée sur le module, donc, si un pj (A) tue 350 créatures et qu'un pj (B) tue 1 créature, le pj (B) recevras la récompense de 350+1 = 351 créature.
Tu ne doit pas stocker les donnée sur le module mais sur le PJ. je te propose cette version du script : NWScript :
void main() { object oPC=GetLastKiller();// on recupere le pj qui a tuer la creature int nMort = GetLocalInt(oPC, "nbMort"); // on recupere son ancien score int nMort2 =nMort+1; // on ajoute 1 a son ancien score SetLocalInt(oPC, "nbMort", nMort2); // on stock son score sous forme de variable locale } ensuite, il suffit de recuperer le score et de le traiter sous forme de recompense : NWScript :
void main() { object oPC=GetPCSpeaker(); // on recupere le pj qui dialogue int nMort = GetLocalInt(oPC, "nbMort"); // on recupere son ancien score int iXPval=500; // on atribue la valeur en xp de chaque monstre tuer int iGoldval=50; // on atribue la valeur en po de chaque monstre tuer int iGold=nMort*iGoldval; // on calcul la recompense en po du score realise int iXP=nMort*iXPval; // on calcul la recompense en xp du score realiser GiveGoldToCreature(oPC,iGold); // on donne au pj l'or GiveXPToCreature(oPC,iXP);// on donne au pj les xp SendMessageToPC(oPC,"Vous recevez "+IntToString(iGold)+"po et "+IntToString(iXP)+"");//on informe le pj qu'il a recu son poignon et ses XP DeleteLocalInt(oPC, "nbMort"); // on remet les compteur a zero en effacant le score } Voilà, je pense que c'est ce que tu voulait, par contre on ne tient absolument pas compte du niveau du PJ pour atribuer la récompense. Tu règle la récompence en modifiant la valeur de iXPval et de iGoldval... |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
Bonjour et merci
ça marche nickel Citation : là tu stock le nombre de créature tuée sur le module, donc, si un pj (A) tue 350 créatures et qu'un pj (B) tue 1 créature, le pj (B) recevras la récompense de 350+1 = 351 créature.
Petit problème si c'est le compagnon du PJ qui tue les creatures le PJ ne profite pas du NbMort
Tu ne doit pas stocker les donnée sur le module mais sur le PJ. comment y remedier? amicalement _________________ Rien ne vaut la recherche lorsqu'on veut trouver quelque chose. [J. R. R. Tolkien] |
Revenir en haut | |
Semcatala Grand Sage du Conseil Messages: 951 |
je pense qu'il faudrait utiliser une commande qui permette de savoir qui est le maitre du familier qui a tué le monstre , mais je ne connais pas cette commande ...; !
Je vais essayer de chercher ! Peut être la commande " GetMaster(); " _________________ " La ruse doit être employée pour faire croire que l'on est où l'on est pas, que l'on veut ce qu'on ne veut pas. " CdG " La véritable école du Commandement est la culture générale. " CdG " Une société prête à sacrifier un peu de liberté contre un peu de sécurité ne mérite ni l'une ni l'autre et finit par perdre les deux. " B.F " La gloire se donne seulement à ceux qui l'ont toujours rêvée. " CdG " La fin de l'espoir est le commencement de la mort. " CdG |
Revenir en haut | |
yellow submarine Grand Chevalier Messages: 143 |
salut
GetMaster(); fonctionne aussi si c'est un hench le nettoyeur amicalement _________________ 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