La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/09/2024 00:27:26


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Heldar
Seigneur
Inscrit le: 09 Sep 2004
Messages: 169
Localisation: France
Répondre en citant
Posté le : 25/09/2004 08:59:46 Sujet du message : Arrestation

Bonjour,
mon problème est le suivant:
je ne sais pas comment faire pour que quand un PJ tue un PNJ qui est neutre avec lui, les PNJ de la même faction ne l'attaque pas mais les PNJ de la faction gardes fonce sur lui pour ouvrir un dialogue.merci d'avance pour vos réponses.
_________________
Heldar qui tue tous les monstres du soir.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Archéops
Ecuyer
Inscrit le: 03 Mai 2004
Messages: 55
Répondre en citant
Posté le : 25/09/2004 21:34:39 Sujet du message :

Salut,

Commençons par le plus simple, pour ton histoire de faction, il faut aller dans l'éditeur de factions, la il y a une petite case à cocher (qui est cochée par défaut) qui s'intitule effet global.. Il suffit de la décocher et les PNJ de la même faction que le PNJ qui vient de mourrir ne deviendront pas hostiles envers le PJ.
Pour ce qui est du garde, je n'est pas encore bien réfléchis, mais déjà j'aimerai savoir si il faut qu'un garde et une seul fonce sur le PJ, si il faut que le garde ait vu l'aggression ou si le garde peut apparaître dés la mort du pnj (la solution la plus facile) ?? Enfin je cherche un peu et je t'en reparle...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Heldar
Seigneur
Inscrit le: 09 Sep 2004
Messages: 169
Localisation: France
Répondre en citant
Posté le : 26/09/2004 00:05:00 Sujet du message :

Il faut que le garde ai vu l'agression
_________________
Heldar qui tue tous les monstres du soir.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Archéops
Ecuyer
Inscrit le: 03 Mai 2004
Messages: 55
Répondre en citant
Posté le : 26/09/2004 08:44:08 Sujet du message :

Re,
voila j'ai fait deux scripts, l'un à mettre dans OnDeath des PNJ , l'autre à mettre dans le OnUserDefined des Gardes, les voilà :

Dans le OnDeath des pnj
NWScript :

////script a mettre dans OnDeath des monstres
void main()
{

  object oPC=GetLastKiller();
  string sName=GetPCPlayerName(oPC);
  object oGarde=GetNearestObjectByTag("garde",oPC,1);
  event eArrestation=EventUserDefined(0022);
  /// condition : si le joueur est vu ou entendu
  if (GetObjectHeard(OBJECT_SELF,oGarde)||GetObjectSeen(OBJECT_SELF,oGarde))
  {
  SignalEvent(oGarde,eArrestation);
  SetLocalString(oGarde,"wanted",sName);
  }
  else
  {
  }
}
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.


et l'autre dans le OnUserDefined des gardes :
NWScript :


////////Fonction qui permet de recuperer le joueur qui a tue le pnj
object Wantedplayer()
{
object oPC=GetFirstPC();
string sMeurtrier=GetLocalString(OBJECT_SELF,"wanted");
    while (GetIsObjectValid(oPC))
    {
      if (GetPCPlayerName(oPC)==sMeurtrier)
      {
      break;
      }
      else
      {
      }
    oPC=GetNextPC();
    }
    return oPC;
}
//////
int iEvent=GetUserDefinedEventNumber();
void main()
{
  switch (iEvent)
  {
    case 0022:
    {

    object oCriminel=Wantedplayer();
    AssignCommand(oCriminel,ActionDoCommand(ClearAllActions(TRUE)));
    AssignCommand(OBJECT_SELF,ActionForceMoveToObject(oCriminel,TRUE,1.2,30.0));
    AssignCommand(OBJECT_SELF,ActionStartConversation(oCriminel,"dialogue",FALSE,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.


Voilà, ça devrai marcher. Comme tu peux le voir le gardes fonce sur le PJ s'il a entendu ou vu le meutre. Si tu veux que le garde ne fonce sur le pnj que s'il a vu le crime, il faut enlever la fonction GetHeard().
Au fait je sais pas le truc pour les factions marche chez toi, mais chez moi ça dépend du module et des options de jeu...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Heldar
Seigneur
Inscrit le: 09 Sep 2004
Messages: 169
Localisation: France
Répondre en citant
Posté le : 26/09/2004 12:53:31 Sujet du message :

Merci, je vais essayer et je te dirai si ça marche ou pas.
_________________
Heldar qui tue tous les monstres du soir.
 
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 31.953ms