//:://///////////////////////////////////////////// //:: 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 { } }