Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Rencontre qui ne s'active que si un bout de quete a été effectué.
Rencontre qui ne s'active que si un bout de quete a été effectué.
Par Morethil le 7/11/2002 Ă 10:08:08 (#2502513)
Je souhaiterai implĂ©menter des rencontres dans mon module, qui ne s'active que si une quĂȘte est arrivĂ© Ă un certain stade.
Sauf que je fait face a 2pbm.
1) Je ne sait pas si le tag d'une quete dans le journal est un "LocalInt" que l'on peux verifier.
-- Du genre Verifier si le local int "quete_machin, 4" à été activé avant de lancer la rencontre.
2) Je ne sait pas comment faire en sorte que la rencontre ne se déclanche pas si cette donnée n'est pas verifiée.
J'ai vu Diwell utiliser des LocalInt avec des noms approchant de ses quete dans "Un coin de paradis" (module) ce qui me laisse penser que "quete_machin" je fonctionne pas ?
Par eMRaistlin le 7/11/2002 Ă 11:27:17 (#2502934)
Pour ce qui est du journal, je ne l'utilise pour l'instant pas, donc je ne peut te repondre... mais pour ce genre de chose, stocke ta variable sur le module, ce sera aussi simple.
Pour ce qui est de l'activité d'une encoutner, c'est faisable :
SetEncounterActive(int, object)
Sets an encounter to active or inactive.
void SetEncounterActive(
int bNewValue,
object oEncounter = OBJECT_SELF
);
Parameters
bNewValue
TRUE if the encounter is active, otherwise FALSE.
oEncounter
The encounter to set active or inactive. (Default: OBJECT_SELF)
Description
Set oEncounter's active state to nNewValue.
Remarks
From Victor Morales:
I have tried the SetEncounterActive function to spawn creatures at different times of the day. For example, I only wanted the undead in a cemetery to spawn if it was nighttime.
If the encounter active flag is set to FALSE to begin with (in the encounter GUI window when the encounter is created) then the SetEncounterActive function will spawn them properly the first time. It seems that the creatures are set to spawn before the OnEnter event is checked for validity. In addition, once the active flag is set it won't revert until the next time the encounter is triggered.
So I would have undead that would spawn at night properly, but once they spawned - if the time changed to day they would spawn at least one more time during daylight hours. Then the trigger would work properly again.
I tried to make it reset the active flag to active OnEnter, then the creatures would spawn, and to reset it to inactive OnExit. However, that didn't work either and the behavior stayed the same.
mais tu peux constater que le comportement du l'encounter semble particulier.
Je n'ai pas testé, mais je suppose que sur le OnEnter De l'area, tu dois pouvoir activer ou non cette encounter en fonction de la variable de la quete.
Ca peut toujours servir : fonction sur les rencontres :ActionCreate
GetEncounterActive
GetEncounterDifficulty
GetEncounterSpawnsCurrent
GetEncounterSpawnsMax
GetEnteringObject
GetExitingObject
GetIsEncounterCreature
SetEncounterActive
SetEncounterDifficulty
SetEncounterSpawnsCurrent
SetEncounterSpawnsMax
Par sounéva le 7/11/2002 à 12:03:05 (#2503170)
je croit que dans le tuto "faire un module de bioware" c'est asser bien Ă©xpliquer.
Par JedaĂŻ le 7/11/2002 Ă 16:57:26 (#2505858)
Au moins je me souviens de son nom.:D
JOL Archives 1.0.1
@ JOL / JeuxOnLine