Fixed CCOH, Fixed starting GP, Fixed DMFI languages, Fix cep weapon appearances, Fixed new player start up system. Added PC deleter. Added ACP 4.1. Full compile. Updated release archive.
67 lines
2.5 KiB
Plaintext
67 lines
2.5 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: Default: End of Combat Round
|
|
//:: NW_C2_DEFAULT3
|
|
//:: Copyright (c) 2001 Bioware Corp.
|
|
//:://////////////////////////////////////////////
|
|
/*
|
|
Calls the end of combat script every round
|
|
*/
|
|
//:://////////////////////////////////////////////
|
|
//:: Created By: Preston Watamaniuk
|
|
//:: Created On: Oct 16, 2001
|
|
//:://////////////////////////////////////////////
|
|
#include "gsc_include"
|
|
#include "NW_I0_GENERIC"
|
|
void main()
|
|
{
|
|
ExecuteScript("prc_npc_combat", OBJECT_SELF);
|
|
|
|
if (!GetLocalInt(GetModule(),"X3_NO_MOUNTED_COMBAT_FEAT"))
|
|
{ // set variables on target for mounted combat
|
|
DeleteLocalInt(OBJECT_SELF,"bX3_LAST_ATTACK_PHYSICAL");
|
|
DeleteLocalInt(OBJECT_SELF,"nX3_HP_BEFORE");
|
|
DeleteLocalInt(OBJECT_SELF,"bX3_ALREADY_MOUNTED_COMBAT");
|
|
if (GetHasFeat(FEAT_MOUNTED_COMBAT,OBJECT_SELF))
|
|
{ // check for AC increase
|
|
int nRoll=d20()+GetSkillRank(SKILL_RIDE);
|
|
nRoll=nRoll-10;
|
|
if (nRoll>4)
|
|
{ // ac increase
|
|
nRoll=nRoll/5;
|
|
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectACIncrease(nRoll),OBJECT_SELF,8.5);
|
|
} // ac increase
|
|
} // check for AC increase
|
|
} // set variables on target for mounted combat
|
|
|
|
GSC_CheckDisarcionare(OBJECT_SELF);
|
|
if (GetIsDead(GetAttackTarget())) //see below
|
|
{ //..
|
|
ClearAllActions(); //..
|
|
DetermineCombatRound(); //..
|
|
} //..
|
|
else if(GetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL))
|
|
{
|
|
DetermineSpecialBehavior();
|
|
}
|
|
else if(!GetSpawnInCondition(NW_FLAG_SET_WARNINGS))
|
|
{
|
|
DetermineCombatRound();
|
|
}
|
|
if(GetSpawnInCondition(NW_FLAG_END_COMBAT_ROUND_EVENT))
|
|
{
|
|
SignalEvent(OBJECT_SELF, EventUserDefined(1003));
|
|
}
|
|
//ExecuteScript("bug_armi",OBJECT_SELF);
|
|
}
|
|
/*Bio screwed up the A.I.-- big time. Attacking creatures--no re-evaluate of target
|
|
if it's <span class="highlight">dying</span>. There is a check in the DetermineCombatRound() function,
|
|
but it only does a "return;" if the target is dead or <span class="highlight">dying</span>. This means the
|
|
creature continues its current action of attacking. Digging around in Bio A.I.
|
|
is like swimming in tar now-- commented out, comment back in, moved this here,
|
|
moved this there, etc. For now, best to make the fix here as it's easy to track
|
|
and you can bet they will screw things up again in the A.I. files with patches or
|
|
expansions. Break, fix, break fix, break, fix, ad nauseam....
|
|
--Heed.*/
|
|
|
|
|