Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > 10001 10005
10001 10005
Par Destero le 1/10/2002 à 9:02:15 (#2263527)
Quelqu un peut m expliquer ou les trouver et comment m en servir???
Merci de votre aide
Par miriandel le 1/10/2002 à 12:26:24 (#2264498)
Les nombres à 4 chiffres sont souvent des user events, ceux à 5 chiffres des références (inaccessibles, inaltérables, inextensibles) des constantes de jeu.
Par Destero le 1/10/2002 à 15:24:04 (#2265341)
Par miriandel le 1/10/2002 à 16:41:04 (#2265699)
Tu donnes les numéros que tu veux à tes events, sachant que NWN utilise les 1001 à 1007 pour les events onheartbeat jusque userdefined.
Mais bon, ta question est pas hyper précise :)
Par Sempai le 1/10/2002 à 18:17:27 (#2266279)
Provient du message de Destero
Les user event on le positionne comment pour les appelé plus tard??
Ils sont appelés par la commande SignalEvent, plaçable dans n'importe quelle situation et utilisés dans les emplacements OnUserDefined de la manière suivante
int nEvent = GetUserDefinedEventNumber();
puis on détermine l'action à suivre selon le nombre en question soit avec la commande switch() dont voici un exemple...
void main()
{
switch(GetUserDefinedEventNumber())
{
case 1002:
if (GetLocalInt(OBJECT_SELF, "NW_L_RESPONDSTATE") == 0)
{
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, OBJECT_SELF, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN);
if (GetIsObjectValid(oPC) == TRUE)
{
SetLocalInt(OBJECT_SELF, "NW_L_RESPONDSTATE", 1);
// * only 20 % chance of saying something
if (Random(100) <= 40)
SpeakOneLinerConversation();
}
}
}
}
soit avec des "if" dont voici un exemple
void main()
{
if (GetUserDefinedEventNumber() == 10)
{
CreateObject(OBJECT_TYPE_CREATURE,"NW_Guard",GetLocation(OBJECT_SELF));
}
}
JOL Archives 1.0.1
@ JOL / JeuxOnLine