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 12:37:21


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Eldorane
Héros
Inscrit le: 18 Oct 2003
Messages: 298
Localisation: Moselle
Répondre en citant
Posté le : 19/04/2005 03:21:44 Sujet du message : PNJ fuit devant PJ

Salut,

Voici mon nouveau problème. Je voudrais qu'un PNJ s'enfuit lorsqu'il voit un PJ. Il a juste à aller à différents WP pour engager une course poursuite.
Le problème est que ça ne marche pas (évidement)
J'ai repris le script pour engager une conversation et je l'ai un peu modifié :
(dans le ONPerception)

NWScript :
object oSeen = GetLastPerceived();
object oObject = OBJECT_SELF;
string sDejaparler;
int iResult;

void main()
{

    iResult = GetLocalInt(OBJECT_SELF,"vueFantome");
    if (GetIsPC(oSeen)&&(iResult==0))
    {
        ActionMoveToObject(GetWaypointByTag( "fantome01" ), FALSE, 0.0 );
        ActionMoveToObject(GetWaypointByTag( "fantome02" ), FALSE, 0.0 );
        ActionMoveToObject(GetWaypointByTag( "fantome03" ), FALSE, 0.0 );
        ActionMoveToObject(GetWaypointByTag( "fantome04" ), FALSE, 0.0 );
        SetLocalInt(oObject, "vueFantome", 1);
    }
}
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.

_________________

Notre little site : Les Héros de la Nuit qui contient le lien vers la page de présentation de notre module, en cours de fabrication !

_________________
 
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 : 19/04/2005 13:01:03 Sujet du message :

Le problème c'est que tu utilises une variable locale pas encore existante dans ton test de fonction.Voilà ce que je proposerais :

NWScript :
object oSeen = GetLastPerceived();
object oObject = OBJECT_SELF;
string sDejaparler;
int iResult;

void main()
{
iResult = 0+GetLocalInt(OBJECT_SELF,"vueFantome");

if (GetIsPC(oSeen)&&(iResult==0)&&GetLastPerceptionSeen())
{
ActionMoveToObject(GetWaypointByTag( "fantome01" ), FALSE, 0.0 );
ActionMoveToObject(GetWaypointByTag( "fantome02" ), FALSE, 0.0 );
ActionMoveToObject(GetWaypointByTag( "fantome03" ), FALSE, 0.0 );
ActionMoveToObject(GetWaypointByTag( "fantome04" ), FALSE, 0.0 );
SetLocalInt(oObject, "vueFantome", 1);
}
}
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.


Ne fonctionne que pour un module joué en Solo par contre.

*va se faire payer par Eldorane Razz*
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Eldorane
Héros
Inscrit le: 18 Oct 2003
Messages: 298
Localisation: Moselle
Répondre en citant
Posté le : 19/04/2005 18:55:17 Sujet du message :


Citation :
*va se faire payer par Eldorane Razz*
Very Happy c'est vrai que tu m'aides énormément en ce moment, surtout depuis que notre scripteur attitré est en vacances ! Par ailleurs j'en ai finit avec la plupart des maps et j'attaque actuellement les animations et les quêtes, d'où mon besoins de tous ces scripts.
Domage que je n'ai pas le temps pour en apprendre le langage, le seul temps que j'ai de dispo est entièrement consacré au module...


Citation :
string sDejaparler; // à quoi sert cette variable ?
bonne question, elle était dans le script de base


Citation :
Ne fonctionne que pour un module joué en Solo par contre.
ah ? Que va t'il arriver en multi ?
_________________

Notre little site : Les Héros de la Nuit qui contient le lien vers la page de présentation de notre module, en cours de fabrication !

_________________
 
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 : 19/04/2005 19:06:27 Sujet du message :

Il ne fuira que la toute premiere personne qu'il voit et ensuite il ne fuira plus personne.Remarque tant mieux vu qu'on lui demande pas de reprendre son poste il aurait bien du mal à refaire le même parcours Very Happy
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Eldorane
Héros
Inscrit le: 18 Oct 2003
Messages: 298
Localisation: Moselle
Répondre en citant
Posté le : 19/04/2005 20:47:02 Sujet du message :

Exact, ce PNJ ne fera cette action qu'une fois !

MERCI une fois de plus ! Smile
_________________

Notre little site : Les Héros de la Nuit qui contient le lien vers la page de présentation de notre module, en cours de fabrication !

_________________
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Eldorane
Héros
Inscrit le: 18 Oct 2003
Messages: 298
Localisation: Moselle
Répondre en citant
Posté le : 27/04/2005 18:42:27 Sujet du message :

Bon j'ai testé et ça ne marche pas...
De plus je préfère finalement affecter ce script à un trigger pour être sûre de la réaction du PNJ.

Quelqu'un pourrait me faire la modif ? Smile
_________________

Notre little site : Les Héros de la Nuit qui contient le lien vers la page de présentation de notre module, en cours de fabrication !

_________________
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Eldorane
Héros
Inscrit le: 18 Oct 2003
Messages: 298
Localisation: Moselle
Répondre en citant
Posté le : 03/05/2005 12:43:33 Sujet du message :

Personne ? Crying or Very sad



Autre chose : il faudrait que ce PNJ n'apparraisse que la nuit sur la carte...
_________________

Notre little site : Les Héros de la Nuit qui contient le lien vers la page de présentation de notre module, en cours de fabrication !

_________________
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Wololo
Légende vivante
Inscrit le: 13 Déc 2002
Messages: 385
Répondre en citant
Posté le : 03/05/2005 13:01:19 Sujet du message :

NWScript :

void main()
{
object oPJ= GetEnteringObject();
object oPNJ= GetObjectByTag("TAG_DE_MON_PNJ");
int iResult;

iResult = 0+GetLocalInt(OBJECT_SELF,"vueFantome");

if (GetIsPC(oPJ)&&(iResult==0))
{
AssignCommand(oPNJ,ActionMoveToObject(GetWaypointByTag( "fantome01" ), FALSE, 0.0 ));
AssignCommand(oPNJ,ActionMoveToObject(GetWaypointByTag( "fantome02" ), FALSE, 0.0 ));
AssignCommand(oPNJ,ActionMoveToObject(GetWaypointByTag( "fantome03" ), FALSE, 0.0 ));
AssignCommand(oPNJ,ActionMoveToObject(GetWaypointByTag( "fantome04" ), FALSE, 0.0 ));
// on ne fait l'action qu'une seule fois
SetLocalInt(oPNJ, "vueFantome", 1);
}
}
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.


fait sans Aurora donc non testé, non compilé et non testé ..

tiens si tu veux dans le Sanctuaire, il y a un script de fuite de cerfs devant des PJs (fuite aléatoire ..)
_________________
vive les dumps et les livres !
Sanctuaire des Scripts
 
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 41.547ms