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

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Doublons dans les dialogues ?

Par Jaha Effect le 15/2/2003 à 19:03:14 (#3245033)

Voilà j'ai un petit prob qui as dus se présenter à d'autre que moi, par contre j'arrive pas à le régler :(
Voilà, quand je fais une animation avec des dialogues, les paroles prononcées par mes PNJs apparaissent toujours en double dans ma fenêtre de chat.

Ex:
Marchande: Bonjour Madame.
Marchande: Bonjour Madame.


Alors que cela ne devrait pas être. mes anims étant géré par DelayCommand.
C'est pas catastrophique mais ça me gave.

Jaha Effect :D

Euh...

Par AlphA da keech le 15/2/2003 à 20:00:02 (#3245294)

Je suis une grosse keech mais j'ai déjà lu un truc, il me semble, c'est quand t'utilises un script dans OnPerceive, il est exécute deux fois car le OnPerceive renvoie a ce que voit le npc et à ce qu'il entends, donc comme il voit et il entends ton pj, le script s'exécute deux fois...

Bon voilà y'a peu de chances que ca vienne de là, étant donné que tu es un maître en NwnScript (si, si ^^) mais j'peux rien faire d'autre ayant un status de keech :p

Ps: Désolé si la réponse est HS par rapport à ce que tu veux, mais s'po ma faute, j'veux juste aider si je peux ;)

Par Jaha Effect le 15/2/2003 à 20:28:43 (#3245448)

Mais ce que tu me dis est très loin d'être idiot et ça répond très bien au problème qui se pose, tu te rappel ou tu as vu ça ? :)

Jaha Effect :D

Par Jedaï le 15/2/2003 à 21:00:10 (#3245581)

Dans un des tut' de base...:o

Ouais je sais c'est piégeux, c'est comme dans les scripts du OnRest où faut vérifier que le PJ vient bien de commencer à se reposer et non de finir (puisque les deux évènements déclenche le OnRest)...:D

Solution :
Sur le OnPerception, utiliser l'un des deux test GetLastPerceptionSeen() ou GetLastPerceptionHeard() qui renvoient TRUE si l'évènement est bien déclenché par une vision ou un son.:p

Sur le OnRest, utiliser GetLastRestEventType() et vérifier si il est bien égal à REST_EVENTTYPE_REST_STARTED.:p

Par Jaha Effect le 15/2/2003 à 21:59:57 (#3245787)

Merci :)

Jaha Effect :D

Par Iridian le 16/2/2003 à 10:50:04 (#3247506)

Provient du message de Jedaï

Sur le OnRest, utiliser GetLastRestEventType() et vérifier si il est bien égal à REST_EVENTTYPE_REST_STARTED.:p


C'est dingue ca, j'ai même plus besoin de poser une question pour avoir la réponse !

Merci Jedai !

Par RAT le 16/2/2003 à 11:31:36 (#3247642)

Car jedaï lit dans les pensées :):)

Par Jaha Effect le 16/2/2003 à 11:40:49 (#3247669)

Provient du message de Jedaï
Solution :
Sur le OnPerception, utiliser l'un des deux test GetLastPerceptionSeen() ou GetLastPerceptionHeard() qui renvoient TRUE si l'évènement est bien déclenché par une vision ou un son.:p


Y'a juste un petit problème à ça c'est qu'il me fait n'importe quoi après, l'animation ne suis plus du tout les DelayCommand et la vitesse de déroulement à franchement plus grand chose à voir avec ce que cela devrait être, le script se relance toute seul au milieu de l'animation, tout est accéléré... enfin j'ai plus du tout l'effet désiré.

Jaha Effect :D

Par Jedaï le 16/2/2003 à 12:38:49 (#3247904)

Curieux, je n'ai pas du tout ces effets secondaires ?:confus:

Tu utilises bien un seul des deux tests ?

Par Jaha Effect le 16/2/2003 à 13:47:14 (#3248217)

Provient du message de Jedaï
Curieux, je n'ai pas du tout ces effets secondaires ?:confus:

Tu utilises bien un seul des deux tests ?


Ouais je fait mon test comme ça dans le OnPerception
void main()
{
if(GetIsPC(GetLastPerceived())==GetLastPerceptionHeard())
{
SignalEvent(OBJECT_SELF,EventUserDefined(200));
}
}


A noter que le GetLastPerceptionSeen fait exactement pareil

Jaha Effect :D

Par Jaha Effect le 16/2/2003 à 14:01:43 (#3248282)

Voilà c'est corrigé, en faite il appréciait pas trop mon test, ça marche beaucoup mieux comme ça

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


Comme quoi, même quand on sait scripter, les tutoriaux sont toujours pratiques ;)

Jaha Effect :D

Par Jedaï le 16/2/2003 à 15:09:14 (#3248577)

GetLastPerceptionSeen() ou GetLastPerceptionHeard() qui renvoient TRUE si l'évènement est bien déclenché par une vision ou un son.


Ouf, je respire...Ca marche :D

Par Nermir le 16/2/2003 à 16:27:52 (#3248886)

Lorsque je joue un prêtre qui a beaucoup de connaissance des sorts, et qu'un sort est lancé à proximité (une autre personne ou moi qui lance un sort), j'ai un message du type "bidule lance le sort truck" qui apparais deux fois. C'est pareille chez vous ? Et c'est aussi dut au fait que mon PJ reconnais le sort en l'entendant et le reconnais une seconde fois en le voyant ?

Par eMRaistlin le 16/2/2003 à 19:15:17 (#3249699)

tu as un evenement Lancement de sort, et Un evenement Sort lancé... c'est pas pareil (je sais pas trop recuperer les 2 events par contre )

JOL Archives 1.0.1
@ JOL / JeuxOnLine