diff options
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/game/Achievements/AchievementMgr.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/Arena.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/Battleground.cpp | 7 | ||||
-rw-r--r-- | src/server/game/Battlegrounds/Battleground.h | 6 | ||||
-rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 6 | ||||
-rw-r--r-- | src/server/game/Entities/Pet/Pet.cpp | 3 | ||||
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Grids/Notifiers/GridNotifiers.h | 6 |
8 files changed, 16 insertions, 18 deletions
diff --git a/src/server/game/Achievements/AchievementMgr.cpp b/src/server/game/Achievements/AchievementMgr.cpp index 302adda0c8e..2c392b37954 100644 --- a/src/server/game/Achievements/AchievementMgr.cpp +++ b/src/server/game/Achievements/AchievementMgr.cpp @@ -1026,7 +1026,7 @@ void AchievementMgr::UpdateAchievementCriteria(AchievementCriteriaTypes type, ui continue; //FIXME: work only for instances where max == min for players - if (((InstanceMap*)map)->GetMaxPlayers() != achievementCriteria->death_in_dungeon.manLimit) + if (map->ToInstanceMap()->GetMaxPlayers() != achievementCriteria->death_in_dungeon.manLimit) continue; SetCriteriaProgress(achievementCriteria, 1, PROGRESS_ACCUMULATE); break; diff --git a/src/server/game/Battlegrounds/Arena.cpp b/src/server/game/Battlegrounds/Arena.cpp index 9f7aa653b9e..deb04085ea4 100644 --- a/src/server/game/Battlegrounds/Arena.cpp +++ b/src/server/game/Battlegrounds/Arena.cpp @@ -249,4 +249,4 @@ void Arena::EndBattleground(uint32 winner) // end battleground Battleground::EndBattleground(winner); -}
\ No newline at end of file +} diff --git a/src/server/game/Battlegrounds/Battleground.cpp b/src/server/game/Battlegrounds/Battleground.cpp index 8aa210d99a3..4f3bfa1a3c3 100644 --- a/src/server/game/Battlegrounds/Battleground.cpp +++ b/src/server/game/Battlegrounds/Battleground.cpp @@ -124,7 +124,7 @@ Battleground::Battleground() m_InvitedHorde = 0; m_ArenaType = 0; m_IsArena = false; - m_Winner = 2; + _winnerTeamId = BG_TEAM_NEUTRAL; m_StartTime = 0; m_ResetStatTimer = 0; m_ValidStartPositionTimer = 0; @@ -729,7 +729,7 @@ void Battleground::EndBattleground(uint32 winner) } else { - SetWinner(3); // weird + SetWinner(BG_TEAM_NEUTRAL); } SetStatus(STATUS_WAIT_LEAVE); @@ -741,7 +741,6 @@ void Battleground::EndBattleground(uint32 winner) BattlegroundQueueTypeId bgQueueTypeId = BattlegroundMgr::BGQueueTypeId(GetTypeID(), GetArenaType()); - uint8 aliveWinners = GetAlivePlayersCountByTeam(winner); for (BattlegroundPlayerMap::iterator itr = m_Players.begin(); itr != m_Players.end(); ++itr) { uint32 team = itr->second.Team; @@ -929,7 +928,7 @@ void Battleground::RemovePlayerAtLeave(uint64 guid, bool Transport, bool SendPac // this method is called when no players remains in battleground void Battleground::Reset() { - SetWinner(0); + SetWinner(BG_TEAM_NEUTRAL); SetStatus(STATUS_WAIT_QUEUE); SetStartTime(0); SetEndTime(0); diff --git a/src/server/game/Battlegrounds/Battleground.h b/src/server/game/Battlegrounds/Battleground.h index 635ad1b28d3..46436b56f3c 100644 --- a/src/server/game/Battlegrounds/Battleground.h +++ b/src/server/game/Battlegrounds/Battleground.h @@ -256,7 +256,7 @@ class Battleground int32 GetStartDelayTime() const { return m_StartDelayTime; } uint8 GetArenaType() const { return m_ArenaType; } - uint8 GetWinner() const { return m_Winner; } + BattlegroundTeamId GetWinner() const { return _winnerTeamId; } uint32 GetScriptId() const { return ScriptId; } uint32 GetBonusHonorFromKill(uint32 kills) const; bool IsRandom() const { return m_IsRandom; } @@ -279,7 +279,7 @@ class Battleground void SetRated(bool state) { m_IsRated = state; } void SetArenaType(uint8 type) { m_ArenaType = type; } void SetArenaorBGType(bool _isArena) { m_IsArena = _isArena; } - void SetWinner(uint8 winner) { m_Winner = winner; } + void SetWinner(BattlegroundTeamId winnerTeamId) { _winnerTeamId = winnerTeamId; } void SetScriptId(uint32 scriptId) { ScriptId = scriptId; } void ModifyStartDelayTime(int diff) { m_StartDelayTime -= diff; } @@ -528,7 +528,7 @@ class Battleground bool m_InBGFreeSlotQueue; // used to make sure that BG is only once inserted into the BattlegroundMgr.BGFreeSlotQueue[bgTypeId] deque bool m_SetDeleteThis; // used for safe deletion of the bg after end / all players leave bool m_IsArena; - uint8 m_Winner; // 0=alliance, 1=horde, 2=none + BattlegroundTeamId _winnerTeamId; int32 m_StartDelayTime; bool m_IsRated; // is this battle rated? bool m_PrematureCountDown; diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 25cf0dd2cda..61b268b1624 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -343,7 +343,7 @@ void Object::BuildMovementUpdate(ByteBuffer* data, uint16 flags) const if (isType(TYPEMASK_UNIT)) unit = ToUnit(); else - object = ((WorldObject*)this); + object = (WorldObject const*)this; *data << uint16(flags); // update flags @@ -568,7 +568,7 @@ uint32 Object::GetUpdateFieldData(Player const* target, uint32*& flags) const case TYPEID_ITEM: case TYPEID_CONTAINER: flags = ItemUpdateFieldFlags; - if (((Item*)this)->GetOwnerGUID() == target->GetGUID()) + if (((Item const*)this)->GetOwnerGUID() == target->GetGUID()) visibleFlag |= UF_FLAG_OWNER | UF_FLAG_ITEM_OWNER; break; case TYPEID_UNIT: @@ -594,7 +594,7 @@ uint32 Object::GetUpdateFieldData(Player const* target, uint32*& flags) const break; case TYPEID_DYNAMICOBJECT: flags = DynamicObjectUpdateFieldFlags; - if (((DynamicObject*)this)->GetCasterGUID() == target->GetGUID()) + if (ToDynObject()->GetCasterGUID() == target->GetGUID()) visibleFlag |= UF_FLAG_OWNER; break; case TYPEID_CORPSE: diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp index d41878bed3b..a6844f667d1 100644 --- a/src/server/game/Entities/Pet/Pet.cpp +++ b/src/server/game/Entities/Pet/Pet.cpp @@ -523,8 +523,7 @@ void Pet::setDeathState(DeathState s) // overwrite virtual SetUInt32Value(UNIT_DYNAMIC_FLAGS, UNIT_DYNFLAG_NONE); RemoveFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_SKINNABLE); - //lose happiness when died and not in BG/Arena - MapEntry const* mapEntry = sMapStore.LookupEntry(GetMapId()); + // lose happiness when died and not in BG/Arena if (!GetMap()->IsBattlegroundOrArena()) ModifyPower(POWER_HAPPINESS, -HAPPINESS_LEVEL_SIZE); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 5c4716487a3..de71619c282 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -12961,7 +12961,7 @@ float Unit::ApplyDiminishingToDuration(DiminishingGroup group, int32 &duration, Unit const* source = casterOwner ? casterOwner : caster; if ((target->GetTypeId() == TYPEID_PLAYER - || ((Creature*)target)->GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_ALL_DIMINISH) + || target->ToCreature()->GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_ALL_DIMINISH) && source->GetTypeId() == TYPEID_PLAYER) duration = limitduration; } diff --git a/src/server/game/Grids/Notifiers/GridNotifiers.h b/src/server/game/Grids/Notifiers/GridNotifiers.h index 319b7b589b9..fe10d8183ec 100644 --- a/src/server/game/Grids/Notifiers/GridNotifiers.h +++ b/src/server/game/Grids/Notifiers/GridNotifiers.h @@ -944,13 +944,13 @@ namespace Trinity if (owner) check = owner; i_targetForPlayer = (check->GetTypeId() == TYPEID_PLAYER); - if (i_obj->GetTypeId() == TYPEID_DYNAMICOBJECT) - _spellInfo = sSpellMgr->GetSpellInfo(((DynamicObject*)i_obj)->GetSpellId()); + if (DynamicObject const* dynObj = i_obj->ToDynObject()) + _spellInfo = sSpellMgr->GetSpellInfo(dynObj->GetSpellId()); } bool operator()(Unit* u) { // Check contains checks for: live, non-selectable, non-attackable flags, flight check and GM check, ignore totems - if (u->GetTypeId() == TYPEID_UNIT && ((Creature*)u)->IsTotem()) + if (u->GetTypeId() == TYPEID_UNIT && u->ToCreature()->IsTotem()) return false; if (i_funit->_IsValidAttackTarget(u, _spellInfo, i_obj->GetTypeId() == TYPEID_DYNAMICOBJECT ? i_obj : NULL) && i_obj->IsWithinDistInMap(u, i_range)) |