206 lines
4.5 KiB
Plaintext
206 lines
4.5 KiB
Plaintext
#include "nw_i0_2q4luskan"
|
|
/* Script generated by
|
|
Lilac Soul's NWN Script Generator, v. 2.0
|
|
|
|
For download info, please visit:
|
|
http://nwvault.ign.com/View.php?view=Other.Detail&id=4683&id=625 */
|
|
|
|
// Modified 18/6 05 Seeker, Alangara
|
|
|
|
void turnoffLights()
|
|
{
|
|
object oTarget;
|
|
|
|
oTarget = GetObjectByTag("ghostlight1");
|
|
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("ghostlight2");
|
|
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("ghostlight3");
|
|
|
|
DestroyObject(oTarget, 0.0);
|
|
|
|
oTarget = GetObjectByTag("ghostlight4");
|
|
|
|
DestroyObject(oTarget, 0.0);
|
|
}
|
|
|
|
void summonCompany()
|
|
{
|
|
object oTarget;
|
|
location lTarget;
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl1");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObjectVoid(OBJECT_TYPE_CREATURE, "ghostfight", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl2");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObjectVoid(OBJECT_TYPE_CREATURE, "ghostfight", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl3");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObjectVoid(OBJECT_TYPE_CREATURE, "ghostfight", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl4");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObjectVoid(OBJECT_TYPE_CREATURE, "ghostfight", lTarget);
|
|
}
|
|
|
|
void killGirls()
|
|
{
|
|
object oTarget;
|
|
effect eEffect;
|
|
|
|
oTarget = GetObjectByTag("o_ghostgirl1");
|
|
|
|
eEffect = EffectDeath();
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget);
|
|
|
|
oTarget = GetObjectByTag("o_ghostgirl2");
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget);
|
|
|
|
oTarget = GetObjectByTag("o_ghostgirl3");
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget);
|
|
|
|
oTarget = GetObjectByTag("o_ghostgirl4");
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_INSTANT, eEffect, oTarget);
|
|
}
|
|
|
|
void spawnGirls()
|
|
{
|
|
object oTarget;
|
|
location lTarget;
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl1");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObject(OBJECT_TYPE_CREATURE, "ghostgirl1", lTarget, FALSE, "o_ghostgirl1");
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl2");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObject(OBJECT_TYPE_CREATURE, "ghostgirl2", lTarget, FALSE, "o_ghostgirl2");
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl3");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObject(OBJECT_TYPE_CREATURE, "ghostgirl3", lTarget, FALSE, "o_ghostgirl3");
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl4");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
CreateObject(OBJECT_TYPE_CREATURE, "ghostgirl4", lTarget, FALSE, "o_ghostgirl4");
|
|
}
|
|
|
|
|
|
//Put this OnEnter
|
|
void main()
|
|
{
|
|
|
|
object oPC = GetEnteringObject();
|
|
|
|
if (!GetIsPC(oPC)) return;
|
|
|
|
int DoOnce = GetLocalInt(oPC, GetTag(OBJECT_SELF));
|
|
|
|
if (DoOnce==TRUE) return;
|
|
|
|
// ----------------------------
|
|
|
|
// Added by Tarashon 30/06/2005 to get the stun effect to work
|
|
// Lets see if it actually works LOL
|
|
|
|
object oTarget23;
|
|
oTarget23 = oPC;
|
|
|
|
effect eEffect23;
|
|
eEffect23 = EffectStunned();
|
|
|
|
eEffect23 = ExtraordinaryEffect(eEffect23);
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eEffect23, oTarget23, 35.0f);
|
|
|
|
// ------------------------
|
|
|
|
SetLocalInt(oPC, GetTag(OBJECT_SELF), TRUE);
|
|
|
|
AmbientSoundStop(GetArea(oPC));
|
|
|
|
MusicBackgroundStop(GetArea(oPC));
|
|
|
|
object oTarget;
|
|
object oSpawn;
|
|
location lTarget;
|
|
oTarget = GetWaypointByTag("ghostgirl1");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
oSpawn = CreateObject(OBJECT_TYPE_PLACEABLE, "ghostlight1", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl2");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
oSpawn = CreateObject(OBJECT_TYPE_PLACEABLE, "ghostlight2", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl3");
|
|
|
|
lTarget = GetLocation (oTarget);
|
|
|
|
oSpawn = CreateObject(OBJECT_TYPE_PLACEABLE, "ghostlight3", lTarget);
|
|
|
|
oTarget = GetWaypointByTag("ghostgirl4");
|
|
|
|
lTarget = GetLocation(oTarget);
|
|
|
|
oSpawn = CreateObject(OBJECT_TYPE_PLACEABLE, "ghostlight4", lTarget);
|
|
|
|
effect eEffect;
|
|
eEffect = EffectStunned();
|
|
|
|
eEffect = ExtraordinaryEffect(eEffect);
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eEffect, oTarget, 35.0f);
|
|
|
|
DelayCommand(5.0, spawnGirls());
|
|
|
|
DelayCommand(10.0, AssignCommand(GetObjectByTag("o_ghostgirl1"), ActionSpeakString("One two, the Daemon's coming for you")));
|
|
|
|
DelayCommand(15.0, AssignCommand(GetObjectByTag("o_ghostgirl2"), ActionSpeakString("Three four, you'll be in pain for evermore")));
|
|
|
|
DelayCommand(20.0, AssignCommand(GetObjectByTag("o_ghostgirl3"), ActionSpeakString("Five six seven, fare thee well oh heaven")));
|
|
|
|
DelayCommand(25.0, AssignCommand(GetObjectByTag("o_ghostgirl4"), ActionSpeakString("Eight nine ten, he will ravish you my friend")));
|
|
|
|
DelayCommand(30.0, killGirls());
|
|
|
|
DelayCommand(35.0, summonCompany());
|
|
|
|
DelayCommand(37.0, turnoffLights());
|
|
|
|
DelayCommand(38.0, AmbientSoundPlay(GetArea(oPC)));
|
|
|
|
DelayCommand(39.0, MusicBackgroundPlay(GetArea(oPC)));
|
|
|
|
}
|