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:09:38


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 12/04/2005 21:25:17 Sujet du message : Le NPC ne veut pas bouger

Tout d'abord, rassurez vous avec un Pseudo pareil vous risquez de me voir souvent... Very Happy

Bien alors commencons :

Suite à une conversation, le NPC doit allez ouvrir une porte... Mais, malgrés les codes d'ici : Un PNJ doit aller ouvrir une porte


Ben mon NPC refuse de bouger, il reste sur place...

Et c'est génant, car sans l'aventure ne peut même pas débuter !!

Merci de m'éclairer
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Stan
Grand Chevalier
Inscrit le: 07 Avr 2005
Messages: 126
Répondre en citant
Posté le : 12/04/2005 21:48:38 Sujet du message :

Tu l'as bien mis dans action conséquente de ton dialogue ?

T'as bien changé les tag pour mettre les tiens à la place ?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 12/04/2005 21:54:45 Sujet du message :

Oui, j'ai bien mis une action en conséquence.

Et je pense avoir changé les tags.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 12/04/2005 23:48:36 Sujet du message :

Hum, hum...

As-tu vérifié dans ses propriétés, onglet caractéristiques... en bas à droite... déplacement (par défaut, immobile, rapide...etc) ?
_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 13/04/2005 09:12:29 Sujet du message :

Et bien enfait, le problème c'est que le NPC se déplace automatiquement pour allez parler au PJ (avec OnPerceive ou un truc dans goût là)

Donc là pas de problème le dialogue s'installe.

Suite à quoi le PC paye quelque Po et le NPC doit alors lui ouvrir une porte.

Donc en action conséquente du payement j'ai mis le sript de la perte de Po (qui marche lui) et j'ai essayé de mettre le script de déplacement et d'ouverture de la porte (voir le lien de mon premier post : je me suis inspiré de ce script)

MAis le NPC refuse de bouger...

Voici donc le script ajouté dans Action conséquente suite à la réponse dans le dialogue.

NWScript :
{

object oDoor ;
//on dfinit porte
oDoor=GetNearestObjectByTag("oPorteDock") ;

object oNPC = GetNearestObjectByTag("FdlC");
// stop les actions en cours du Npc
AssignCommand(oNPC, ClearAllActions());

AssignCommand(oNPC, ActionMoveToLocation(lLoc, FALSE));
//on ouvre la porte
AssignCommand(oNPC,ActionOpenDoor(oDoor));


}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
OwenF
Novice
Inscrit le: 05 Mar 2005
Messages: 11
Répondre en citant
Posté le : 13/04/2005 10:48:40 Sujet du message :

Coucou,

Le Newb a écrit :
Et bien enfait, le problème c'est que le NPC se déplace automatiquement pour allez parler au PJ (avec OnPerceive ou un truc dans goût là)
J'ai eu le meme probleme. Et cela provient du Onperceive.
Pour une raison mysterieuse (ce qui veut dire que je n'ai pas la soluce), quand un dialogue est déclenché par le onperceive d'un pnj, certains scripts ne passent pas (dans mon cas une teleportation), alors que si on lui cause normalement, ca passe.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 13/04/2005 10:52:58 Sujet du message :


Citation :
J'ai eu le meme probleme. Et cela provient du Onperceive.
Intéressant, Bon alors je laisser tomber le Onperceive et mettre Trigger générique... Le problème c'est que je n'ai aucune idée du code à mettre àlors (pour que le dialogue débute...)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Stan
Grand Chevalier
Inscrit le: 07 Avr 2005
Messages: 126
Répondre en citant
Posté le : 13/04/2005 11:04:50 Sujet du message :

NWScript :

//lLoc = GetLocation (oDoor);
AssignCommand(oNPC, ActionMoveToLocation(lLoc, FALSE));
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.



je vois le lLoc en assertion, il est bien en code dans ton script et pas en assertion ? (pas en vert quoi)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
OwenF
Novice
Inscrit le: 05 Mar 2005
Messages: 11
Répondre en citant
Posté le : 13/04/2005 11:09:02 Sujet du message :

Re,

Le Newb a écrit :
je n'ai aucune idée du code à mettre àlors (pour que le dialogue débute...)
Pour un trigger ou une zone, a priori un truc comme ca :

NWScript :
//Dans le OnEnter
void main()
{

object oPC = GetEnteringObject();

if (!GetIsPC(oPC)) return;

//Remplacer "TagNPC" par le TAG du PNJ
object oTarget;
oTarget = GetObjectByTag("TagNPC");

//Remplacer "Dialogue" par le dialogue a lancer
AssignCommand(oTarget, ActionStartConversation(oPC, "Dialogue"));

}
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.


Par contre, pas tester si cela a les memes effets nefastes sur les scripts du dialogue quand celui-ci est lancé indirectement (ici un trigger au lieu du onperceive)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 13/04/2005 11:20:50 Sujet du message :

@Stan :

A prioris, lLoc est bien en code, j'ai du me gourré (encore une fois Embarassed ) en recopiant.
(je ne peux pas vérifié, je suis au boulot Very Happy )


@OwenF :

Ok, bien recu, j'essayerais çà ce soir ou demain, enfin quand j'aurais le temps...

je vous tiens informé.


A la limite, je met le NPC à côté de la porte fermé et lorsque le pj tente d'ouvrir la porte en cliquant dessus, le NPC interpelle le PC.

MAis je vais quand même essayer le Trigger.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 13/04/2005 19:54:39 Sujet du message :

Et bien messieurs, avec le Trigger ça marche !!!

Mon Pirate fait payer la taxe et va ouvrir la porte.

Néanmoins, si vous le voulez bien, j'aimerais deux petits élement supplémentaire :

- Un moyen de faire en sorte qu'une fois la taxe payer il ne puisse plus la repayer ( Qu'un nouveau dialogue s'affiche)
- Le script basique pour ordonner à un NPC de bouger vers un lieu particulier. (bon ça je devrais trouver facilement mais non (j'ai sans doute mal chercher et n attendant une réponse je vais rechercher une nouvelle fois)

Merci encore
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Stan
Grand Chevalier
Inscrit le: 07 Avr 2005
Messages: 126
Répondre en citant
Posté le : 13/04/2005 20:04:56 Sujet du message :

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.


Ca peut toujours être valable pour faire déplacer un NPC vers une location Very Happy


Pour la taxe à pas repayer, il faut stocker une variable locale sur le PJ, enfin c'est ce que j'aurai fais Confused
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le Newb
Novice
Inscrit le: 12 Avr 2005
Messages: 15
Répondre en citant
Posté le : 13/04/2005 20:12:04 Sujet du message :

Surprised Ah ba oui suis-je bête...

Sinon pour
Citation :
Ca peut toujours être valable pour faire déplacer un NPC vers une location Very Happy
Oui, mais je suis un (voir mon pseudo) en Script (d'où ma présence ici...)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé 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 36.422ms