diff --git a/src/server/game/Battlegrounds/BattlegroundQueue.cpp b/src/server/game/Battlegrounds/BattlegroundQueue.cpp index 4f4b2a1b7..479bcd77f 100644 --- a/src/server/game/Battlegrounds/BattlegroundQueue.cpp +++ b/src/server/game/Battlegrounds/BattlegroundQueue.cpp @@ -632,10 +632,10 @@ bool BattlegroundQueue::CheckSkirmishForSameFaction(BattlegroundBracketId bracke { // update internal GroupQueueInfo data (*pitr)->teamId = wrongTeamId; - (*pitr)->_groupType = BG_QUEUE_NORMAL_ALLIANCE + wrongTeamId; + (*pitr)->_groupType = static_cast(BG_QUEUE_NORMAL_ALLIANCE) + wrongTeamId; // add GroupQueueInfo to new queue - m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + wrongTeamId].push_front(*pitr); + m_QueuedGroups[bracket_id][static_cast(BG_QUEUE_NORMAL_ALLIANCE) + wrongTeamId].push_front(*pitr); // remove GroupQueueInfo from old queue for (auto qitr = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].begin(); qitr != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE + i].end(); ++qitr) diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp index 889d7f412..bbc67faaa 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundAB.cpp @@ -7,11 +7,8 @@ #include "Creature.h" #include "GameGraveyard.h" #include "Language.h" -#include "Object.h" -#include "ObjectMgr.h" #include "Player.h" #include "Util.h" -#include "World.h" #include "WorldPacket.h" #include "WorldSession.h" @@ -125,7 +122,7 @@ void BattlegroundAB::PostUpdateImpl(uint32 diff) void BattlegroundAB::StartingEventCloseDoors() { - for (uint32 obj = BG_AB_OBJECT_BANNER_NEUTRAL; obj < BG_AB_DYNAMIC_NODES_COUNT * BG_AB_OBJECTS_PER_NODE; ++obj) + for (uint32 obj = BG_AB_OBJECT_BANNER_NEUTRAL; obj < static_cast(BG_AB_DYNAMIC_NODES_COUNT) * BG_AB_OBJECTS_PER_NODE; ++obj) SpawnBGObject(obj, RESPAWN_ONE_DAY); for (uint32 i = 0; i < BG_AB_DYNAMIC_NODES_COUNT * 3; ++i) SpawnBGObject(BG_AB_OBJECT_SPEEDBUFF_STABLES + i, RESPAWN_ONE_DAY); @@ -304,7 +301,7 @@ void BattlegroundAB::EventPlayerClickedOnFlag(Player* player, GameObject* gameOb { player->KilledMonsterCredit(BG_AB_QUEST_CREDIT_BASE + node); UpdatePlayerScore(player, SCORE_BASES_ASSAULTED, 1); - _capturePointInfo[node]._state = BG_AB_NODE_STATE_ALLY_CONTESTED + player->GetTeamId(); + _capturePointInfo[node]._state = static_cast(BG_AB_NODE_STATE_ALLY_CONTESTED) + player->GetTeamId(); _capturePointInfo[node]._ownerTeamId = TEAM_NEUTRAL; _bgEvents.RescheduleEvent(BG_AB_EVENT_CAPTURE_STABLE + node, BG_AB_FLAG_CAPTURING_TIME); sound = BG_AB_SOUND_NODE_CLAIMED; @@ -317,7 +314,7 @@ void BattlegroundAB::EventPlayerClickedOnFlag(Player* player, GameObject* gameOb { player->KilledMonsterCredit(BG_AB_QUEST_CREDIT_BASE + node); UpdatePlayerScore(player, SCORE_BASES_ASSAULTED, 1); - _capturePointInfo[node]._state = BG_AB_NODE_STATE_ALLY_CONTESTED + player->GetTeamId(); + _capturePointInfo[node]._state = static_cast(BG_AB_NODE_STATE_ALLY_CONTESTED) + player->GetTeamId(); _capturePointInfo[node]._ownerTeamId = TEAM_NEUTRAL; _bgEvents.RescheduleEvent(BG_AB_EVENT_CAPTURE_STABLE + node, BG_AB_FLAG_CAPTURING_TIME); message = LANG_BG_AB_NODE_ASSAULTED; @@ -325,7 +322,7 @@ void BattlegroundAB::EventPlayerClickedOnFlag(Player* player, GameObject* gameOb else { UpdatePlayerScore(player, SCORE_BASES_DEFENDED, 1); - _capturePointInfo[node]._state = BG_AB_NODE_STATE_ALLY_OCCUPIED + player->GetTeamId(); + _capturePointInfo[node]._state = static_cast(BG_AB_NODE_STATE_ALLY_OCCUPIED) + player->GetTeamId(); _capturePointInfo[node]._ownerTeamId = player->GetTeamId(); _bgEvents.CancelEvent(BG_AB_EVENT_CAPTURE_STABLE + node); NodeOccupied(node); // after setting team owner @@ -339,7 +336,7 @@ void BattlegroundAB::EventPlayerClickedOnFlag(Player* player, GameObject* gameOb UpdatePlayerScore(player, SCORE_BASES_ASSAULTED, 1); NodeDeoccupied(node); // before setting team owner to neutral - _capturePointInfo[node]._state = BG_AB_NODE_STATE_ALLY_CONTESTED + player->GetTeamId(); + _capturePointInfo[node]._state = static_cast(BG_AB_NODE_STATE_ALLY_CONTESTED) + player->GetTeamId(); ApplyPhaseMask(); _bgEvents.RescheduleEvent(BG_AB_EVENT_CAPTURE_STABLE + node, BG_AB_FLAG_CAPTURING_TIME); @@ -436,7 +433,7 @@ void BattlegroundAB::EndBattleground(TeamId winnerTeamId) GraveyardStruct const* BattlegroundAB::GetClosestGraveyard(Player* player) { - GraveyardStruct const* entry = sGraveyard->GetGraveyard(BG_AB_GraveyardIds[BG_AB_SPIRIT_ALIANCE + player->GetTeamId()]); + GraveyardStruct const* entry = sGraveyard->GetGraveyard(BG_AB_GraveyardIds[static_cast(BG_AB_SPIRIT_ALIANCE) + player->GetTeamId()]); GraveyardStruct const* nearestEntry = entry; float pX = player->GetPositionX(); diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp index 6b9b2ff27..3ee72042c 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundAV.cpp @@ -19,7 +19,7 @@ BattlegroundAV::BattlegroundAV() { BgObjects.resize(BG_AV_OBJECT_MAX); - BgCreatures.resize(AV_CPLACE_MAX + AV_STATICCPLACE_MAX); + BgCreatures.resize(static_cast(AV_CPLACE_MAX) + AV_STATICCPLACE_MAX); for (uint8 i = 0; i < 2; i++) { @@ -268,7 +268,7 @@ Creature* BattlegroundAV::AddAVCreature(uint16 cinfoid, uint16 type) { bool isStatic = false; Creature* creature = nullptr; - ASSERT(type <= AV_CPLACE_MAX + AV_STATICCPLACE_MAX); + ASSERT(type <= static_cast(AV_CPLACE_MAX) + AV_STATICCPLACE_MAX); if (type >= AV_CPLACE_MAX) //static { type -= AV_CPLACE_MAX; @@ -597,8 +597,8 @@ void BattlegroundAV::EventPlayerDestroyedPoint(BG_AV_Nodes node) RewardReputationToTeam(ownerId == TEAM_ALLIANCE ? 730 : 729, BG_AV_REP_TOWER, ownerId); RewardHonorToTeam(GetBonusHonorFromKill(BG_AV_KILL_TOWER), ownerId); - SpawnBGObject(BG_AV_OBJECT_TAURA_A_DUNBALDAR_SOUTH + ownerId + (2 * tmp), RESPAWN_ONE_DAY); - SpawnBGObject(BG_AV_OBJECT_TFLAG_A_DUNBALDAR_SOUTH + ownerId + (2 * tmp), RESPAWN_ONE_DAY); + SpawnBGObject(static_cast(BG_AV_OBJECT_TAURA_A_DUNBALDAR_SOUTH) + ownerId + (2 * tmp), RESPAWN_ONE_DAY); + SpawnBGObject(static_cast(BG_AV_OBJECT_TFLAG_A_DUNBALDAR_SOUTH) + ownerId + (2 * tmp), RESPAWN_ONE_DAY); } else { @@ -607,7 +607,7 @@ void BattlegroundAV::EventPlayerDestroyedPoint(BG_AV_Nodes node) else SpawnBGObject(object + 11, RESPAWN_IMMEDIATELY); SpawnBGObject(BG_AV_OBJECT_AURA_N_FIRSTAID_STATION + 3 * node, RESPAWN_ONE_DAY); - SpawnBGObject(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION + ownerId + 3 * node, RESPAWN_IMMEDIATELY); + SpawnBGObject(static_cast(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION) + ownerId + 3 * node, RESPAWN_IMMEDIATELY); PopulateNode(node); if (node == BG_AV_NODES_SNOWFALL_GRAVE) //snowfall eyecandy { @@ -917,7 +917,7 @@ void BattlegroundAV::EventPlayerDefendsPoint(Player* player, uint32 object) if (!IsTower(node)) { SpawnBGObject(BG_AV_OBJECT_AURA_N_FIRSTAID_STATION + 3 * node, RESPAWN_ONE_DAY); - SpawnBGObject(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION + teamId + 3 * node, RESPAWN_IMMEDIATELY); + SpawnBGObject(static_cast(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION) + teamId + 3 * node, RESPAWN_IMMEDIATELY); } // despawn old go SpawnBGObject(object, RESPAWN_ONE_DAY); @@ -1032,7 +1032,7 @@ void BattlegroundAV::EventPlayerAssaultsPoint(Player* player, uint32 object) { //spawning/despawning of aura SpawnBGObject(BG_AV_OBJECT_AURA_N_FIRSTAID_STATION + 3 * node, RESPAWN_IMMEDIATELY); //neutral aura spawn - SpawnBGObject(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION + prevOwnerId + 3 * node, RESPAWN_ONE_DAY); //teeamaura despawn + SpawnBGObject(static_cast(BG_AV_OBJECT_AURA_A_FIRSTAID_STATION) + prevOwnerId + 3 * node, RESPAWN_ONE_DAY); //teeamaura despawn RelocateDeadPlayers(BgCreatures[node]); } @@ -1520,7 +1520,7 @@ void BattlegroundAV::ResetBGSubclass() InitNode(BG_AV_NODES_SNOWFALL_GRAVE, TEAM_NEUTRAL, false); //give snowfall neutral owner m_Mine_Timer = AV_MINE_TICK_TIMER; - for (uint16 i = 0; i < AV_CPLACE_MAX + AV_STATICCPLACE_MAX; i++) + for (uint16 i = 0; i < static_cast(AV_CPLACE_MAX) + AV_STATICCPLACE_MAX; i++) if (BgCreatures[i]) DelCreature(i); } diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp index 37097f883..2de0f3cee 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundEY.cpp @@ -566,7 +566,7 @@ void BattlegroundEY::FillInitialWorldStates(WorldPacket& data) GraveyardStruct const* BattlegroundEY::GetClosestGraveyard(Player* player) { - GraveyardStruct const* entry = sGraveyard->GetGraveyard(BG_EY_GRAVEYARD_MAIN_ALLIANCE + player->GetTeamId()); + GraveyardStruct const* entry = sGraveyard->GetGraveyard(static_cast(BG_EY_GRAVEYARD_MAIN_ALLIANCE) + player->GetTeamId()); GraveyardStruct const* nearestEntry = entry; float pX = player->GetPositionX(); diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp index 35ed34860..69386bc51 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundIC.cpp @@ -590,13 +590,13 @@ void BattlegroundIC::EventPlayerClickedOnFlag(Player* player, GameObject* gameOb nodePoint[i].timer = BANNER_STATE_CHANGE_TIME; // 1 minute for last change (real faction banner) nodePoint[i].needChange = true; - RelocateDeadPlayers(BgCreatures[BG_IC_NPC_SPIRIT_GUIDE_1 + nodePoint[i].nodeType - 2]); + RelocateDeadPlayers(BgCreatures[static_cast(BG_IC_NPC_SPIRIT_GUIDE_1) + nodePoint[i].nodeType - 2]); // if we are here means that the point has been lost, or it is the first capture if (nodePoint[i].nodeType != NODE_TYPE_REFINERY && nodePoint[i].nodeType != NODE_TYPE_QUARRY) - if (BgCreatures[BG_IC_NPC_SPIRIT_GUIDE_1 + (nodePoint[i].nodeType) - 2]) - DelCreature(BG_IC_NPC_SPIRIT_GUIDE_1 + (nodePoint[i].nodeType) - 2); + if (BgCreatures[static_cast(BG_IC_NPC_SPIRIT_GUIDE_1) + (nodePoint[i].nodeType) - 2]) + DelCreature(static_cast(BG_IC_NPC_SPIRIT_GUIDE_1) + (nodePoint[i].nodeType) - 2); UpdatePlayerScore(player, SCORE_BASES_ASSAULTED, 1); @@ -724,7 +724,7 @@ void BattlegroundIC::HandleCapturedNodes(ICNodePoint* nodePoint, bool recapture) { if (nodePoint->nodeType != NODE_TYPE_REFINERY && nodePoint->nodeType != NODE_TYPE_QUARRY) { - if (!AddSpiritGuide(BG_IC_NPC_SPIRIT_GUIDE_1 + nodePoint->nodeType - 2, + if (!AddSpiritGuide(static_cast(BG_IC_NPC_SPIRIT_GUIDE_1) + nodePoint->nodeType - 2, BG_IC_SpiritGuidePos[nodePoint->nodeType][0], BG_IC_SpiritGuidePos[nodePoint->nodeType][1], BG_IC_SpiritGuidePos[nodePoint->nodeType][2], BG_IC_SpiritGuidePos[nodePoint->nodeType][3], nodePoint->faction)) @@ -983,7 +983,7 @@ GraveyardStruct const* BattlegroundIC::GetClosestGraveyard(Player* player) } // If not, place ghost on starting location if (!good_entry) - good_entry = sGraveyard->GetGraveyard(BG_IC_GraveyardIds[player->GetTeamId() + MAX_NODE_TYPES]); + good_entry = sGraveyard->GetGraveyard(BG_IC_GraveyardIds[player->GetTeamId() + static_cast(MAX_NODE_TYPES)]); return good_entry; } diff --git a/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp b/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp index 406bd20f9..143a2c8e3 100644 --- a/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp +++ b/src/server/game/Battlegrounds/Zones/BattlegroundSA.cpp @@ -20,7 +20,7 @@ BattlegroundSA::BattlegroundSA() StartMessageIds[BG_STARTING_EVENT_THIRD] = LANG_BG_SA_START_HALF_MINUTE; StartMessageIds[BG_STARTING_EVENT_FOURTH] = LANG_BG_SA_HAS_BEGUN; BgObjects.resize(BG_SA_MAXOBJ); - BgCreatures.resize(BG_SA_MAXNPC + BG_SA_MAX_GY); + BgCreatures.resize(static_cast(BG_SA_MAXNPC) + BG_SA_MAX_GY); TimerEnabled = false; UpdateWaitTimer = 0; SignaledRoundTwo = false; @@ -85,7 +85,7 @@ bool BattlegroundSA::ResetObjs() for (uint8 i = 0; i < BG_SA_MAXNPC; i++) DelCreature(i); - for (uint8 i = BG_SA_MAXNPC; i < BG_SA_MAXNPC + BG_SA_MAX_GY; i++) + for (uint8 i = BG_SA_MAXNPC; i < static_cast(BG_SA_MAXNPC) + BG_SA_MAX_GY; i++) DelCreature(i); for (uint8 i = 0; i < 6; ++i) @@ -893,7 +893,7 @@ void BattlegroundSA::CaptureGraveyard(BG_SA_Graveyards i, Player* Source) GraveyardStatus[i] = Source->GetTeamId(); // Those who are waiting to resurrect at this node are taken to the closest own node's graveyard - GuidVector& ghost_list = m_ReviveQueue[BgCreatures[BG_SA_MAXNPC + i]]; + GuidVector& ghost_list = m_ReviveQueue[BgCreatures[static_cast(BG_SA_MAXNPC) + i]]; if (!ghost_list.empty()) { GraveyardStruct const* ClosestGrave = nullptr; @@ -914,7 +914,7 @@ void BattlegroundSA::CaptureGraveyard(BG_SA_Graveyards i, Player* Source) ghost_list.clear(); } - DelCreature(BG_SA_MAXNPC + i); + DelCreature(static_cast(BG_SA_MAXNPC) + i); GraveyardStruct const* sg = sGraveyard->GetGraveyard(BG_SA_GYEntries[i]); if (!sg) @@ -923,7 +923,7 @@ void BattlegroundSA::CaptureGraveyard(BG_SA_Graveyards i, Player* Source) return; } - AddSpiritGuide(i + BG_SA_MAXNPC, sg->x, sg->y, sg->z, BG_SA_GYOrientation[i], GraveyardStatus[i]); + AddSpiritGuide(i + static_cast(BG_SA_MAXNPC), sg->x, sg->y, sg->z, BG_SA_GYOrientation[i], GraveyardStatus[i]); uint32 npc = 0; uint32 flag = 0; diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 9104d2d38..5c9498486 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1005,9 +1005,9 @@ namespace lfg currInternalInfoMap[sitr->first] = RBInternalInfo(guid, sitr->second.comment, !groupGuid.IsEmpty(), groupGuid, sitr->second.roles, encounterMask, instanceGuid, 1, p->getLevel(), p->getClass(), p->getRace(), p->GetAverageItemLevel(), talents, p->m_last_area_id, p->GetArmor(), (uint32)std::max(0, spellDamage), (uint32)std::max(0, spellHeal), - p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_CRIT_MELEE), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_CRIT_RANGED), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_CRIT_SPELL), std::max(0.0f, mp5), std::max(0.0f, mp5combat), + p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_CRIT_MELEE)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_CRIT_RANGED)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_CRIT_SPELL)), std::max(0.0f, mp5), std::max(0.0f, mp5combat), std::max(baseAP, rangedAP), (uint32)p->GetStat(STAT_AGILITY), p->GetMaxHealth(), maxPower, p->GetDefenseSkillValue(), - p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_DODGE), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_BLOCK), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_PARRY), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_HASTE_SPELL), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_EXPERTISE)); + p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_DODGE)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_BLOCK)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_PARRY)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_HASTE_SPELL)), p->GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_EXPERTISE))); if (!groupGuid) continue; diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index ad3df9581..d50b8fbfb 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -2169,7 +2169,7 @@ void Player::Regenerate(Powers power) //Set the value to 0 first then set it to max to force resend of packet as for range clients keeps removing rage if (power == POWER_RAGE || power == POWER_RUNIC_POWER) { - UpdateUInt32Value(UNIT_FIELD_POWER1 + power, 0); + UpdateUInt32Value(static_cast(UNIT_FIELD_POWER1) + power, 0); } SetPower(power, maxValue); @@ -2289,7 +2289,7 @@ void Player::Regenerate(Powers power) if (m_regenTimerCount >= 2000) SetPower(power, curValue); else - UpdateUInt32Value(UNIT_FIELD_POWER1 + power, curValue); + UpdateUInt32Value(static_cast(UNIT_FIELD_POWER1) + power, curValue); } void Player::RegenerateHealth() @@ -5484,7 +5484,7 @@ void Player::GetDodgeFromAgility(float& diminishing, float& nondiminishing) return; // TODO: research if talents/effects that increase total agility by x% should increase non-diminishing part - float base_agility = GetCreateStat(STAT_AGILITY) * m_auraModifiersGroup[UNIT_MOD_STAT_START + STAT_AGILITY][BASE_PCT]; + float base_agility = GetCreateStat(STAT_AGILITY) * m_auraModifiersGroup[UNIT_MOD_STAT_START + static_cast(STAT_AGILITY)][BASE_PCT]; float bonus_agility = GetStat(STAT_AGILITY) - base_agility; // calculate diminishing (green in char screen) and non-diminishing (white) contribution @@ -5527,7 +5527,7 @@ float Player::GetRatingMultiplier(CombatRating cr) const float Player::GetRatingBonusValue(CombatRating cr) const { - return float(GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + cr)) * GetRatingMultiplier(cr); + return float(GetUInt32Value(static_cast(PLAYER_FIELD_COMBAT_RATING_1) + cr)) * GetRatingMultiplier(cr); } float Player::GetExpertiseDodgeOrParryReduction(WeaponAttackType attType) const @@ -5631,7 +5631,7 @@ void Player::UpdateRating(CombatRating cr) amount += int32(CalculatePct(GetStat(Stats((*i)->GetMiscValueB())), (*i)->GetAmount())); if (amount < 0) amount = 0; - SetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + cr, uint32(amount)); + SetUInt32Value(static_cast(PLAYER_FIELD_COMBAT_RATING_1) + cr, uint32(amount)); bool affectStats = CanModifyStats(); diff --git a/src/server/game/Entities/Player/PlayerStorage.cpp b/src/server/game/Entities/Player/PlayerStorage.cpp index b5f75f9c2..1250c9582 100644 --- a/src/server/game/Entities/Player/PlayerStorage.cpp +++ b/src/server/game/Entities/Player/PlayerStorage.cpp @@ -7779,7 +7779,7 @@ void Player::_SaveStats(CharacterDatabaseTransaction trans) stmt->setUInt32(index++, GetUInt32Value(UNIT_FIELD_ATTACK_POWER)); stmt->setUInt32(index++, GetUInt32Value(UNIT_FIELD_RANGED_ATTACK_POWER)); stmt->setUInt32(index++, GetBaseSpellPowerBonus()); - stmt->setUInt32(index++, GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_CRIT_TAKEN_SPELL)); + stmt->setUInt32(index++, GetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_CRIT_TAKEN_SPELL))); trans->Append(stmt); } diff --git a/src/server/game/Entities/Unit/StatSystem.cpp b/src/server/game/Entities/Unit/StatSystem.cpp index e5cfd7efc..e39474ec5 100644 --- a/src/server/game/Entities/Unit/StatSystem.cpp +++ b/src/server/game/Entities/Unit/StatSystem.cpp @@ -290,7 +290,7 @@ void Player::UpdateMaxHealth() void Player::UpdateMaxPower(Powers power) { - UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + power); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_POWER_START) + power); float bonusPower = (power == POWER_MANA && GetCreatePowers(power) > 0) ? GetManaBonusFromIntellect() : 0; @@ -799,7 +799,7 @@ void Player::UpdateSpellCritChance(uint32 school) void Player::UpdateArmorPenetration(int32 amount) { // Store Rating Value - SetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + CR_ARMOR_PENETRATION, amount); + SetUInt32Value(PLAYER_FIELD_COMBAT_RATING_1 + static_cast(CR_ARMOR_PENETRATION), amount); } void Player::UpdateMeleeHitChances() @@ -1002,7 +1002,7 @@ void Creature::UpdateMaxHealth() void Creature::UpdateMaxPower(Powers power) { - UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + power); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_POWER_START) + power); float value = GetTotalAuraModValue(unitMod); SetMaxPower(power, uint32(value)); @@ -1202,7 +1202,7 @@ void Guardian::UpdateMaxHealth() void Guardian::UpdateMaxPower(Powers power) { - UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + power); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_POWER_START) + power); float addValue = (power == POWER_MANA) ? std::max(GetStat(STAT_INTELLECT) - GetCreateStat(STAT_INTELLECT), 0.0f) : 0.0f; float multiplicator = 15.0f; diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 3b9d24941..bc44bb30b 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -11414,7 +11414,7 @@ float Unit::SpellDoneCritChance(Unit const* /*victim*/, SpellInfo const* spellPr crit_chance = 0.0f; // For other schools else if (GetTypeId() == TYPEID_PLAYER) - crit_chance = GetFloatValue(PLAYER_SPELL_CRIT_PERCENTAGE1 + GetFirstSchoolInMask(schoolMask)); + crit_chance = GetFloatValue(static_cast(PLAYER_SPELL_CRIT_PERCENTAGE1) + GetFirstSchoolInMask(schoolMask)); else { crit_chance = (float)m_baseSpellCritChance; @@ -14492,7 +14492,7 @@ float Unit::GetModifierValue(UnitMods unitMod, UnitModifierType modifierType) co float Unit::GetTotalStatValue(Stats stat, float additionalValue) const { - UnitMods unitMod = UnitMods(UNIT_MOD_STAT_START + stat); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_STAT_START) + stat); if (m_auraModifiersGroup[unitMod][TOTAL_PCT] <= 0.0f) return 0.0f; @@ -14530,7 +14530,7 @@ void Unit::ApplyStatPercentBuffMod(Stats stat, float val, bool apply) if (val == -100.0f) // prevent set var to zero val = -99.99f; float var = GetStat(stat) * val / 100.0f; - ApplyModSignedFloatValue((var > 0 ? UNIT_FIELD_POSSTAT0 + stat : UNIT_FIELD_NEGSTAT0 + stat), var, apply); + ApplyModSignedFloatValue((var > 0 ? static_cast(UNIT_FIELD_POSSTAT0) + stat : static_cast(UNIT_FIELD_NEGSTAT0) + stat), var, apply); } SpellSchools Unit::GetSpellSchoolByAuraGroup(UnitMods unitMod) const @@ -14754,7 +14754,7 @@ void Unit::SetPower(Powers power, uint32 val) if (maxPower < val) val = maxPower; - SetStatInt32Value(UNIT_FIELD_POWER1 + power, val); + SetStatInt32Value(static_cast(UNIT_FIELD_POWER1) + power, val); WorldPacket data(SMSG_POWER_UPDATE); data << GetPackGUID(); @@ -14790,7 +14790,7 @@ void Unit::SetPower(Powers power, uint32 val) void Unit::SetMaxPower(Powers power, uint32 val) { uint32 cur_power = GetPower(power); - SetStatInt32Value(UNIT_FIELD_MAXPOWER1 + power, val); + SetStatInt32Value(static_cast(UNIT_FIELD_MAXPOWER1) + power, val); // group update if (GetTypeId() == TYPEID_PLAYER) @@ -16308,12 +16308,12 @@ void Unit::ApplyAttackTimePercentMod(WeaponAttackType att, float val, bool apply if (val > 0) { ApplyPercentModFloatVar(m_modAttackSpeedPct[att], val, !apply); - ApplyPercentModFloatValue(UNIT_FIELD_BASEATTACKTIME + att, val, !apply); + ApplyPercentModFloatValue(static_cast(UNIT_FIELD_BASEATTACKTIME) + att, val, !apply); } else { ApplyPercentModFloatVar(m_modAttackSpeedPct[att], -val, apply); - ApplyPercentModFloatValue(UNIT_FIELD_BASEATTACKTIME + att, -val, apply); + ApplyPercentModFloatValue(static_cast(UNIT_FIELD_BASEATTACKTIME) + att, -val, apply); } m_attackTimer[att] = uint32(GetAttackTime(att) * m_modAttackSpeedPct[att] * remainingTimePct); } diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index b732860b4..17cc31708 100644 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1512,14 +1512,14 @@ public: [[nodiscard]] uint32 getClassMask() const { return 1 << (getClass() - 1); } [[nodiscard]] uint8 getGender() const { return GetByteValue(UNIT_FIELD_BYTES_0, 2); } - [[nodiscard]] float GetStat(Stats stat) const { return float(GetUInt32Value(UNIT_FIELD_STAT0 + stat)); } - void SetStat(Stats stat, int32 val) { SetStatInt32Value(UNIT_FIELD_STAT0 + stat, val); } + [[nodiscard]] float GetStat(Stats stat) const { return float(GetUInt32Value(static_cast(UNIT_FIELD_STAT0) + stat)); } + void SetStat(Stats stat, int32 val) { SetStatInt32Value(static_cast(UNIT_FIELD_STAT0) + stat, val); } [[nodiscard]] uint32 GetArmor() const { return GetResistance(SPELL_SCHOOL_NORMAL); } void SetArmor(int32 val) { SetResistance(SPELL_SCHOOL_NORMAL, val); } - [[nodiscard]] uint32 GetResistance(SpellSchools school) const { return GetUInt32Value(UNIT_FIELD_RESISTANCES + school); } + [[nodiscard]] uint32 GetResistance(SpellSchools school) const { return GetUInt32Value(static_cast(UNIT_FIELD_RESISTANCES) + school); } [[nodiscard]] uint32 GetResistance(SpellSchoolMask mask) const; - void SetResistance(SpellSchools school, int32 val) { SetStatInt32Value(UNIT_FIELD_RESISTANCES + school, val); } + void SetResistance(SpellSchools school, int32 val) { SetStatInt32Value(static_cast(UNIT_FIELD_RESISTANCES) + school, val); } static float GetEffectiveResistChance(Unit const* owner, SpellSchoolMask schoolMask, Unit const* victim, SpellInfo const* spellInfo = nullptr); [[nodiscard]] uint32 GetHealth() const { return GetUInt32Value(UNIT_FIELD_HEALTH); } @@ -1543,8 +1543,8 @@ public: [[nodiscard]] Powers getPowerType() const { return Powers(GetByteValue(UNIT_FIELD_BYTES_0, 3)); } void setPowerType(Powers power); - [[nodiscard]] uint32 GetPower(Powers power) const { return GetUInt32Value(UNIT_FIELD_POWER1 + power); } - [[nodiscard]] uint32 GetMaxPower(Powers power) const { return GetUInt32Value(UNIT_FIELD_MAXPOWER1 + power); } + [[nodiscard]] uint32 GetPower(Powers power) const { return GetUInt32Value(static_cast(UNIT_FIELD_POWER1) + power); } + [[nodiscard]] uint32 GetMaxPower(Powers power) const { return GetUInt32Value(static_cast(UNIT_FIELD_MAXPOWER1) + power); } void SetPower(Powers power, uint32 val); void SetMaxPower(Powers power, uint32 val); // returns the change in power @@ -1553,11 +1553,11 @@ public: [[nodiscard]] uint32 GetAttackTime(WeaponAttackType att) const { - float f_BaseAttackTime = GetFloatValue(UNIT_FIELD_BASEATTACKTIME + att) / m_modAttackSpeedPct[att]; + float f_BaseAttackTime = GetFloatValue(static_cast(UNIT_FIELD_BASEATTACKTIME) + att) / m_modAttackSpeedPct[att]; return (uint32)f_BaseAttackTime; } - void SetAttackTime(WeaponAttackType att, uint32 val) { SetFloatValue(UNIT_FIELD_BASEATTACKTIME + att, val * m_modAttackSpeedPct[att]); } + void SetAttackTime(WeaponAttackType att, uint32 val) { SetFloatValue(static_cast(UNIT_FIELD_BASEATTACKTIME) + att, val * m_modAttackSpeedPct[att]); } void ApplyAttackTimePercentMod(WeaponAttackType att, float val, bool apply); void ApplyCastTimePercentMod(float val, bool apply); @@ -2069,16 +2069,16 @@ public: int32 GetMaxPositiveAuraModifierByAffectMask(AuraType auratype, SpellInfo const* affectedSpell) const; int32 GetMaxNegativeAuraModifierByAffectMask(AuraType auratype, SpellInfo const* affectedSpell) const; - [[nodiscard]] float GetResistanceBuffMods(SpellSchools school, bool positive) const { return GetFloatValue(positive ? UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + school : UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + school); } - void SetResistanceBuffMods(SpellSchools school, bool positive, float val) { SetFloatValue(positive ? UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + school : UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + school, val); } - void ApplyResistanceBuffModsMod(SpellSchools school, bool positive, float val, bool apply) { ApplyModSignedFloatValue(positive ? UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + school : UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + school, val, apply); } - void ApplyResistanceBuffModsPercentMod(SpellSchools school, bool positive, float val, bool apply) { ApplyPercentModFloatValue(positive ? UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE + school : UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE + school, val, apply); } + [[nodiscard]] float GetResistanceBuffMods(SpellSchools school, bool positive) const { return GetFloatValue(positive ? static_cast(UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE) + school : static_cast(UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE) + + school); } + void SetResistanceBuffMods(SpellSchools school, bool positive, float val) { SetFloatValue(positive ? static_cast(UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE) + school : static_cast(UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE) + + school, val); } + void ApplyResistanceBuffModsMod(SpellSchools school, bool positive, float val, bool apply) { ApplyModSignedFloatValue(positive ? static_cast(UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE) + school : static_cast(UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE) + + school, val, apply); } + void ApplyResistanceBuffModsPercentMod(SpellSchools school, bool positive, float val, bool apply) { ApplyPercentModFloatValue(positive ? static_cast(UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE) + school : static_cast(UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE) + + school, val, apply); } void InitStatBuffMods() { - for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) SetFloatValue(UNIT_FIELD_POSSTAT0 + i, 0); - for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) SetFloatValue(UNIT_FIELD_NEGSTAT0 + i, 0); + for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) SetFloatValue(static_cast(UNIT_FIELD_POSSTAT0) + i, 0); + for (uint8 i = STAT_STRENGTH; i < MAX_STATS; ++i) SetFloatValue(static_cast(UNIT_FIELD_NEGSTAT0) + i, 0); } - void ApplyStatBuffMod(Stats stat, float val, bool apply) { ApplyModSignedFloatValue((val > 0 ? UNIT_FIELD_POSSTAT0 + stat : UNIT_FIELD_NEGSTAT0 + stat), val, apply); } + void ApplyStatBuffMod(Stats stat, float val, bool apply) { ApplyModSignedFloatValue((val > 0 ? static_cast(UNIT_FIELD_POSSTAT0) + stat : static_cast(UNIT_FIELD_NEGSTAT0) + stat), val, apply); } void ApplyStatPercentBuffMod(Stats stat, float val, bool apply); void SetCreateStat(Stats stat, float val) { m_createStats[stat] = val; } @@ -2087,8 +2087,8 @@ public: void SetCreateMana(uint32 val) { SetUInt32Value(UNIT_FIELD_BASE_MANA, val); } [[nodiscard]] uint32 GetCreateMana() const { return GetUInt32Value(UNIT_FIELD_BASE_MANA); } [[nodiscard]] uint32 GetCreatePowers(Powers power) const; - [[nodiscard]] float GetPosStat(Stats stat) const { return GetFloatValue(UNIT_FIELD_POSSTAT0 + stat); } - [[nodiscard]] float GetNegStat(Stats stat) const { return GetFloatValue(UNIT_FIELD_NEGSTAT0 + stat); } + [[nodiscard]] float GetPosStat(Stats stat) const { return GetFloatValue(static_cast(UNIT_FIELD_POSSTAT0) + stat); } + [[nodiscard]] float GetNegStat(Stats stat) const { return GetFloatValue(static_cast(UNIT_FIELD_NEGSTAT0) + stat); } [[nodiscard]] float GetCreateStat(Stats stat) const { return m_createStats[stat]; } void SetCurrentCastedSpell(Spell* pSpell); diff --git a/src/server/game/Movement/Spline/MoveSpline.cpp b/src/server/game/Movement/Spline/MoveSpline.cpp index 1ccfcc1dc..6b797c7b5 100644 --- a/src/server/game/Movement/Spline/MoveSpline.cpp +++ b/src/server/game/Movement/Spline/MoveSpline.cpp @@ -210,10 +210,7 @@ namespace Movement { if (!(flags & MoveSplineFlag::Mask_CatmullRom) && path.size() > 2) { - enum - { - MAX_OFFSET = (1 << 11) / 2 - }; + constexpr auto MAX_OFFSET = (1 << 11) / 2; Vector3 middle = (path.front() + path.back()) / 2; Vector3 offset; for (uint32 i = 1; i < path.size() - 1; ++i) diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index acf014b87..115078350 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -4313,7 +4313,7 @@ void AuraEffect::HandleAuraModIncreaseEnergy(AuraApplication const* aurApp, uint //if (int32(PowerType) != GetMiscValue()) // return; - UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + PowerType); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_POWER_START) + PowerType); target->HandleStatModifier(unitMod, TOTAL_VALUE, float(GetAmount()), apply); } @@ -4333,7 +4333,7 @@ void AuraEffect::HandleAuraModIncreaseEnergyPercent(AuraApplication const* aurAp //if (int32(PowerType) != GetMiscValue()) // return; - UnitMods unitMod = UnitMods(UNIT_MOD_POWER_START + PowerType); + UnitMods unitMod = UnitMods(static_cast(UNIT_MOD_POWER_START) + PowerType); float amount = float(GetAmount()); if (apply) diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index dd68f297f..cc09962ad 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -2382,7 +2382,7 @@ int32 SpellInfo::CalcPowerCost(Unit const* caster, SpellSchoolMask schoolMask, S } SpellSchools school = GetFirstSchoolInMask(schoolMask); // Flat mod from caster auras by spell school - powerCost += caster->GetInt32Value(UNIT_FIELD_POWER_COST_MODIFIER + school); + powerCost += caster->GetInt32Value(static_cast(UNIT_FIELD_POWER_COST_MODIFIER) + school); // Shiv - costs 20 + weaponSpeed*10 energy (apply only to non-triggered spell with energy cost) if (AttributesEx4 & SPELL_ATTR4_WEAPON_SPEED_COST_SCALING) @@ -2418,7 +2418,7 @@ int32 SpellInfo::CalcPowerCost(Unit const* caster, SpellSchoolMask schoolMask, S } // PCT mod from user auras by school - powerCost = int32(powerCost * (1.0f + caster->GetFloatValue(UNIT_FIELD_POWER_COST_MULTIPLIER + school))); + powerCost = int32(powerCost * (1.0f + caster->GetFloatValue(static_cast(UNIT_FIELD_POWER_COST_MULTIPLIER) + school))); if (powerCost < 0) powerCost = 0; return powerCost; diff --git a/src/server/scripts/Spells/spell_dk.cpp b/src/server/scripts/Spells/spell_dk.cpp index ce329df5a..17bf712c2 100644 --- a/src/server/scripts/Spells/spell_dk.cpp +++ b/src/server/scripts/Spells/spell_dk.cpp @@ -221,7 +221,7 @@ public: ghoul->SetModifierValue(UNIT_MOD_HEALTH, TOTAL_VALUE, (ghoul->GetStat(STAT_STAMINA) - ghoul->GetCreateStat(STAT_STAMINA)) * 10.0f); // Power Energy - ghoul->SetModifierValue(UnitMods(UNIT_MOD_POWER_START + POWER_ENERGY), BASE_VALUE, ghoul->GetCreatePowers(POWER_ENERGY)); + ghoul->SetModifierValue(UnitMods(UNIT_MOD_POWER_START + static_cast(POWER_ENERGY)), BASE_VALUE, ghoul->GetCreatePowers(POWER_ENERGY)); ghoul->UpdateAllStats(); ghoul->SetFullHealth(); diff --git a/src/server/scripts/Spells/spell_warlock.cpp b/src/server/scripts/Spells/spell_warlock.cpp index b92526180..af94ff238 100644 --- a/src/server/scripts/Spells/spell_warlock.cpp +++ b/src/server/scripts/Spells/spell_warlock.cpp @@ -194,7 +194,7 @@ public: void CalculateAmount(AuraEffect const* aurEff, int32& amount, bool& /*canBeRecalculated*/) { if (aurEff->GetEffIndex() == EFFECT_0) - amount = CalculatePct(GetUnitOwner()->ToPlayer()->GetFloatValue(PLAYER_SPELL_CRIT_PERCENTAGE1 + SPELL_SCHOOL_FROST), GetSpellInfo()->Effects[EFFECT_0].CalcValue()); + amount = CalculatePct(GetUnitOwner()->ToPlayer()->GetFloatValue(PLAYER_SPELL_CRIT_PERCENTAGE1 + static_cast(SPELL_SCHOOL_FROST)), GetSpellInfo()->Effects[EFFECT_0].CalcValue()); else amount = CalculatePct(GetUnitOwner()->ToPlayer()->GetFloatValue(PLAYER_CRIT_PERCENTAGE), GetSpellInfo()->Effects[EFFECT_0].CalcValue()); } @@ -942,7 +942,7 @@ public: { int32 damage = GetEffectValue() + LIFE_TAP_COEFFICIENT; int32 damage2Mana = GetEffectValue(); - int32 mana = int32(damage2Mana + (caster->GetInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS + SPELL_SCHOOL_SHADOW) * 0.5f)); + int32 mana = int32(damage2Mana + (caster->GetInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS + static_cast(SPELL_SCHOOL_SHADOW)) * 0.5f)); // Shouldn't Appear in Combat Log target->ModifyHealth(-damage); diff --git a/src/server/scripts/World/npc_innkeeper.cpp b/src/server/scripts/World/npc_innkeeper.cpp index c37922fe1..d5fdb8037 100644 --- a/src/server/scripts/World/npc_innkeeper.cpp +++ b/src/server/scripts/World/npc_innkeeper.cpp @@ -4,17 +4,13 @@ #include "ScriptedCreature.h" #include "ScriptedGossip.h" #include "ScriptMgr.h" -#include "WorldSession.h" -enum eTrickOrTreatSpells -{ - SPELL_TRICK = 24714, - SPELL_TREAT = 24715, - SPELL_TRICKED_OR_TREATED = 24755, - HALLOWEEN_EVENTID = 12, - GOSSIP_MENU = 9733, - GOSSIP_MENU_EVENT = 342 -}; +constexpr auto SPELL_TRICK = 24714; +constexpr auto SPELL_TREAT = 24715; +constexpr auto SPELL_TRICKED_OR_TREATED = 24755; +constexpr auto HALLOWEEN_EVENTID = 12; +constexpr auto GOSSIP_MENU = 9733; +constexpr auto GOSSIP_MENU_EVENT = 342; class npc_innkeeper : public CreatureScript {