Battledale_PRC8/_module/nss/jw_ccoffin_usd.nss
Jaysyn904 e5b3f6ad61 Finished PRC8 integration
Finished PRC8 integration.  Moved creature abilities to top hak.  Setup tooling.  Created release archive
2024-03-12 21:27:23 -04:00

97 lines
3.1 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Custom User Defined Event
//:: FileName
//:: Copyright (c) 2001 Bioware Corp.
//:://////////////////////////////////////////////
/*
*/
//:://////////////////////////////////////////////
//:: Created By:
//:: Created On:
//:://////////////////////////////////////////////
void main()
{
ExecuteScript("prc_npc_userdef", OBJECT_SELF);
int nUser = GetUserDefinedEventNumber();
object oObject;
effect eEffect;
if(nUser == 50) //Vampire inside
{
SetLocalInt(OBJECT_SELF,"vampin",2);
if (GetIsOpen(OBJECT_SELF))
{
ActionPlayAnimation (ANIMATION_PLACEABLE_CLOSE);
}
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_DEATH_WARD),OBJECT_SELF);
ApplyEffectToObject(DURATION_TYPE_PERMANENT,EffectVisualEffect(VFX_DUR_GLOBE_INVULNERABILITY),OBJECT_SELF);
//SetTileMainLightColor(GetLocation(OBJECT_SELF),TILE_MAIN_LIGHT_COLOR_RED,TILE_MAIN_LIGHT_COLOR_PALE_DARK_RED);
//RecomputeStaticLighting(GetArea(OBJECT_SELF));
//SpeakString("debug - vampire inside");
}
else if(nUser == 60) // Kill vamp
{
SpeakString("You drive the wooden stake into the heart of the resting vampire");
PlaySound("as_pl_screamm3");
ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_SCREEN_BUMP),GetLocation(OBJECT_SELF));
oObject=CreateObject(OBJECT_TYPE_CREATURE,"jw_vamp_skel",GetLocation(GetNearestObjectByTag("jw_vdeath_wp",OBJECT_SELF)),TRUE);
//ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_FLAME_S),GetLocation(oObject));
ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_IMPLOSION),GetLocation(oObject));
AssignCommand(oObject,DelayCommand(0.5,ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDeath(TRUE,TRUE),oObject)));
ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_COM_CHUNK_BONE_MEDIUM),GetLocation(oObject));
ApplyEffectAtLocation(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_SMOKE_PUFF),GetLocation(oObject));
PlaySound("sff_expdevil30");
CreateObject(OBJECT_TYPE_ITEM,GetStringLeft(GetTag(OBJECT_SELF),9)+"_key",GetLocation(GetNearestObjectByTag("jw_vdeath_wp",OBJECT_SELF)),TRUE);
SignalEvent(OBJECT_SELF,EventUserDefined(70));
//SpeakString("debug - kill vampire");
//jw_vamp_skel
}
else if(nUser == 70) // Reset coffin
{
oObject=OBJECT_SELF;
eEffect=GetFirstEffect(oObject);
while (GetIsEffectValid(eEffect))
{
if (GetEffectCreator(eEffect)==oObject)
{
RemoveEffect(oObject,eEffect);
}
eEffect=GetNextEffect(oObject);
}
SetLocalInt(OBJECT_SELF,"vampin",0);
if (GetIsOpen(OBJECT_SELF))
{
ActionPlayAnimation (ANIMATION_PLACEABLE_CLOSE);
}
}
else if(nUser == 1004) // ON DIALOGUE
{
}
else if(nUser == 1005) // ATTACKED
{
}
else if(nUser == 1006) // DAMAGED
{
}
else if(nUser == 1007) // DEATH
{
}
else if(nUser == 1008) // DISTURBED
{
}
}