diff options
author | Spp <none@none> | 2010-04-08 11:49:34 +0200 |
---|---|---|
committer | Spp <none@none> | 2010-04-08 11:49:34 +0200 |
commit | 61faf0cd107932e28c906ddc35aee3af29bc1a8d (patch) | |
tree | 368527532d9c2d805b6d02b3171c33d5886a97f7 | |
parent | 4635fbc0201846721287a1eb730491262237babd (diff) |
SOTA: Fix graveyard respawn location.
Thanks to AntiDiavol for pointing this bug... twice
Closes issue 1516
--HG--
branch : trunk
-rw-r--r-- | src/game/BattleGroundSA.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/game/BattleGroundSA.cpp b/src/game/BattleGroundSA.cpp index c237f467aee..c3e81c5ddea 100644 --- a/src/game/BattleGroundSA.cpp +++ b/src/game/BattleGroundSA.cpp @@ -526,6 +526,7 @@ WorldSafeLocsEntry const* BattleGroundSA::GetClosestGraveYard(Player* player) { uint32 safeloc = 0; WorldSafeLocsEntry const* ret; + WorldSafeLocsEntry const* closest; float dist, nearest; float x,y,z; @@ -536,23 +537,24 @@ WorldSafeLocsEntry const* BattleGroundSA::GetClosestGraveYard(Player* player) else safeloc = BG_SA_GYEntries[BG_SA_DEFENDER_LAST_GY]; - ret = sWorldSafeLocsStore.LookupEntry(safeloc); - nearest = sqrt((ret->x - x)*(ret->x - x) + (ret->y - y)*(ret->y - y)+(ret->z - z)*(ret->z - z)); + closest = sWorldSafeLocsStore.LookupEntry(safeloc); + nearest = sqrt((closest->x - x)*(closest->x - x) + (closest->y - y)*(closest->y - y)+(closest->z - z)*(closest->z - z)); for (uint8 i = BG_SA_RIGHT_CAPTURABLE_GY; i < BG_SA_MAX_GY; i++) { if (GraveyardStatus[i] != player->GetTeamId()) continue; + ret = sWorldSafeLocsStore.LookupEntry(BG_SA_GYEntries[i]); dist = sqrt((ret->x - x)*(ret->x - x) + (ret->y - y)*(ret->y - y)+(ret->z - z)*(ret->z - z)); if (dist < nearest) { - ret = sWorldSafeLocsStore.LookupEntry(BG_SA_GYEntries[i]); + closest = ret; nearest = dist; } } - return ret; + return closest; } void BattleGroundSA::SendTime() |