///////::///////////////////////////////////////////////// //:: Default On Attacked //:: NW_C2_DEFAULT5 //:: Copyright (c) 2001 Bioware Corp. //::////////////////////////////////////////////// /* If already fighting then ignore, else determine combat round */ //::////////////////////////////////////////////// //:: Created By: Preston Watamaniuk //:: Created On: Oct 16, 2001 //:://////////////////////////////////////////////// #include "NW_I0_GENERIC" #include "jw_privates_inc" void main() { object oTarget=GetLastAttacker(); ExecuteScript("prc_npc_physatt", OBJECT_SELF); if (!GetLocalInt(GetModule(),"X3_NO_MOUNTED_COMBAT_FEAT")) { // set variables on target for mounted combat SetLocalInt(OBJECT_SELF,"bX3_LAST_ATTACK_PHYSICAL",TRUE); SetLocalInt(OBJECT_SELF,"nX3_HP_BEFORE",GetCurrentHitPoints(OBJECT_SELF)); } // set variables on target for mounted combat if (GetStealthMode(OBJECT_SELF)==STEALTH_MODE_ACTIVATED) { ActionUseSkill(SKILL_HIDE,OBJECT_SELF); } if (GetDetectMode(OBJECT_SELF)==DETECT_MODE_ACTIVE) { ActionUseSkill(SKILL_SPOT,OBJECT_SELF); } if(GetFleeToExit()) { // Run away! ActivateFleeToExit(); } SetTarget(oTarget); //Shout Attack my target, only works with the On Spawn In setup SpeakString("NW_ATTACK_MY_TARGET", TALKVOLUME_SILENT_TALK); if (!GetIsFighting(OBJECT_SELF)) { ClearAllActions(); if (GetObjectSeen(oTarget)) { DetermineCombatRound(); } else { ActionMoveToObject(oTarget,TRUE,3.0); } //Shout that I was attacked SpeakString("NW_I_WAS_ATTACKED", TALKVOLUME_SILENT_TALK); } if(GetSpawnInCondition(NW_FLAG_ATTACK_EVENT)) { SignalEvent(OBJECT_SELF, EventUserDefined(EVENT_ATTACKED)); } }