Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Script apparition NPC Jour/Nuit
Script apparition NPC Jour/Nuit
Par roppy18 le 2/7/2002 à 11:44:22 (#1743913)
J'ai crée un petit module et j'avoue que je bloque a cet endroit .
Merci d'avance :)
alors, j'ai fait un script
Par Shelzard le 2/7/2002 à 16:32:20 (#1745317)
Je pense qu'il est facile de gérer ça en Tag pour NPC, voici le script à placer dans OnHearBeat de l'area, note que l'encouter doit etre en état desactivé dans ces propriétés. Soit tu le transforme pour NPC 'object', soit tu fais un encounter pour le NPC :
void main()
{
object oNuit = GetObjectByTag("TAG_nuit");
object oJour = GetObjectByTag("TAG_jour");
if ((GetLocalInt(oNuit,"nuit_active")==FALSE) && (GetLocalInt(oJour,"jour_actif")==FALSE))
{
SetLocalInt(oNuit,"nuit_active",1);
SetLocalInt(oJour,"jour_actif",1);
}
if (GetIsNight()==TRUE && GetLocalInt(oNuit,"nuit_active")<3)
{
SetLocalInt(oNuit,"nuit_active",2);
SetLocalInt(oJour,"jour_actif",1);
}
else if ((GetIsDay()==TRUE) && (GetLocalInt(oJour,"jour_actif")<3))
{
SetLocalInt(oNuit,"nuit_active",1);
SetLocalInt(oJour,"jour_actif",2);
}
if (GetLocalInt(oNuit,"nuit_active")==2)
{
SetEncounterActive(TRUE,oNuit);
SetEncounterActive(FALSE,oJour);
SetLocalInt(oNuit,"nuit_active",3);
SetLocalInt(oJour,"jour_actif",1);
}
else if (GetLocalInt(oJour,"jour_actif")==2)
{
SetEncounterActive(FALSE,oNuit);
SetEncounterActive(TRUE,oJour);
SetLocalInt(oNuit,"nuit_active",1);
SetLocalInt(oJour,"jour_actif",3);
}
}
Le TAG_jour est = au tag pour les encounters qui se déclenche uniquement le jour, et le TAG_Nuit pour ceux qui se déclenche uniquement la nuit. Ce qui n'a pas ce tag, marche normalement le jour et la nuit
Voilà,
Shelzard
JOL Archives 1.0.1
@ JOL / JeuxOnLine