*Fix some bugged AI which cause creatures enter evade mode repeatedly.

*Let player enter combat when attacked but not hit by creatures.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-01-30 01:14:48 -06:00
parent 8fe4fc3e47
commit 03234a0657
13 changed files with 5 additions and 28 deletions
@@ -85,7 +85,6 @@ void ScriptedAI::AttackStart(Unit* who, bool melee)
if (m_creature->Attack(who, melee))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
if (!InCombat)
{
@@ -108,7 +107,6 @@ void ScriptedAI::AttackStart(Unit* who)
if (m_creature->Attack(who, true))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
if (!InCombat)
{
@@ -834,7 +832,6 @@ void Scripted_NoMovementAI::AttackStart(Unit* who)
if (m_creature->Attack(who, true))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
if (!InCombat)
{
@@ -1150,8 +1150,6 @@ struct TRINITY_DLL_DECL Mob_EventAI : public ScriptedAI
if (m_creature->Attack(who, MeleeEnabled))
{
//Begin melee attack if we are within range
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
if (!InCombat)
{
@@ -35,8 +35,6 @@ void npc_escortAI::AttackStart(Unit *who)
if ( m_creature->Attack(who, true) )
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
who->SetInCombatWith(m_creature);
if (!InCombat)
{
@@ -440,7 +440,6 @@ struct TRINITY_DLL_DECL boss_shade_of_akamaAI : public ScriptedAI
Akama->AddThreat(m_creature, 10000000.0f);
m_creature->Attack(Akama, true);
Akama->Attack(m_creature, true);
m_creature->SetInCombatWith(Akama);
}
}
}
@@ -170,8 +170,6 @@ struct TRINITY_DLL_DECL boss_grand_warlock_nethekurseAI : public ScriptedAI
if (m_creature->Attack(who, true))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
who->SetInCombatWith(m_creature);
if (!InCombat)
{
@@ -522,7 +522,6 @@ struct TRINITY_DLL_DECL npc_dirty_larryAI : public ScriptedAI
Malone->setFaction(14);
Malone->GetMotionMaster()->MoveChase(player);
}
m_creature->SetInCombatWith(player);
DoStartMovement(player);
AttackStart(player);
}
@@ -104,8 +104,6 @@ struct TRINITY_DLL_DECL npc_millhouse_manastormAI : public ScriptedAI
if (m_creature->Attack(who, true))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
who->SetInCombatWith(m_creature);
if (!InCombat)
{
@@ -1211,8 +1211,6 @@ struct TRINITY_DLL_DECL boss_grand_astromancer_capernianAI : public advisorbase_
if (m_creature->Attack(who, true))
{
m_creature->AddThreat(who, 0.0f);
m_creature->SetInCombatWith(who);
who->SetInCombatWith(m_creature);
if (!InCombat)
{
@@ -1497,9 +1495,6 @@ struct TRINITY_DLL_DECL mob_phoenix_egg_tkAI : public ScriptedAI
{
if (m_creature->Attack(who, false))
{
m_creature->SetInCombatWith(who);
who->SetInCombatWith(m_creature);
if (!InCombat)
{
InCombat = true;