aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMachiavelli <none@none>2009-06-10 00:41:29 +0200
committerMachiavelli <none@none>2009-06-10 00:41:29 +0200
commitd065bbf410429371bbd4b3f60cfac02fec28a473 (patch)
treeea9d4191fe765c51a419db777b19252fda2b024d
parent0643c3df83c36ae7ab0196859e476395e42a4ba0 (diff)
* When checking if players are eligible for reward after killing a creature, check for minimum of 50% of 'cur_health' prior to combat rather than max health. Fixes Murmur loot issue.
--HG-- branch : trunk
-rw-r--r--src/game/Creature.cpp1
-rw-r--r--src/game/Creature.h5
2 files changed, 4 insertions, 2 deletions
diff --git a/src/game/Creature.cpp b/src/game/Creature.cpp
index 7f249b36fbd..b3e735aa2de 100644
--- a/src/game/Creature.cpp
+++ b/src/game/Creature.cpp
@@ -154,6 +154,7 @@ m_creatureInfo(NULL), m_reactState(REACT_AGGRESSIVE), m_formation(NULL), m_summo
m_unit_movement_flags = MOVEMENTFLAG_WALK_MODE;
DisableReputationGain = false;
ResetDamageByPlayers();
+ m_MinPlayerDamageReq = (uint32)(m_creature->GetHealth / m_creature->GetMaxHealth * 50);
}
Creature::~Creature()
diff --git a/src/game/Creature.h b/src/game/Creature.h
index 6c966f50aea..13e6479cf0d 100644
--- a/src/game/Creature.h
+++ b/src/game/Creature.h
@@ -722,10 +722,11 @@ class TRINITY_DLL_SPEC Creature : public Unit
void SetDisableReputationGain(bool disable) { DisableReputationGain = disable; }
bool IsReputationGainDisabled() { return DisableReputationGain; }
- bool IsDamageEnoughForLootingAndReward() { return m_unDamageByPlayers >= (uint32)(GetMaxHealth() / 2); }
+ bool IsDamageEnoughForLootingAndReward() { return m_unDamageByPlayers >= m_MinPlayerDamageReq; }
void AddDamageByPlayers(uint32 unDamage) { m_unDamageByPlayers += unDamage; }
void ResetDamageByPlayers() { m_unDamageByPlayers = 0; }
-
+ uint32 m_MinPlayerDamageReq;
+
void SetOriginalEntry(uint32 entry) { m_originalEntry = entry; }
protected: