*hyjal update
-reset boss damage at boss reset -minimal player dmg for bosses changed to min 25% (until someone confirms a better value) -count pet dmg as player dmg into boss min dmg --HG-- branch : trunk
This commit is contained in:
@@ -60,6 +60,7 @@ struct TRINITY_DLL_DECL boss_anetheronAI : public hyjal_trashAI
|
|||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
|
damageTaken = 0;
|
||||||
SwarmTimer = 45000;
|
SwarmTimer = 45000;
|
||||||
SleepTimer = 60000;
|
SleepTimer = 60000;
|
||||||
AuraTimer = 5000;
|
AuraTimer = 5000;
|
||||||
|
|||||||
@@ -357,6 +357,7 @@ struct TRINITY_DLL_DECL boss_archimondeAI : public hyjal_trashAI
|
|||||||
if(pInstance)
|
if(pInstance)
|
||||||
pInstance->SetData(DATA_ARCHIMONDEEVENT, NOT_STARTED);
|
pInstance->SetData(DATA_ARCHIMONDEEVENT, NOT_STARTED);
|
||||||
|
|
||||||
|
damageTaken = 0;
|
||||||
DrainNordrassilTimer = 0;
|
DrainNordrassilTimer = 0;
|
||||||
FearTimer = 42000;
|
FearTimer = 42000;
|
||||||
AirBurstTimer = 30000;
|
AirBurstTimer = 30000;
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ struct TRINITY_DLL_DECL boss_azgalorAI : public hyjal_trashAI
|
|||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
|
damageTaken = 0;
|
||||||
RainTimer = 20000;
|
RainTimer = 20000;
|
||||||
DoomTimer = 50000;
|
DoomTimer = 50000;
|
||||||
HowlTimer = 30000;
|
HowlTimer = 30000;
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ struct TRINITY_DLL_DECL boss_kazrogalAI : public hyjal_trashAI
|
|||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
|
damageTaken = 0;
|
||||||
CleaveTimer = 5000;
|
CleaveTimer = 5000;
|
||||||
WarStompTimer = 15000;
|
WarStompTimer = 15000;
|
||||||
MarkTimer = 45000;
|
MarkTimer = 45000;
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ struct TRINITY_DLL_DECL boss_rage_winterchillAI : public hyjal_trashAI
|
|||||||
|
|
||||||
void Reset()
|
void Reset()
|
||||||
{
|
{
|
||||||
|
damageTaken = 0;
|
||||||
FrostArmorTimer = 37000;
|
FrostArmorTimer = 37000;
|
||||||
DecayTimer = 45000;
|
DecayTimer = 45000;
|
||||||
NovaTimer = 15000;
|
NovaTimer = 15000;
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ hyjal_trashAI::hyjal_trashAI(Creature *c) : npc_escortAI(c)
|
|||||||
|
|
||||||
void hyjal_trashAI::DamageTaken(Unit *done_by, uint32 &damage)
|
void hyjal_trashAI::DamageTaken(Unit *done_by, uint32 &damage)
|
||||||
{
|
{
|
||||||
if(done_by->GetTypeId() == TYPEID_PLAYER)
|
if(done_by->GetTypeId() == TYPEID_PLAYER || (done_by->GetTypeId() == TYPEID_UNIT && ((Creature*)done_by)->isPet()))
|
||||||
{
|
{
|
||||||
damageTaken += damage;
|
damageTaken += damage;
|
||||||
if(pInstance)
|
if(pInstance)
|
||||||
@@ -431,6 +431,7 @@ void hyjal_trashAI::UpdateAI(const uint32 diff)
|
|||||||
AddWaypoint(i, HordeWPs[i][0]+irand(-10,10), HordeWPs[i][1]+irand(-10,10), HordeWPs[i][2]);
|
AddWaypoint(i, HordeWPs[i][0]+irand(-10,10), HordeWPs[i][1]+irand(-10,10), HordeWPs[i][2]);
|
||||||
switch(OverrunType)
|
switch(OverrunType)
|
||||||
{
|
{
|
||||||
|
case 0:
|
||||||
default:
|
default:
|
||||||
AddWaypoint( 5, HordeOverrunWP[0][0]+irand(-10,10), HordeOverrunWP[0][1]+irand(-10,10), HordeOverrunWP[0][2]);
|
AddWaypoint( 5, HordeOverrunWP[0][0]+irand(-10,10), HordeOverrunWP[0][1]+irand(-10,10), HordeOverrunWP[0][2]);
|
||||||
AddWaypoint( 6, HordeOverrunWP[1][0]+irand(-10,10), HordeOverrunWP[1][1]+irand(-10,10), HordeOverrunWP[1][2]);
|
AddWaypoint( 6, HordeOverrunWP[1][0]+irand(-10,10), HordeOverrunWP[1][1]+irand(-10,10), HordeOverrunWP[1][2]);
|
||||||
@@ -465,7 +466,7 @@ void hyjal_trashAI::JustDied(Unit *victim)
|
|||||||
if(IsEvent && !m_creature->isWorldBoss())
|
if(IsEvent && !m_creature->isWorldBoss())
|
||||||
pInstance->SetData(DATA_TRASH, 0);//signal trash is dead
|
pInstance->SetData(DATA_TRASH, 0);//signal trash is dead
|
||||||
|
|
||||||
if((pInstance->GetData(DATA_RAIDDAMAGE) < MINRAIDDAMAGE && !m_creature->isWorldBoss()) || (damageTaken < m_creature->GetMaxHealth()/2 && m_creature->isWorldBoss()))
|
if((pInstance->GetData(DATA_RAIDDAMAGE) < MINRAIDDAMAGE && !m_creature->isWorldBoss()) || (damageTaken < m_creature->GetMaxHealth()/4 && m_creature->isWorldBoss()))
|
||||||
m_creature->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE);//no loot
|
m_creature->RemoveFlag(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_LOOTABLE);//no loot
|
||||||
|
|
||||||
if(IsOverrun)
|
if(IsOverrun)
|
||||||
|
|||||||
Reference in New Issue
Block a user