aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Achievements/CriteriaHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-07-17 20:23:37 +0200
committerShauren <shauren.trinity@gmail.com>2022-07-17 20:23:37 +0200
commitcb99b08b86f8773563276bf16ccc2210003b056b (patch)
tree9284c0abae36e5f779b97b968463de4a9d86db8f /src/server/game/Achievements/CriteriaHandler.cpp
parentb8e52fd90bdab6e720d13e44c64483945e139fa2 (diff)
Core/Players: Fixed ExploredZones size and PLAYER_EXPLORED_ZONES_SIZE desync
Diffstat (limited to 'src/server/game/Achievements/CriteriaHandler.cpp')
-rw-r--r--src/server/game/Achievements/CriteriaHandler.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Achievements/CriteriaHandler.cpp b/src/server/game/Achievements/CriteriaHandler.cpp
index 92390429997..02be080a4a7 100644
--- a/src/server/game/Achievements/CriteriaHandler.cpp
+++ b/src/server/game/Achievements/CriteriaHandler.cpp
@@ -1526,11 +1526,11 @@ bool CriteriaHandler::RequirementsSatisfied(Criteria const* criteria, uint64 mis
if (area->AreaBit < 0)
continue;
- uint16 playerIndexOffset = uint16(uint32(area->AreaBit) / 64);
+ size_t playerIndexOffset = size_t(area->AreaBit) / PLAYER_EXPLORED_ZONES_BITS;
if (playerIndexOffset >= PLAYER_EXPLORED_ZONES_SIZE)
continue;
- uint64 mask = uint64(1) << (area->AreaBit % 64);
+ uint64 mask = uint64(1) << (area->AreaBit % PLAYER_EXPLORED_ZONES_BITS);
if (referencePlayer->m_activePlayerData->ExploredZones[playerIndexOffset] & mask)
{
matchFound = true;
@@ -2271,10 +2271,10 @@ bool CriteriaHandler::ModifierSatisfied(ModifierTreeEntry const* modifier, uint6
return false;
if (areaTable->AreaBit <= 0)
break; // success
- uint32 playerIndexOffset = uint32(areaTable->AreaBit) / 64;
+ size_t playerIndexOffset = size_t(areaTable->AreaBit) / PLAYER_EXPLORED_ZONES_BITS;
if (playerIndexOffset >= PLAYER_EXPLORED_ZONES_SIZE)
break;
- if (!(referencePlayer->m_activePlayerData->ExploredZones[playerIndexOffset] & (UI64LIT(1) << (areaTable->AreaBit % 64))))
+ if (!(referencePlayer->m_activePlayerData->ExploredZones[playerIndexOffset] & (UI64LIT(1) << (areaTable->AreaBit % PLAYER_EXPLORED_ZONES_BITS))))
return false;
break;
}