Problème Waypoints

Répondre
Partager Rechercher
Bonjour à tous

J'ai quelques petits problèmes de waypoints.

J'ai fait des recherches avec les mots waypoint ou waypoints, mais je n'ai rien trouvé qui corresponde a mon problème, qui est basique de chez basique.

Voila le schéma: Une ville, deux gardes, deux chiens de gardes.
Pour une facilité de compréhension je vais en parler par groupe : groupe 1 (1 chien+ 1 garde) et groupe 2 (les 2 autres)

Les gardes doivent faire leur chemin de ronde a travers la ville, suivis de près par leur chien.

J'ai donc placé des waypoints tout simplèment pour chaque chien et chaque garde. J'ai réglé leur vitesse de déplacèment à tous à normal.

1 er problème
Le groupe 1 part un peu avant le groupe 2. Cela fait un effet très étrange et pas du tout naturel. Comment faire pour que:
-soit les 2 groupes partent en même temps
-soit le groupe 1 parte bien avant que le groupe 2

2 eme problème
Dans chaque groupe, le chien et le garde sont loins l'un de l'autre. y a t'il un script qui dirait au chien de suivre son maître? (le chien n'aurait alors pas de wp).

3 eme problème
Si j'essaye de parler au garde (ou au chien, même si c'est une drôle d'idée) il s'arrête et ne reprendra pas son chemin de ronde. Comment remédier a cela?

voila, il me semble avoir énuméré tous mes problèmes ^^

je vous remercie d'avance de bien vouloir m'aider

@+
1 ) Mettre le 2ème groupe de l'autre côté de la ville : si il s'agit bien d'un circuit ( utilisant RunCircuit() ), les deux groupes suivront le même et ne se rencontreront jamais, non ?

2 ) ActionForceFollowObject( object oFollow, float fDistance = 0.0f );

3 ) Lui mettre un dialogue à une ligne du genre "Wooof" pour le chien et "Je dois continuer ma ronde" pour le garde (ou l'inverse...), normalement, les scripts de fin de conversation par défaut relanceront un WalkWayPoints().
merci de ta réponse. Je suis aller voir et j'ai mis les scripts dans les onspawn du chien et du garde.

il reste un problème. Juste les gardes bougent.


Pourtant, les scripts sont bien compilés.

voici mes scripts:

dans le onspawn du chien:

Code PHP:

void main()
{
//les chiens suivent le pnj
    
object oCreature GetObjectByTag("garde1");
    
AssignCommand(OBJECT_SELFActionForceFollowObject(oCreature,5.0));


dans celui du pnj:

Code PHP:

void main()
{
//creation des chiens
    
int i;
    for(
01i++){
        
int iObjectType OBJECT_TYPE_CREATURE;
        
//atention, ici on utilise le ResRef et non pas le Tag
        
string sCreature "chien004";
        
location lLoc GetLocation(OBJECT_SELF);
        
int bUseAppearAnimation TRUE;
        
CreateObject(iObjectTypesCreaturelLocbUseAppearAnimation);
    }

Le garde s'appelle tadoss le garde et son tag est garde1
Le chien s'appelle chien3 et son tag est chien3


je pense que le problème vient du resref du chien... en effet, je ne sait pas ce que c'est!

voila
un Resref, c'est le nom de la créature ds la "palette", autrement dit, il UNIQUE, tjrs, pas comme un TAg
c'est TJRS ce qu'on utilise pour créer un truc après grace aux nouvelle fonction, on peut changer TAg et nom, mais le resref, non, même ds le toolset c galère à changer ....
pour l'avoir, tu fais "éditer" et il est dans "avancé"
Vi tout à fait, et je répete au cas ou au niveau des resref comme on reexplique ce qu'est un resref. Si ton resref n'est pas correcte pour une créature cela va te créer automatiquement un blaireau car c'est le resref par défaut.
j'ai testé, mais il reste encore un problème

mais bon, on avance! ^^

en fait, mon pnj ne se décide a suivre ses petits waypoints seulement lorsque je lui parle... ce qui est plutot embetant. Sinon le chien apparait bien, suis bien son maitre. seul problème, pour qu'il n y est pas d'effet de saccade (car le chient cours derrière son maitre) j'ai du regler se vitesse de déplacement a lent. Ce qui fait qu'il cours sans saccade, mais qu'on la l'impression qu'il court comme si il etait sur la lune!

voili vouilu
tu veux dire un ActionForceMoveToObject sur le garde? ou sur les waypoints?

et sinon, t'as une idée de pourquoi les gardes ne veulent pas avancer à leurs waypoints tout seuls? et partent seulement quand je leur parle?
si je fait ca j'ai un pb de compilation

ca donne ca:

Code PHP:

void main()
{
//les chiens suivent le pnj
    
object oCreature GetObjectByTag("garde1");
    
AssignCommand(OBJECT_SELF,  ActionForceMoveToObject(oCreature,1.0));


je sait pas pourquoi mais je sens que c'est encore une erreur toute simple ^^
Citation :
Provient du message de kaliyouga
tu veux dire un ActionForceMoveToObject sur le garde? ou sur les waypoints?

et sinon, t'as une idée de pourquoi les gardes ne veulent pas avancer à leurs waypoints tout seuls? et partent seulement quand je leur parle?

tu as vérifié si dans leurs onspawn , ils ont la fonction WalkWaypoint();?

car s'ils ne l'ont pas, ils n'avanceront pas quand ils seront spawnés mais par contre tu peux relancer la fonction avec l'action de lui parler .
Donc vérifie si tu possède bien cette fonction dans son Onspawn.
Non je parlais du ActionForceMoveToObject sur tes chiens de garde. Quand tu utilise une fonction, il y a une truc qui très bien pour pas te planter c'est de la rechercher dans la liste des fonction de l'éditeur et de cliquer dessus pour en avoir une description. Ca donne ça pour cette fonction.
Code PHP:

Void ActionForceMoveToObject (object oMoveToint bRun=FALSEfloat fRange=1.0ffloat fTimeout=30.0f
Si tu veux que ça compile faut écrire ta fonction comme ça
Code PHP:

void main()
{
//les chiens suivent le pnj
    
object oCreature GetObjectByTag("garde1");
    
AssignCommand(OBJECT_SELF,  ActionForceMoveToObject(oCreatureFALSE1.0f));

Jaha Effect
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés