JeuxOnLineForumsPlusConnectés : 727 (sites) | 1294 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Restriction de race dans un script ou le PNJ engage la conversation tout seul... RSS
   
Répondre
Partager Outils Rechercher
Avatar de Mel Ethybem
Mel Ethybem
Roi
 
Avatar de Mel Ethybem
 

Restriction de race dans un script ou le PNJ engage la conversation tout seul...

Voici mon script actuel, il est correct :
Code PHP:
void main()
{
   
object oNPC GetObjectByTag("TAG_DU_PNJ");
   
object oPC GetEnteringObject();
   if(
GetIsPC(oPC) && GetLocalInt(oPC,"Dlg_Init_TAG_DU_PNJ" GetTag(oNPC)) == FALSE && !IsInConversation(oNPC))
   {
      
AssignCommand(oPC,ClearAllActions());
      
AssignCommand(oNPC,ClearAllActions());
      
AssignCommand(oNPC,ActionMoveToObject(oPC));
      
AssignCommand(oNPC,ActionStartConversation(oPC));
   }

Cela fait que le PNJ, au moment où le PJ rentre dans un trigger, engage la conversation tout seul. Et bien, je voudrais que cela n'arrive que si le PJ est un nain. En d'autres mots, le PNJ n'accosterais le PJ que si ce dernier est un nain. Quel ligne de code dois-je ajouter pour cela ?
Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
un test avec "GetRacialType()"
genre
Code PHP:
void main()
{
   
object oNPC GetObjectByTag("TAG_DU_PNJ");
   
object oPC GetEnteringObject();
   
int nRace GetRacialType(oPC);
   if(
GetIsPC(oPC) && GetLocalInt(oPC,"Dlg_Init_TAG_DU_PNJ" GetTag(oNPC)) == FALSE && !IsInConversation(oNPC) && (nRace ==RACIAL_TYPE_DWARF)
   {
      
AssignCommand(oPC,ClearAllActions());
      
AssignCommand(oNPC,ClearAllActions());
      
AssignCommand(oNPC,ActionMoveToObject(oPC));
      
AssignCommand(oNPC,ActionStartConversation(oPC));
   }

pas testé (edit) mais corrigé
Lien direct vers le message - Vieux
Avatar de Mel Ethybem
Mel Ethybem
Roi
 
Avatar de Mel Ethybem
 
Quel nom ?
Get racial type... je ne sais pas si ça fonctionne. Mais de toute façon, je ne connais pas l'équivalent du nom des races dans le langage des scripts ! Est-ce "Dwarf" pour Nain ? Aidez-moi !
Lien direct vers le message - Vieux
Avatar de grenwald
grenwald
Roi
 
Avatar de grenwald
 
Sisi, ça doit fonctionner avec cette fonction
Pour info (tiré du Lexicon, et traduit) :
Code PHP:
GetRacialType (object oCreature)
 => 
Donne la race de la créature 
Et effectivement, "Dwarf" c'est bien le nom anglais pour "Nain". Et après tout, le langage du script utilise pour l'essentiel des termes anglais

pour finir, la fonction que t'a donné Reyan correspond bien a ce que tu demandais

Sans vouloir te vexer, un tout petit peu de recherche (et un essai) t'aurais permis de voir que c'était que tu bonheur comme script
Lien direct vers le message - Vieux
Avatar de Mel Ethybem
Mel Ethybem
Roi
 
Avatar de Mel Ethybem
 
suis une quiche
Oui, mais le nom "Dwarf" je le tape ou précisément dans le script ??
Lien direct vers le message - Vieux
Avatar de Mel Ethybem
Mel Ethybem
Roi
 
Avatar de Mel Ethybem
 
Exclamation
Code PHP:
   if(GetIsPC(oPC) && GetLocalInt(oPC,"Dlg_Init_TAG_DU_PNJ" GetTag(oNPC)) == FALSE && !IsInConversation(oNPC) && (nRace ==RACIAL_TYPE_DWARF]) 
-> ERREUR : UNKNOWN STATE IN COMPILER

Marche pas !

le script en entier :
Code PHP:
void main()
{
   
object oNPC GetObjectByTag("Semli");
   
object oPC GetEnteringObject();
   
int nRace GetRacialType(oPC);
   if(
GetIsPC(oPC) && GetLocalInt(oPC,"Dlg_Init_Semli" GetTag(oNPC)) == FALSE && !IsInConversation(oNPC) && (nRace ==RACIAL_TYPE_DWARF)
   {
      
AssignCommand(oPC,ClearAllActions());
      
AssignCommand(oNPC,ClearAllActions());
      
AssignCommand(oNPC,ActionMoveToObject(oPC));
      
AssignCommand(oNPC,ActionStartConversation(oPC));
   }

Lien direct vers le message - Vieux
Avatar de Reyan
Reyan [L.D.D]
Roi / Reine
 
Avatar de Reyan
 
rooo, c'est un bête ] en trop
je corrige
et les constante, les fameux "RACIAL_TYPE_*" ba on les trouve en cliquant sur l'onglet "constante", tu met dans le filtre "racial_type", info que te donne la description de la fonction, et t'as toute tes races sous les yeux
il est qd même achement bien fait aurora
enfin moi je trouve ^_^

la version corrigée :

Code PHP:
void main()
{
   
object oNPC GetObjectByTag("TAG_DU_PNJ");
   
object oPC GetEnteringObject();
   
int nRace GetRacialType(oPC);
   if((
GetIsPC(oPC)) && (GetLocalInt(oPC,"Dlg_Init_TAG_DU_PNJ" GetTag(oNPC)) == FALSE) && !(IsInConversation(oNPC)) && (nRace ==RACIAL_TYPE_DWARF))
   {
      
AssignCommand(oPC,ClearAllActions());
      
AssignCommand(oNPC,ClearAllActions());
      
AssignCommand(oNPC,ActionMoveToObject(oPC));
      
AssignCommand(oNPC,ActionStartConversation(oPC));
   }

Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Restriction de race dans un script ou le PNJ engage la conversation tout seul...
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 18h57.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite