comment faire pour le Delais ???

Répondre
Partager Rechercher
g simuler un combat dans une arene, et je voudrais ke le perdant pop kelke mn apres ca mort, mais si j'utilise le DelaisCommand ca ne compile pas comment faire ??

Code PHP:

void main()
{
effect eVis EffectVisualEffect(VFX_IMP_POLYMORPH);
location lSpawn GetLocation(OBJECT_SELF);

DelayCommand(3.0ApplyEffectToObject(DURATION_TYPE_INSTANTeVis,OBJECT_SELF));
CreateObject(OBJECT_TYPE_CREATURE,"combattant1",lSpawn);

ca marche bien sure sur l'effet de polymorph...
C'est normal : Createbject ne retourne pas un vide, mais un objet... DelayCommand n'accepte que des void/action en parametre


Il te faut creer une fonction
Code PHP:

void VoidCreateObject(string sResreflocation lLocation){CreateObject(sResRef,lLocation);return;} 

et faire le Delay la dessus...
Code PHP:

void VoidCreateObject(int nObjectType,string sResRef,location lLoc);

void main()
{
effect eVis EffectVisualEffect(VFX_IMP_POLYMORPH);
location lSpawn GetLocation(OBJECT_SELF);

DelayCommand(3.0ApplyEffectToObject(DURATION_TYPE_INSTANTeVis,OBJECT_SELF));
VoidCreateObject(OBJECT_TYPE_CREATURE,"combattant1",lSpawn);
}

void VoidCreateObject(int nObjectType,string sResRef,location lLoc)
{
CreateObject(nObjectType,sResRef,lLoc);
return;

Arrf, vi, j'ai pas mis le Delay...

Code PHP:

void VoidCreateObject(int nObjectType,string sResRef,location lLoc);

void main()
{
float fDelay 3.0;
effect eVis EffectVisualEffect(VFX_IMP_POLYMORPH);
location lSpawn GetLocation(OBJECT_SELF);

DelayCommand(fDelayApplyEffectToObject(DURATION_TYPE_INSTANTeVis,OBJECT_SELF));
DelayCommand(fDelay,VoidCreateObject(OBJECT_TYPE_CREATURE,"combattant1",lSpawn));
}

void VoidCreateObject(int nObjectType,string sResRef,location lLoc)
{
CreateObject(nObjectType,sResRef,lLoc);
return;

bien ca marche si on fixe une variable de 3, le probleme c ke je voudrias ke le respawn soit de 2mn et meme avec 10 (ce sont bien des sec non ?) le repop ne ce refait plus.

Je pense ke cela pourrait venir de la loc ki doit disparaitre, si tu pense ke je suis dans le vrais, comment arranger le script avec un WP pour le spawn ?
euh, g pas compris ce que tu dis, dsl, mais ca doit pas venir de la location, le DelayCommand conserve les variables (bien appris ma leçon pas vrai ? )
donc non, je vois, pas, c quoi le pb exactement ?
(soit pas si pressé d'abandonner )
Dans le contexte de ce script, oui.

float fDelay = 3.0; // fDelay = Delay de respawn en secondes

Mais je crois que c'est ce que soulignait Jedaï la fois passée à propos de la nécessité d'un objet valide lors de l'execution du Delay.
Bon ok alors si kelkun connait un script de respawn de mob k'il m'en fasse part, en attendant je v chercher un peu, merci pour ton aide mon cher moderateur...
Yoghurt et saucisse !!

Enfin, je ne suis pas fou, j'étais sûr qu'un monstre dont le cadavre a disparu ne pouvait pas se ressusciter lui-même (contrairement au baron de Münchausen, qui se tira d'une mauvaise posture par les cheveux)

Le problème est très simple à résoudre, il suffit de faire un AssignCommand( GetModule(), DelayCommand( 180.0, VoidCreateObject(blabla )) ) (attention l'ordre est important !! De plus, pas de fonction dans les paramètres du VoidCreateObject(), c'est pas prudent (en fait ça va tant qu'elle ne concerne pas le monstre disparu) ).
Remarque vu ce que tu veux faire, c'est à dire donner l'impression (avec le polymorph) que le cadavre se retransforme en monstre, tu as tout intérêt à utiliser SetIsDestroyable() et dans ce cas, un DelayCommand() seul suffit.
Répondre

Connectés sur ce fil

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