Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

ActionWait, ca foire ou bien?

Par fauxninja le 24/12/2002 à 20:25:07 (#2872789)

j'aimerai mettre un lapsus de tems, (600 secondes) avant une atak declanchée par un levier.
ke met ActionWait(600.0); avant tou le reste, mais ca n'aten rien du tout..
que faire..
je peu pas utiliser delaycomand, car les creation de monstres ca renvoi un objet, pas une action...

aidez moi s'il vous plait

Par eMRaistlin le 24/12/2002 à 23:27:02 (#2873524)

Bein, la, sans autre elements, je sais pas trop, mais tu parle d'un levier qui declenche une attaque (donc, un script externe a la creature qui attaque.

Je suppose que tu as bien mis un AssignCommand avant ?

De plus, il faut faire en sorte que tout ce que tu utilise dans ton script soit sous ActionDoCommand() apres, afin que tu utilise la pile d'action dans tout tes scripts.

Enfin, derniere verification : Nettoyer les ClearAllActions() parasites qui pourraient eventuellement trainer dans le OnCombatRoundEnd de la creature, dans son OnHeartBeat et dans son OnSpawn et OnPerception... histoire d'etre sur...

Par fauxninja le 25/12/2002 à 12:50:43 (#2875571)

voila:


ActionWait(600.0);
location orc=GetLocation(GetObjectByTag("orcici"));
CreateObject(OBJECT_TYPE_CREATURE, "orcpilleur002", orc, FALSE);

ca n'aten pas 10 minutes avant de faire respawner l'orc....

Par eMRaistlin le 25/12/2002 à 21:05:38 (#2877917)

Normal : CreateObject est une declaration d'objet... il te faudrait le meme mais en void.


Fais une recherche sur le forum avec les parametres VoidCreateObject

Par Jedaï le 25/12/2002 à 21:13:31 (#2877956)

Je rappelle encore une fois que ActionWait() n'a aucun effet sur l'exécution d'un script : il s'agit simplement d'une action tout comme ActionSit(), elle s'ajoute à la fin de la file d'actions de celui qui appelle cette fonction et correspond pour ce perso à l'action : "ne rien faire pendant n sec".:(

Ce sujet a souvent été abordé sur le forum et de nombreuses solutions et explications ont été donnés. D'ailleurs ça serait bien de rajouter l'une d'entre elles aux persistants : eM , toi qui est modo, tu pourrais effectuer ce choix ? :merci: :ange:

Par fauxninja le 26/12/2002 à 3:57:18 (#2879854)

et donc c ou pour faire attendre 10 minutes avant de balancer la sauce?

Par eMRaistlin le 26/12/2002 à 4:53:17 (#2879941)

@Jedaï : Je sais, vi, faut que je m'y mette... mais c'est que j'ai une actualite chargée...


@FauxNinja :

Fais une recherche sur le forum avec les parametres VoidCreateObject


Si tu as pas envie de chercher, moi, j'ai pas envie de repondre...

Par coolstar le 26/12/2002 à 5:52:05 (#2879998)

T'es bien dur eMR! :doute:


Bôah... j'm'y colle alors fauxninja, parce que si je ne me trompe pas c pas si simple à trouver... si c bien ça que tu veux... :D


/* Script de Respawn "avec Délais"...
A mettre dans le OnDeath de la Créature : */

// Nécessite de "Transformer" de façon "Simulée" 'object CreateObject' en 'void RespawnObject'...
// Le plus simple étant de reproduire à l'identique la "Présentation" des 'Variables' (cf. 'Aide').
void RespawnObject(int nObjectType, string sTemplate, location lLocation, int bUseAppearAnimation=FALSE)
{
CreateObject(nObjectType, sTemplate, lLocation, bUseAppearAnimation);
}


////////////////////////////////////////////////////////////////////////////////

// Partie effective du Script dans laquelle est inséré le 'void RespawnObject'...
void main()
{
object oActionSubject = GetModule(); // Cible du Délais
float fSeconds = 6.0; // Durée en Secondes

object oObject = OBJECT_SELF; // La Créature
int nObjectType = GetObjectType(oObject); // Son propre 'Type' (par défaut)
string sTemplate = GetResRef(oObject); // Ses propres 'ResRef' "du Blueprint" (par défaut)
location lLocation = GetLocation(oObject); // Sa propre 'Location' "à sa mort" (par défaut)

// Application de la Durée par le biais de l'AssignCommand sur le 'void RespawnObject' :
AssignCommand(oActionSubject, DelayCommand(fSeconds, RespawnObject(nObjectType, sTemplate, lLocation)));
}



;)

Par eMRaistlin le 26/12/2002 à 14:29:42 (#2881846)

@Coolstar :
Je suis dur parceque je veux bien comprendre qu'pres lui avoir donné les clefs pour trouver, il n'y arrive pas... ca je peut le comprendre.

Mais il n'as de toute evidence pas lancé la recherche, et a poste directement. J'aime bien aider les gens, j'aime pas faire leur taff...

Donne un poisson a un homme, il mangera un jour...
Apprends lui a pêcher, il mangera toujours...

Par coolstar le 26/12/2002 à 20:30:08 (#2884067)

C pas grave eMR... T'es plutôt Kool sinon... ;)


Mais, disons que c'est vraiment pas simple à trouver ce genre de truc... on sait jamais par quel bout les prendre
(j'me rappelle bien moi jadis!)... :D



:rolleyes:

Par Jaha Effect le 26/12/2002 à 20:48:13 (#2884184)

Bha comme quoi il suffit de s'y mettre. :D
L'important est d'étudier comment sont construit les codes que l'on croise, commencer à en faire des simples, repérer quel problèmes on rencontre. Il suffit d'être un peu observateur et les notions de scriptage viennent naturellement.
Et en définive on tombe souvent sur les mêmes cas de figure et beaucoup de scriptes que l'ont fait peuvent être adapté facilement pour être utilisé dans d'autres scriptes.
Le tout est d'analyser et pas copier/coller parce que c'est déjà tout fait.

Jaha Effect :D

Par coolstar le 26/12/2002 à 21:41:06 (#2884526)

C'est quoi tes antécédents en Langage Jaha?? :D

Par Jaha Effect le 26/12/2002 à 21:55:18 (#2884612)

bha pas grand chose en définitive, le vieux basic des familles, un peu de C++, un petit poil d'assembleur (tout petit le poil) mais tout ça très sommairement, Sinon programmation ISO (programmation de machine à commande numérique, là ça va, je maitrise :) )
C'est un loisir pour moi, j'ai rien d'un informaticien et beaucoup l'auront remarqué :D

Jaha Effect :D

Par coolstar le 26/12/2002 à 22:20:40 (#2884734)

Ha? Je crois que ça suffit déjà pour faire la différence face au néant nb du Langage, comme dirait Jedaï, non??? ;)

Par Jaha Effect le 26/12/2002 à 23:20:06 (#2885032)

Je suis autodidacte avec toute les lacunes que ça implique, ce qui veux dire que j'en suis passé aussi par ce stade ou tu sais rien et ou tu passe un temps fou pour assimiler ce que tu trouve évident au bout d'un peu de pratique.
Suffit d'avoir un peu de logique et d'observation :D

Jaha Effect :D

Par coolstar le 26/12/2002 à 23:30:17 (#2885100)

:D

JOL Archives 1.0.1
@ JOL / JeuxOnLine