La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 22/09/2024 14:25:01


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Freeman.mc
Acolyte
Inscrit le: 30 Juil 2004
Messages: 23
Localisation: Monaco
Répondre en citant
Posté le : 15/10/2004 15:49:27 Sujet du message : PNJ es-tu là ?

Salut, je remet à contribution votre infinie sagesse... Razz

En fait voilà, je sais comment varier une discussion en fonction de la possession d'un objet ou non, mais comment faire pour vérifier si un PNJ (NPC) est présent ou pas avec le joueur lors de la discussion ???
En résumé, un PNJ commence avec le joueur dès le début, plus tard il aura la possibilité d'en avoir d'autres dans son équipe. Le fait est que plus loin dans le scénar une discussion importante aura lieu et là si le PNJ du départ est toujours présent il est censé intervenir dans la discussion, mais comment justement savoir s'il n'est pas mort ou renvoyé, il serait illogique qu'un mort prenne la parole Confused . J'ignore comment définir cette variable, si une âme charitable pouver m'aider, çà serait chouette Embarassed
_________________
Le voir c'est mourrir
l'entendre c'est qu'il est déjà trop tard !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 15/10/2004 17:55:34 Sujet du message :

J'ai fait ça dans mon module Boisperdu version 2.0 très bientôt en ligne... Je n'ai pas mon module sous la main car j'ai changé de PC entretemps mais le principe est de tester si le NPC est bien le henchman du joueur pour cela il faut faire un truc du genre dans une condition d'exécution de to, dialogue:

NWScript :
object oNPC = GetObjectByTag("Tag_du_NPC");
if GetIsMaster(oNPC)
  return TRUE;
return 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 vais essayer de retrouver exactement ce que j'ai fait... car je ne suis pas très sûr de la syntaxe mais dans l'idée c'est ç.
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
grosraoul
Ecuyer
Inscrit le: 10 Sep 2004
Messages: 60
Répondre en citant
Posté le : 15/10/2004 18:05:14 Sujet du message :

Je pense que GetIsMaster renvoi un objet, en l'occurence il faut que l'objet renvoyé soit le pj lui meme donc :

NWScript :

void main()
{
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC);
object oNPC = GetObjectByTag("Tag_du_NPC");

if (GetIsMaster(oNPC)==oPC)
  return TRUE;

return 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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Jaheira 007
Seigneur
Inscrit le: 24 Juin 2004
Messages: 223
Répondre en citant
Posté le : 15/10/2004 18:42:59 Sujet du message :

Hum... Moi aussi je me suis posée la question pour faire parler mes henchmen, et j'ai une solution simple qui fonctionne très bien sans avoir à faire appel à un script. je m'explique:

Bon je vais donner l'exemple d'une de mes discussions dans mon module ( pas fini encore ).
Quant le PJ entame la discussion avec le bourgmestre de la ville de Nashkel, celui ci se présente "Bienvenue mercenaires". Ensuite j'ai placé une ligne vide "Continuer" en guise de réponse.
Aprés ceci le pnj ( bourgmestre ) est sensé dire autrechose, mais j'en ai décidé autrement. C'est jaheira qui va prendre la parole "Salutation bourgmestre, c'est un plaisir de vous revoir" ( il suffit de séléctionner cette dernière phrase et de lui attribuer le TAG de Jaheira dans l'onglet approprié ).
Ensuite la discussion reprend son court normale.

Mais vous allez me dire: oui mais si Jaheira n'est pas présente dans le groupe la dicussion n'aboutie pas et se coupe!
Et bien non! Sous la phrase de Jaheira il suffit de mettre une phrase de rechange avec le TAG du bourgmetre et voilà le tour est joué.
_________________
La nature reprendra ses droits ici, aprés notre passage.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 16/10/2004 12:02:21 Sujet du message :

Voilà le script que j'ai mis dans la "condition d'exécution" du noeud de dialogue dédié au henchman en question :

NWScript :
int StartingConditional()
{
    object oSarana = GetObjectByTag("Tag_du_henchman");
    object oMaster = GetMaster(oSarana);
    // Si Sarana est embauche par le PJ
    if (GetIsPC(oMaster))
        return TRUE;
    return 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.

_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Freeman.mc
Acolyte
Inscrit le: 30 Juil 2004
Messages: 23
Localisation: Monaco
Répondre en citant
Posté le : 16/10/2004 13:18:26 Sujet du message :

Je vous remercie infiniment tous les trois, je testerai dès que possible vos trois solutions qui me vont droit au coeur Very Happy Vous me sortez d'un satané dilemme qui bloqué ma progression. Merci encore je vous tiendrai au courant du résultat, j'espère juste que le fait que le joueur est 2 ou 3 PNJ avec lui ne change rien au problème Confused

@+ Smile
_________________
Le voir c'est mourrir
l'entendre c'est qu'il est déjà trop tard !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Freeman.mc
Acolyte
Inscrit le: 30 Juil 2004
Messages: 23
Localisation: Monaco
Répondre en citant
Posté le : 19/10/2004 17:57:14 Sujet du message :

Bon ben voilà, juste pour dire que j'ai testé les différentes solutions, et c'est celle de Laxam qui à fonctionné. Celle de Jaheira était sympa sans l'utilisation de script, mais impossible de la faire fonctionnée, que le PNJ soit là ou pas, sa réplique apparaissait systématiquement. Mais c'est pas grave, merci encore à tout les trois pour vos réponses rapides Very Happy
_________________
Le voir c'est mourrir
l'entendre c'est qu'il est déjà trop tard !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Jaheira 007
Seigneur
Inscrit le: 24 Juin 2004
Messages: 223
Répondre en citant
Posté le : 19/10/2004 18:41:43 Sujet du message :

Tu dois placer la réplique du henchmen AU DESSUS de celle de base de ton pnj, et t'assurer que tu a mis le bon tag.
_________________
La nature reprendra ses droits ici, aprés notre passage.
 
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 43.043ms