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

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Liberer un prisonnier

Par Narmacyl le 5/2/2003 à 13:29:35 (#3175150)

Salut a tous, je débute a la création de module....donc j'aimerais savoir comment faire pour qu'un NPC soit enfermé en prison sans bouger et qu'au moment ou je le libère il suive des Waypoint jusqu'à la sortie et disparais ?

Car j'ai mis les Waypoint et il bute contre la porte....pas cool...

merci d'avance.

aucune idée

Par Blam le 5/2/2003 à 13:43:50 (#3175277)

En général je les envoie en prison, puis on les executes ;) c'est plus simple :pp

Mais c'est une très bonne question, et je suivrais les réponses avec intérêt car le vrai problème est posé.

Bon courage.


NB désolé de pas apporter de vraie réponse mais je remonte un sujet qui m'interesse aussi :)

Par eMRaistlin le 5/2/2003 à 14:27:05 (#3175678)

A priori, ca vient du OnBlocked (le premier slot de script des créature)

Il faut que tu mette dedans que si il est bloqué, il va dire ("zut, la porte est fermée"), puis tu lui ClearAllActions(), et enfin, tu va le faire patienter au fond de sa cellule,par exemple...

ensuite, tu met un AssignCommand(GetObjectByTag("TAG_NPC"),WalkWaypoints()); dans le OnOpen de la porte ^^

CQFD, tu va economiser du temps, plutot que de faire des script de verification de viabilité recurrents. :)

merci...

Par Narmacyl le 5/2/2003 à 14:35:17 (#3175755)

Merci pour le onBlocked....j'y avait pas pensé !

Et dans le cas oú le prisonnier devra me suivre jusqu'a la sortie ?

Par eMRaistlin le 5/2/2003 à 14:59:36 (#3175931)

Bein, je suppose que tu va lui parler avant, alors ??


Donc, dans ton dialogue, tu lui met un ForceFollow :)


(Regle N°1 de eM : ne jamais faire compliqué si une solution simple est aussi efficace :))

heu..

Par Narmacyl le 5/2/2003 à 16:05:15 (#3176532)

Chuis pas un dieu du script.....donc comment on fait un ForceFollow ?

merci de m'aider...

Par eMRaistlin le 5/2/2003 à 16:19:36 (#3176658)

void main()
{
DelayCommand(1.0,ActionForceFollowObject(GetPCSpeaker(),0.5));
}


Tu met ca dans la fin de dialogue (celui ou tu demande au NPC de te suivre...)

merci

Par Narmacyl le 5/2/2003 à 16:59:24 (#3177005)

ok merci..maintenant je vais essayé de trouver comment faire pour qu'il me lâche une fois arrivé en lieu sur..;)

Par eMRaistlin le 5/2/2003 à 17:08:24 (#3177076)

Tu met un Trigger avec :


void main()
{
object oEntrant = GetEnteringObject();
if (GetIsPC(oEntrant)){return;}
AssignCommand(oEntrant,ClearAllActions());
}


sur ton point d'arrivée :)

heu...

Par Narmacyl le 5/2/2003 à 17:12:13 (#3177106)

un Trigger c'est un Encounter ? désolé mais je débute....

c'est une zone

Par Blam le 5/2/2003 à 17:17:12 (#3177155)

c'est une zone que tu définie l'icône a coté de celle des waypoints

:p

Ok

Par Narmacyl le 5/2/2003 à 17:20:52 (#3177203)

ok c'est bien ce que je pensais...mais comme j'ai la version Espagnole, les termes sont quelques peu differents...;)

merci pour votre aide...

Olé

Par Blam le 5/2/2003 à 17:27:49 (#3177269)

Olé !

Par Narmacyl le 5/2/2003 à 17:31:24 (#3177315)

:doute:

Par Saldek le 7/2/2003 à 15:52:37 (#3190790)

j'adore ce forum! merci a vous, je voulais faire la meme chose hihi ;)

JOL Archives 1.0.1
@ JOL / JeuxOnLine