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

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

évènement "onHeartBeat"

Par Daynos le 22/5/2002 à 21:35:14 (#1509152)

Ca correspond à quoi cet évènement "onHeartBeat" ? Par ce que onExit, onAttack etc., je vois, mais onHeartBeat ? Je suppose qu'il ne faut pas s'arrêter à la traduction littérale...

Par Elmo le 22/5/2002 à 21:58:08 (#1509351)

ptet quand il faut fuir? perso je vois pas du tout

Par Caepolla le 23/5/2002 à 7:20:42 (#1511277)

Ca veut dire : "à chaque battement de coeur".

C'est la plus gourmande, de très loin, de toutes les possibilités d'appel de script : à chaque round, le script est exécuté, c'est-à-dire toutes les 7 secondes.

//edit : j'ai eu un doute sur le coup. Oui, à la réflexion, il me semble bien que le round dure 6 secondes. ;)

Par tonton le grognon le 23/5/2002 à 8:46:21 (#1511523)

la traduction exacte dans le contexte D&D serait "à chaque round" et c'est 6 secondes non ? ...

Par Guile Thewise le 23/5/2002 à 11:17:10 (#1512212)

tout à fait, un round c 6 secondes, pas plus, pas moins ;)

Par Caepolla le 23/5/2002 à 11:30:17 (#1512273)

Pour Tonton : OnHeartBeat, le nom se comprend (plutôt que EveryRound) car c'est un appel de scripts pour le personnage. La liste des cases sont la listes des événements qui arrivent à un personnage et déclechent donc un script : de la même façon que OnAttack déclenche le script associé quand le personnage est attaqué, OnHeartBeat déclenche le script associé pour le personnage à sa pulsation cardiaque (oui, un pouls avec une pulsation toutes les 6 secondes, ce n'est pas un nerveux :p).

Par Guile Thewise le 23/5/2002 à 11:52:42 (#1512389)

ben faut prendre son temps, non ?

Par tonton le grognon le 23/5/2002 à 13:49:00 (#1513158)

ouep c'est pour ca que j'ai precisé "dans le contexte D&D" ca correspond à " a chaque round"...

Par Daynos le 27/5/2002 à 22:38:44 (#1539432)

J'ai trouvé ça. Apparemment c'est le "onHeartBeat" par défaut.

Voyons voir ce que ça peut faire...


//::///////////////////////////////////////////////
//:: Default On Heartbeat
//:: NW_C2_DEFAULT1
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
This script will have people perform default
animations.
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: Nov 23, 2001
//:://////////////////////////////////////////////
#include "NW_I0_GENERIC"

void main()
{
if(GetSpawnInCondition(NW_FLAG_FAST_BUFF_ENEMY))
{
SetSpawnInCondition(NW_FLAG_FAST_BUFF_ENEMY, FALSE);
if(TalentAdvancedBuff(40.0))
{
return;
}
}

if(GetSpawnInCondition(NW_FLAG_DAY_NIGHT_POSTING))
{
int nDay = FALSE;
if(GetIsDay() || GetIsDawn())
{
nDay = TRUE;
}
if(GetLocalInt(OBJECT_SELF, "NW_GENERIC_DAY_NIGHT") != nDay)
{
if(nDay == TRUE)
{
SetLocalInt(OBJECT_SELF, "NW_GENERIC_DAY_NIGHT", TRUE);
}
else
{
SetLocalInt(OBJECT_SELF, "NW_GENERIC_DAY_NIGHT", FALSE);
}
WalkWayPoints();
}
}

if(!GetHasEffect(EFFECT_TYPE_SLEEP))
{
if(!GetIsObjectValid(GetAttemptedAttackTarget()) && !GetIsObjectValid(GetAttemptedSpellTarget()))
{
if(!GetIsObjectValid(GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, OBJECT_SELF, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN)))
{
if(!GetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL) && !IsInConversation(OBJECT_SELF))
{
if(GetSpawnInCondition(NW_FLAG_AMBIENT_ANIMATIONS) || GetSpawnInCondition(NW_FLAG_AMBIENT_ANIMATIONS_AVIAN))
{
PlayMobileAmbientAnimations();
}
else if(GetIsEncounterCreature() &&
!GetIsObjectValid(GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, OBJECT_SELF, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN)))
{
PlayMobileAmbientAnimations();
}
else if(GetSpawnInCondition(NW_FLAG_IMMOBILE_AMBIENT_ANIMATIONS) &&
!GetIsObjectValid(GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, OBJECT_SELF, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN)))
{
PlayImmobileAmbientAnimations();
}
}
else
{
DetermineSpecialBehavior();
}
}
else
{
//DetermineCombatRound();
}
}
}
else
{
if(GetSpawnInCondition(NW_FLAG_SLEEPING_AT_NIGHT))
{
effect eVis = EffectVisualEffect(VFX_IMP_SLEEP);
if(d10() > 6)
{
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, OBJECT_SELF);
}
}
}
if(GetSpawnInCondition(NW_FLAG_HEARTBEAT_EVENT))
{
SignalEvent(OBJECT_SELF, EventUserDefined(1001));
}
}

JOL Archives 1.0.1
@ JOL / JeuxOnLine