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 15:27:28
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 |
Bella Lugosi Novice Messages: 17 |
Voila je bloque sur un autre probleme:
Je voudrais que mon pnj sache le nombre d'exemplaire du meme objet que possede un joueur quand il lui parle; et second probleme j'aimerais savoir comment ce pnj peux enlever un nombre X de ces fameux objets. Mon gros probleme est que je n'arrive pas a quantifier les objets, car il me semble qu'il ne faille pas proceder de la meme facon avec un objet en 1 seul exemplaire. Enfin, gros blocage..... merci d'avance pour toute aide |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Pour pouvoir t'aider, je dois savoir si ces objets ont chacun un TAG commun ou individuel, s'ils ont un ResRef commun ou individuel... A partir de là, on peut commencer à creuser du côté du script OnAcquireItem... _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Bella Lugosi Novice Messages: 17 |
Eh bien ils seront tout a fait identiques, leurs tag et leurs resref sont donc tous les meme.Ce sont par exemple des poils de rats que l'on retrouve sur des cadavres. Le joueur peut en cumuler, et ce qui m'interesse c'est qu'un pnj puisse les denombrer, et si le joueur en a un nombre X une condition apparait. De plus je n'arrive pas a en retirer un nombre précis de l'inventaire de mon pj, La principale difficulté étant éviement que les objets soient identiques.
|
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Soyons clair, c'est pour un type particulier (poils de rat) et rien d'autres ou pour d'autres objets ? Si ce n'est que pour les "poils de rat", passe-moi le TAG et je pourrais avancer... et tant qu'on y est le nombre qui débloquera la condition... _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Bella Lugosi Novice Messages: 17 |
Je vais tenter d'être le plus clair possible ce coup-ci, c'est pas gagné
A la base, je voulais faire une sorte de quete ou il fallait recuperer cinq cristaux (identiques) et les donner a un pnj de facon a obtenir un nouvel objet en echange. Le tag de mes cristaux est "cristalderoche" (tres original ) Mais en fait ce probleme, je le traine depuis longtemps quand il s'agit de quantifier un objet dans inventaire je me perds; de plus il serait surement interesant de pouvoir réutiliser ce systeme pour d'autres applications. En tout cas je te remercie de l'aide que tu m'apportes. |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Voila le fruit de mes expériences... Mais tout d'abord une limite...Dans le cas d'un multijoueur, il faut que ce soit le même joueur qui récupère les 5 cristaux... Postula.. 5 cristaux avec le même TAG "cristalderoche". 1. Dans Éditer, propriétés du module, Évènements, coller le script suivant dans le OnAcquireItem: NWScript :
void main() { object oTest = GetModuleItemAcquired(); object oPossesseur = GetModuleItemAcquiredBy(); if (GetTag(oTest) == "cristalderoche") { ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_FORTITUDE_SAVING_THROW_USE),oPossesseur); SetLocalInt(oPossesseur,"cristalquest",GetLocalInt(oPossesseur,"cristalquest") + 1); FloatingTextStringOnCreature("En voila un de plus", oPossesseur, TRUE); } // else if (GetTag(oTest) == "????") // { } } 2. Pour éviter que des petits malins ne lâchent puis ne reprennent le même cristal... Ce script dans le OnUnAcquireItem void main() { NWScript :
object oTest = GetModuleItemLost(); object oPossesseur = GetModuleItemLostBy(); if (GetTag(oTest) == "cristalderoche") { SetLocalInt(oPossesseur,"cristalquest",GetLocalInt(oPossesseur,"cristalquest") - 1); SendMessageToPC(oPossesseur, "Vous avez perdu un cristal..."); } // else if (GetTag(oTest) == "????") // { } }/* suspect block end found !*/ 3. dans la branche de dialogue qui dis en substance:"les voila vos 5 cristaux de roche !!" en Conditions d'éxécution... placer ceci: NWScript : int StartingConditional() { int nDone = (GetLocalInt(GetPCSpeaker(), "cristalquest") == 5 ); return nDone; } _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Bella Lugosi Novice Messages: 17 |
bon ben je vais tester tout ca. je te remercie grandement
|
Revenir en haut | |
Bella Lugosi Novice Messages: 17 |
Ton script marche à merveille et je te remercie encore *
Mais j'ai un dernier problème... Je n'arrrive pas a faire en sorte que mon pnj lui enlève les 5 "cristauxderoche" présent dans l'inventaire. Je n'arrive pas a modifier le script de base qui permet d'enlever 1 objet avec un tag precis dans l'inventaire, par un script qui enleve 5 objets d'un tag précis dans l'inventaire. |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Je pense que ceci devrait te convenir... NWScript :
#include "nw_i0_plot" void main() { TakeNumItems(GetPCSpeaker(), "cristalderoche", 5); //SetLocalInt(GetPCSpeaker(),& quot;cristalquest",10); // AddJournalQuestEntry ("cristalquest", 20, GetPCSpeaker()); } Merci LEXICON _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Bella Lugosi Novice Messages: 17 |
Je crois que maintenant je vais regarder le lexicon d'un oeil plus attentif
Encore merci pour ton aide. |
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