aboutsummaryrefslogtreecommitdiff
path: root/src/game/GameObject.h
diff options
context:
space:
mode:
authormaximius <none@none>2009-10-28 16:31:19 -0700
committermaximius <none@none>2009-10-28 16:31:19 -0700
commitf4d76b8216c911901e8a13996c55128bbfa4b08e (patch)
treed1db8d946c29cb9bdca5e0bf4d0da0a029f46d45 /src/game/GameObject.h
parentd5b8ad0080d45c2f02ef5a4fdd4d8853da286b6d (diff)
*Implement new LootMode system, and add some basic support in boss_sartharion.cpp. Requires database support.
--HG-- branch : trunk
Diffstat (limited to 'src/game/GameObject.h')
-rw-r--r--src/game/GameObject.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/game/GameObject.h b/src/game/GameObject.h
index 1386e220317..232b711bcf9 100644
--- a/src/game/GameObject.h
+++ b/src/game/GameObject.h
@@ -672,6 +672,13 @@ class TRINITY_DLL_SPEC GameObject : public WorldObject
LootState getLootState() const { return m_lootState; }
void SetLootState(LootState s) { m_lootState = s; }
+ uint16 GetLootMode() { return m_LootMode; }
+ bool HasLootMode(uint16 lootMode) { return m_LootMode & lootMode; }
+ void SetLootMode(uint16 lootMode) { m_LootMode = lootMode; }
+ void AddLootMode(uint16 lootMode) { m_LootMode |= lootMode; }
+ void RemoveLootMode(uint16 lootMode) { m_LootMode &= ~lootMode; }
+ void ResetLootMode() { m_LootMode = DEFAULT_LOOT_MODE; }
+
void AddToSkillupList(uint32 PlayerGuidLow) { m_SkillupList.push_back(PlayerGuidLow); }
bool IsInSkillupList(uint32 PlayerGuidLow) const
{
@@ -738,6 +745,8 @@ class TRINITY_DLL_SPEC GameObject : public WorldObject
GameObjectValue * const m_goValue;
uint64 m_rotation;
+
+ uint16 m_LootMode; // bitmask, default DEFAULT_LOOT_MODE, determines what loot will be lootable
private:
void SwitchDoorOrButton(bool activate, bool alternative = false);