diff options
author | Rat <none@none> | 2009-08-28 15:48:33 +0200 |
---|---|---|
committer | Rat <none@none> | 2009-08-28 15:48:33 +0200 |
commit | 712da5e1f39880e811b848e20ccf58f99d9cdd67 (patch) | |
tree | e765ce1e7b0acd1dc8013cee2faeed91a3e17368 /src | |
parent | 3094cefe75b908e9769c66a656dd6d1c83a7d766 (diff) |
*fix ressurection in Alterac Valley
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/BattleGroundAV.cpp | 10 | ||||
-rw-r--r-- | src/game/BattleGroundAV.h | 2 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/game/BattleGroundAV.cpp b/src/game/BattleGroundAV.cpp index 4778bdb2384..42d15a6ce84 100644 --- a/src/game/BattleGroundAV.cpp +++ b/src/game/BattleGroundAV.cpp @@ -971,7 +971,7 @@ void BattleGroundAV::EventPlayerAssaultsPoint(Player* player, uint32 object) if( !plr ) continue; if(!ClosestGrave) - ClosestGrave = GetClosestGraveYard(plr->GetPositionX(), plr->GetPositionY(), plr->GetPositionZ(), team); + ClosestGrave = GetClosestGraveYard(plr); else plr->TeleportTo(GetMapId(), ClosestGrave->x, ClosestGrave->y, ClosestGrave->z, plr->GetOrientation()); } @@ -1095,7 +1095,7 @@ void BattleGroundAV::SendMineWorldStates(uint32 mine) } -WorldSafeLocsEntry const* BattleGroundAV::GetClosestGraveYard(float x, float y, float z, uint32 team) +WorldSafeLocsEntry const* BattleGroundAV::GetClosestGraveYard(Player* player) { WorldSafeLocsEntry const* good_entry = NULL; if( GetStatus() == STATUS_IN_PROGRESS) @@ -1104,12 +1104,12 @@ WorldSafeLocsEntry const* BattleGroundAV::GetClosestGraveYard(float x, float y, float mindist = 9999999.0f; for (uint8 i = BG_AV_NODES_FIRSTAID_STATION; i <= BG_AV_NODES_FROSTWOLF_HUT; ++i) { - if (m_Nodes[i].Owner != team || m_Nodes[i].State != POINT_CONTROLED) + if (m_Nodes[i].Owner != player->GetTeam() || m_Nodes[i].State != POINT_CONTROLED) continue; WorldSafeLocsEntry const*entry = sWorldSafeLocsStore.LookupEntry( BG_AV_GraveyardIds[i] ); if( !entry ) continue; - float dist = (entry->x - x)*(entry->x - x)+(entry->y - y)*(entry->y - y); + float dist = (entry->x - player->GetPositionX())*(entry->x - player->GetPositionX())+(entry->y - player->GetPositionY())*(entry->y - player->GetPositionY()); if( mindist > dist ) { mindist = dist; @@ -1119,7 +1119,7 @@ WorldSafeLocsEntry const* BattleGroundAV::GetClosestGraveYard(float x, float y, } // If not, place ghost on starting location if( !good_entry ) - good_entry = sWorldSafeLocsStore.LookupEntry( BG_AV_GraveyardIds[GetTeamIndexByTeamId(team)+7] ); + good_entry = sWorldSafeLocsStore.LookupEntry( BG_AV_GraveyardIds[GetTeamIndexByTeamId(player->GetTeam())+7] ); return good_entry; } diff --git a/src/game/BattleGroundAV.h b/src/game/BattleGroundAV.h index f9f4f46b0ae..306c513ae95 100644 --- a/src/game/BattleGroundAV.h +++ b/src/game/BattleGroundAV.h @@ -1526,7 +1526,7 @@ class BattleGroundAV : public BattleGround void EndBattleGround(uint32 winner); - virtual WorldSafeLocsEntry const* GetClosestGraveYard(float x, float y, float z, uint32 team); + virtual WorldSafeLocsEntry const* GetClosestGraveYard(Player* player); private: /* Nodes occupying */ |