Help !! probleme d'animation :(

Répondre
Partager Rechercher
Bonjour , j essaie tant bien que mal de faire executer une sorte de scene a 2 ou 3 pnj , et je me heurte a un probleme assez enervant , chaque commande que je place ,(exActionSpeakString , effet visuels ou autre ...) se répete une bonne dizaine de fois et je ne comprends pas pourquoi ... si vous avez une solution je suis preneur

Merci d'avance
void main()
{
//déclarations
object oKiran = GetObjectByTag("Kiranfilm");
object oBalorkPoint = GetObjectByTag("Balork2");
object oBalork = GetObjectByTag("Balorkfilm");
object oCible =(oKiran);//à définir!
effect eVis = EffectVisualEffect(VFX_FNF_IMPLOSION);
effect eVis2 = EffectVisualEffect(VFX_IMP_DEATH_L);
{
DelayCommand(0.0, AssignCommand(oBalork, ActionMoveToObject(oBalorkPoint)));

DelayCommand(10.0, ActionSpeakString("*Grognement*On me la fait pas a moi ..."));

DelayCommand(10.1, ClearAllActions());

DelayCommand(11.0, ActionCastFakeSpellAtObject(SPELL_IMPLOSION, oCible));

DelayCommand(11.1, ClearAllActions());

DelayCommand(13.0, ApplyEffectToObject(DURATION_TYPE_PERMANENT, eVis, oKiran, 0.5));

DelayCommand(13.1, ClearAllActions());

DelayCommand(14.0, ApplyEffectToObject(DURATION_TYPE_PERMANENT, eVis2, oKiran, 0.5));

DelayCommand(14.1, ClearAllActions());

}
}


voila le script , au début il était sans les ClearAllActions mais je les rajoutés apres pensant pouvoir résoudre le probleme avec eux mais ca a rien changé.
c est placé sur le Onperceive d'un pnj , pour que des qu il voit le joueur y fasse une suite d actions.

alors apres si ca viens du fait que le pnj me foit 10 fois où j y suis 1 fois ben je vois pas comment faire ...
Dans ton OnPerceive tu met ça
Code PHP:

void main()
{
    if(
GetIsPC(GetLastPerceived()) && GetLastPerceptionSeen())
    {
        
SignalEvent(OBJECT_SELF,EventUserDefined(200));
    }

Dans ton OnUserDefine tu met
Code PHP:

void main()
{
 switch(
GetUserDefinedEventNumber())
    {
        case 
200:
        {
            if(!
IsInConversation(OBJECT_SELF))
            {
//ton code
             
}
        }
    }

Je pense que ça devrait aller

Jaha Effect
Oui pour explication. Si tu mets dans le onperception de ton npc, à chaque fois qu'il vois un pj , il va renvoyer le code.
Et tant qu'il voit le pj, il renvoi le code automatiquement,
c'est justement grâce à ça que j'utilise mon système de multi discussion entre npc
Voila , je suis de retour avec mes problemes d'animation pour pas saturer le forum je continue sur ce post

Explication du probleme :

j'utilise ce script sur le onExit d'une zone:

void main()
{
object oDemonfilm = GetObjectByTag("Demonfilm");
object oDemonfilm2 = GetObjectByTag("Demonfilm2");
object oPretreHaruPoint2 = GetObjectByTag("PretreHaru1");
object oMbrcultPoint1 = GetObjectByTag("Membreculte1");
object oMbrcultPoint2 = GetObjectByTag("Membreculte2");
object oMbrcultPoint3 = GetObjectByTag("Membreculte3");
object oMoonrockPoint2 = GetObjectByTag("Moonrock1");
object oKilhiamPoint2 = GetObjectByTag("Kilhiam1");
object oKiranPoint2 = GetObjectByTag("Kiran1");
object oBalorkPoint2 = GetObjectByTag("Balork1");
object oBalork = GetObjectByTag("Balorkfilm");
object oRecuciteKiran = CreateObject(OBJECT_TYPE_CREATURE, "Kiranfilm", GetLocation(oKiranPoint2));
object oRecuciteKilhiam = CreateObject(OBJECT_TYPE_CREATURE, "Kilhiamfilm", GetLocation(oKilhiamPoint2));
object oRecuciteMoonrock = CreateObject(OBJECT_TYPE_CREATURE, "Moonrockfilm", GetLocation(oMoonrockPoint2));
object oMembreculte1 = CreateObject(OBJECT_TYPE_CREATURE, "membreduculte", GetLocation(oMbrcultPoint1));
object oMembreculte2 = CreateObject(OBJECT_TYPE_CREATURE, "membreduculte", GetLocation(oMbrcultPoint2));
object oMembreculte3 = CreateObject(OBJECT_TYPE_CREATURE, "membreduculte", GetLocation(oMbrcultPoint3));
object oPretreHaru = CreateObject(OBJECT_TYPE_CREATURE, "pretreharuspicie", GetLocation(oPretreHaruPoint2));

DestroyObject(oDemonfilm);
DestroyObject(oDemonfilm2);
AssignCommand(oBalork, JumpToObject(oBalorkPoint2));

Le probleme auquel je suis confronté est que lorsque je quitte la zone ya comme un micro lag a cause des 2 DestroyObject , et cela fait que au lieu que les pnj se recrée normalement 1 fois , ils se recréent 3 fois ... pourtant il est indispensable que je detruise les 2 pnj "Demonfilm 1 et 2" a la sortie de cette zone ... si vous avez une solution je suis preneur

Merci d'avance
Alors les règles du forum, c'est un post par sujet et un titre explicite et surtout pas du genre help ! problème animation
et surtout utilise les balises PHP quand tu met un code sur le forum, pour un soucis de lisibilité

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