La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/11/2024 22:41:35


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
ptolemee
Ecuyer
Inscrit le: 28 Oct 2003
Messages: 42
Répondre en citant
Posté le : 01/12/2003 17:59:32 Sujet du message : Action après la mort d'un monstre...

Voilà,

je souhaiterais qu'à la mort d'un monstre, un enfant sorte de sa cachette et vienne vers le NPC qui vient de tuer le Monstre.

je met cela dans le Ondeath du monstre.

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.


Avez-vous une idée ? Suis-je loin de la solution ?

merci
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Lavok
Légende vivante
Inscrit le: 22 Oct 2002
Messages: 434
Localisation: Sphère planaire
Répondre en citant
Posté le : 01/12/2003 18:16:55 Sujet du message :

Enlève les deux 'if'. Non seulement, ils ne servent à rien ici mais en plus, ils n'ont pas de {}.

La cachette de l'enfant est-elle une autre zone ? Ou apparaît-il ?
Si c'est un de ces deux cas, ton script n'y est pas adapté.

Sinon, tout est presque correct.

Disons qu'à ta place, j'aurais mis un GetFirstPC() au lieu d'un GetLastKiller() (il ne reprend pas toujours le joueur), mais bon... Sauf s'il s'agit d'un module multijoueur.

Et puis, il me semblerait plus logique que l'enfant vienne parler au pc en courant. Donc, de mettre un TRUE au lieu du FALSE dans le ActionMoveToObject().
_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
ptolemee
Ecuyer
Inscrit le: 28 Oct 2003
Messages: 42
Répondre en citant
Posté le : 03/12/2003 09:50:30 Sujet du message :

Merci pour tes conseils.

voici donc le code remanié

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.


pourtant rien ne change....en fait l'idée est de faire croire que tant que le loup n'est pas tué, le petit reste dans un recoin de la pièce. Une fois tué, il sort et vient remercier le PC.

Mais bon, il ne bouge pas le vilain..

merci

[Edit de Lendraste : utiliser de préférence la balise [nwscript] au lieu de [code] pour présenter les script. merci]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
k0rvet
Ecuyer
Inscrit le: 24 Nov 2003
Messages: 67
Répondre en citant
Posté le : 03/12/2003 12:39:14 Sujet du message :

Ca devrait donner un truc du genre (toujours dans le OnDeath du streum):

NWScript :

void main();
{
object oNPC = GetObjectByTag("TAG_DU_NPC");
// On stocke dans "oPC" le tueur du monstre.
object oPC = GetLastKiller();


if(GetIsPC(oPC) && !IsInConversation(oNPC))
{
  AssignCommand(oNPC, ClearAllActions());
  AssignCommand(oNPC, ActionMoveToObject(oPC, TRUE));
  AssignCommand(oNPC, ActionStartConversation(oPC));
}
}
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.

J'ai pas NWN sous le coude, mais y a pas de raison que ca marche pas. Laughing:

[edit]: Rectification du script suite à la remarque de YellowSubmarine
_________________
Moi j'dis ca, mais bon j'dis rien hein?
..:: Les Chroniques de la Terre du Milieu ::..
Dernière édition par k0rvet le 03/12/2003 17:02:28; édité 1 fois
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
yellow submarine
Grand Chevalier
Inscrit le: 24 Oct 2003
Messages: 143
Répondre en citant
Posté le : 03/12/2003 15:39:11 Sujet du message :

salut

le OBJECT_SELF de GetLastKiller(OBJECT_SELF);
est en trop

GetLastKiller();

suffit si c'est dans le OnDeath du monstre

amicalement
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
ptolemee
Ecuyer
Inscrit le: 28 Oct 2003
Messages: 42
Répondre en citant
Posté le : 03/12/2003 17:14:02 Sujet du message :

Merci pour votre aide, cela fonctionne maintenant mais qui pourrait me dire la différence entre le dernier script edité et mon premier car là je sèche un peu...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 03/12/2003 18:35:55 Sujet du message : Re: Action après la mort d'un monstre...


ptolemee a écrit :
NWScript :

//(...)
if (GetIsObjectValid(oNPC))
if (!IsInConversation(oNPC))
AssignCommand(oNPC, ClearAllActions());

//pas de ; apres
//pas de { avant le assignCommand

//(...)
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.

ptolemee a écrit :
NWScript :

//(...)
(GetIsObjectValid(oNPC));
(!IsInConversation(oNPC));


//(...)
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.

k0rvet a écrit :
NWScript :

//(...)
if(GetIsPC(oPC) && !IsInConversation(oNPC))

{
  AssignCommand(oNPC, ClearAllActions());
  AssignCommand(oNPC, ActionMoveToObject(oPC, TRUE));
  AssignCommand(oNPC, ActionStartConversation(oPC));
}
//les assignCommand sont entre {}

//(...)
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.
En gros ça doit se présenter comme ça :

NWScript :
if (quelque chose)
{
  Les actions à faire quand les condition du if sont vérifiés
}
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.


C'est pas évident à expliquer comme ça! Embarassed
J'espère avoir été clair... Cool
_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Montrer les messages depuis :
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


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 60.343ms