*Backed out changeset 3be01fb200a5
--HG-- branch : trunk
This commit is contained in:
@@ -15,9 +15,12 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef OUTDOOR_PVP_NA_
|
||||
#define OUTDOOR_PVP_NA_
|
||||
|
||||
// TODO: "sometimes" set to neutral
|
||||
|
||||
#include "OutdoorPvPImpl.h"
|
||||
enum OutdoorPvPNASpells
|
||||
{
|
||||
@@ -28,102 +31,129 @@ enum OutdoorPvPNASpells
|
||||
// kill credit for pks
|
||||
const uint32 NA_CREDIT_MARKER = 24867;
|
||||
const uint32 NA_GUARDS_MAX = 15;
|
||||
|
||||
const uint32 NA_BUFF_ZONE = 3518;
|
||||
|
||||
const uint32 NA_HALAA_GRAVEYARD = 993;
|
||||
|
||||
const uint32 NA_HALAA_GRAVEYARD_ZONE = 3518; // need to add zone id, not area id
|
||||
|
||||
const uint32 NA_RESPAWN_TIME = 3600000; // one hour to capture after defeating all guards
|
||||
|
||||
const uint32 NA_GUARD_CHECK_TIME = 500; // every half second
|
||||
|
||||
enum OutdoorPvPNAWorldStates{
|
||||
NA_UI_HORDE_GUARDS_SHOW = 2503,
|
||||
NA_UI_ALLIANCE_GUARDS_SHOW = 2502,
|
||||
NA_UI_GUARDS_MAX = 2493,
|
||||
NA_UI_GUARDS_LEFT = 2491,
|
||||
|
||||
NA_UI_TOWER_SLIDER_DISPLAY = 2495,
|
||||
NA_UI_TOWER_SLIDER_POS = 2494,
|
||||
NA_UI_TOWER_SLIDER_N = 2497,
|
||||
|
||||
NA_MAP_WYVERN_NORTH_NEU_H = 2762,
|
||||
NA_MAP_WYVERN_NORTH_NEU_A = 2662,
|
||||
NA_MAP_WYVERN_NORTH_H = 2663,
|
||||
NA_MAP_WYVERN_NORTH_A = 2664,
|
||||
|
||||
NA_MAP_WYVERN_SOUTH_NEU_H = 2760,
|
||||
NA_MAP_WYVERN_SOUTH_NEU_A = 2670,
|
||||
NA_MAP_WYVERN_SOUTH_H = 2668,
|
||||
NA_MAP_WYVERN_SOUTH_A = 2669,
|
||||
|
||||
NA_MAP_WYVERN_WEST_NEU_H = 2761,
|
||||
NA_MAP_WYVERN_WEST_NEU_A = 2667,
|
||||
NA_MAP_WYVERN_WEST_H = 2665,
|
||||
NA_MAP_WYVERN_WEST_A = 2666,
|
||||
|
||||
NA_MAP_WYVERN_EAST_NEU_H = 2763,
|
||||
NA_MAP_WYVERN_EAST_NEU_A = 2659,
|
||||
NA_MAP_WYVERN_EAST_H = 2660,
|
||||
NA_MAP_WYVERN_EAST_A = 2661,
|
||||
|
||||
NA_MAP_HALAA_NEUTRAL = 2671,
|
||||
NA_MAP_HALAA_NEU_A = 2676,
|
||||
NA_MAP_HALAA_NEU_H = 2677,
|
||||
NA_MAP_HALAA_HORDE = 2672,
|
||||
NA_MAP_HALAA_ALLIANCE = 2673
|
||||
};
|
||||
|
||||
const uint32 FLIGHT_NODES_NUM = 4;
|
||||
|
||||
// used to access the elements of Horde/AllyControlGOs
|
||||
enum ControlGOTypes{
|
||||
NA_ROOST_S = 0,
|
||||
NA_ROOST_W = 1,
|
||||
NA_ROOST_N = 2,
|
||||
NA_ROOST_E = 3,
|
||||
|
||||
NA_BOMB_WAGON_S = 4,
|
||||
NA_BOMB_WAGON_W = 5,
|
||||
NA_BOMB_WAGON_N = 6,
|
||||
NA_BOMB_WAGON_E = 7,
|
||||
|
||||
NA_DESTROYED_ROOST_S = 8,
|
||||
NA_DESTROYED_ROOST_W = 9,
|
||||
NA_DESTROYED_ROOST_N = 10,
|
||||
NA_DESTROYED_ROOST_E = 11,
|
||||
|
||||
NA_CONTROL_GO_NUM = 12
|
||||
};
|
||||
|
||||
const uint32 FlightPathStartNodes[FLIGHT_NODES_NUM] = {103,105,107,109};
|
||||
const uint32 FlightPathEndNodes[FLIGHT_NODES_NUM] = {104,106,108,110};
|
||||
|
||||
enum FlightSpellsNA{
|
||||
NA_SPELL_FLY_SOUTH = 32059,
|
||||
NA_SPELL_FLY_WEST = 32068,
|
||||
NA_SPELL_FLY_NORTH = 32075,
|
||||
NA_SPELL_FLY_EAST = 32081
|
||||
};
|
||||
|
||||
// spawned when the alliance is attacking, horde is in control
|
||||
const go_type HordeControlGOs[NA_CONTROL_GO_NUM] = {
|
||||
{182267,530,-1815.8,8036.51,-26.2354,-2.89725,0,0,0.992546,-0.121869}, //ALLY_ROOST_SOUTH
|
||||
{182280,530,-1507.95,8132.1,-19.5585,-1.3439,0,0,0.622515,-0.782608}, //ALLY_ROOST_WEST
|
||||
{182281,530,-1384.52,7779.33,-11.1663,-0.575959,0,0,0.284015,-0.95882}, //ALLY_ROOST_NORTH
|
||||
{182282,530,-1650.11,7732.56,-15.4505,-2.80998,0,0,0.986286,-0.165048}, //ALLY_ROOST_EAST
|
||||
|
||||
{182222,530,-1825.4022,8039.2602,-26.08,-2.89725,0,0,0.992546,-0.121869}, //HORDE_BOMB_WAGON_SOUTH
|
||||
{182272,530,-1515.37,8136.91,-20.42,-1.3439,0,0,0.622515,-0.782608}, //HORDE_BOMB_WAGON_WEST
|
||||
{182273,530,-1377.95,7773.44,-10.31,-0.575959,0,0,0.284015,-0.95882}, //HORDE_BOMB_WAGON_NORTH
|
||||
{182274,530,-1659.87,7733.15,-15.75,-2.80998,0,0,0.986286,-0.165048}, //HORDE_BOMB_WAGON_EAST
|
||||
|
||||
{182266,530,-1815.8,8036.51,-26.2354,-2.89725,0,0,0.992546,-0.121869}, //DESTROYED_ALLY_ROOST_SOUTH
|
||||
{182275,530,-1507.95,8132.1,-19.5585,-1.3439,0,0,0.622515,-0.782608}, //DESTROYED_ALLY_ROOST_WEST
|
||||
{182276,530,-1384.52,7779.33,-11.1663,-0.575959,0,0,0.284015,-0.95882}, //DESTROYED_ALLY_ROOST_NORTH
|
||||
{182277,530,-1650.11,7732.56,-15.4505,-2.80998,0,0,0.986286,-0.165048} //DESTROYED_ALLY_ROOST_EAST
|
||||
};
|
||||
|
||||
// spawned when the horde is attacking, alliance is in control
|
||||
const go_type AllianceControlGOs[NA_CONTROL_GO_NUM] = {
|
||||
{182301,530,-1815.8,8036.51,-26.2354,-2.89725,0,0,0.992546,-0.121869}, //HORDE_ROOST_SOUTH
|
||||
{182302,530,-1507.95,8132.1,-19.5585,-1.3439,0,0,0.622515,-0.782608}, //HORDE_ROOST_WEST
|
||||
{182303,530,-1384.52,7779.33,-11.1663,-0.575959,0,0,0.284015,-0.95882}, //HORDE_ROOST_NORTH
|
||||
{182304,530,-1650.11,7732.56,-15.4505,-2.80998,0,0,0.986286,-0.165048}, //HORDE_ROOST_EAST
|
||||
|
||||
{182305,530,-1825.4022,8039.2602,-26.08,-2.89725,0,0,0.992546,-0.121869}, //ALLY_BOMB_WAGON_SOUTH
|
||||
{182306,530,-1515.37,8136.91,-20.42,-1.3439,0,0,0.622515,-0.782608}, //ALLY_BOMB_WAGON_WEST
|
||||
{182307,530,-1377.95,7773.44,-10.31,-0.575959,0,0,0.284015,-0.95882}, //ALLY_BOMB_WAGON_NORTH
|
||||
{182308,530,-1659.87,7733.15,-15.75,-2.80998,0,0,0.986286,-0.165048}, //ALLY_BOMB_WAGON_EAST
|
||||
|
||||
{182297,530,-1815.8,8036.51,-26.2354,-2.89725,0,0,0.992546,-0.121869}, //DESTROYED_HORDE_ROOST_SOUTH
|
||||
{182298,530,-1507.95,8132.1,-19.5585,-1.3439,0,0,0.622515,-0.782608}, //DESTROYED_HORDE_ROOST_WEST
|
||||
{182299,530,-1384.52,7779.33,-11.1663,-0.575959,0,0,0.284015,-0.95882}, //DESTROYED_HORDE_ROOST_NORTH
|
||||
{182300,530,-1650.11,7732.56,-15.4505,-2.80998,0,0,0.986286,-0.165048} //DESTROYED_HORDE_ROOST_EAST
|
||||
};
|
||||
|
||||
enum ControlNPCTypes{
|
||||
NA_NPC_RESEARCHER = 0,
|
||||
NA_NPC_QUARTERMASTER,
|
||||
NA_NPC_BLADE_MERCHANT,
|
||||
NA_NPC_FOOD_MERCHANT,
|
||||
NA_NPC_AMMO,
|
||||
|
||||
NA_NPC_GUARD_01,
|
||||
NA_NPC_GUARD_02,
|
||||
NA_NPC_GUARD_03,
|
||||
@@ -139,8 +169,10 @@ enum ControlNPCTypes{
|
||||
NA_NPC_GUARD_13,
|
||||
NA_NPC_GUARD_14,
|
||||
NA_NPC_GUARD_15,
|
||||
|
||||
NA_CONTROL_NPC_NUM
|
||||
};
|
||||
|
||||
const creature_type HordeControlNPCs[NA_CONTROL_NPC_NUM] = {
|
||||
{18816,67,530,-1523.92,7951.76,-17.6942,3.51172},
|
||||
{18821,67,530,-1527.75,7952.46,-17.6948,3.99317},
|
||||
@@ -163,6 +195,7 @@ const creature_type HordeControlNPCs[NA_CONTROL_NPC_NUM] = {
|
||||
{18192,67,530,-1545.57,7935.83,-21.13,3.448},
|
||||
{18192,67,530,-1550.86,7937.56,-21.7,3.801}
|
||||
};
|
||||
|
||||
const creature_type AllianceControlNPCs[NA_CONTROL_NPC_NUM] = {
|
||||
{18817,469,530,-1591.18,8020.39,-22.2042,4.59022},
|
||||
{18822,469,530,-1588.0,8019.0,-22.2042,4.06662},
|
||||
@@ -185,12 +218,14 @@ const creature_type AllianceControlNPCs[NA_CONTROL_NPC_NUM] = {
|
||||
{18256,469,530,-1585.73,7994.68,-23.29,4.439},
|
||||
{18256,469,530,-1595.5,7991.27,-23.53,4.738}
|
||||
};
|
||||
|
||||
enum WyvernStates{
|
||||
WYVERN_NEU_HORDE = 1,
|
||||
WYVERN_NEU_ALLIANCE = 2,
|
||||
WYVERN_HORDE = 4,
|
||||
WYVERN_ALLIANCE = 8
|
||||
};
|
||||
|
||||
enum HalaaStates{
|
||||
HALAA_N = 1,
|
||||
HALAA_N_A = 2,
|
||||
@@ -198,6 +233,7 @@ enum HalaaStates{
|
||||
HALAA_N_H = 8,
|
||||
HALAA_H = 16
|
||||
};
|
||||
|
||||
class Unit;
|
||||
class Creature;
|
||||
class OutdoorPvPNA;
|
||||
@@ -219,12 +255,15 @@ public:
|
||||
protected:
|
||||
// called when a faction takes control
|
||||
void FactionTakeOver(uint32 team);
|
||||
|
||||
void DeSpawnNPCs();
|
||||
void DeSpawnGOs();
|
||||
void SpawnNPCsForTeam(uint32 team);
|
||||
void SpawnGOsForTeam(uint32 team);
|
||||
|
||||
void UpdateWyvernRoostWorldState(uint32 roost);
|
||||
void UpdateHalaaWorldState();
|
||||
|
||||
private:
|
||||
bool m_capturable;
|
||||
uint32 m_GuardsAlive;
|
||||
@@ -237,6 +276,7 @@ private:
|
||||
uint32 m_RespawnTimer;
|
||||
uint32 m_GuardCheckTimer;
|
||||
};
|
||||
|
||||
class OutdoorPvPNA : public OutdoorPvP
|
||||
{
|
||||
friend class OPvPCapturePointNA;
|
||||
@@ -252,5 +292,6 @@ public:
|
||||
private:
|
||||
OPvPCapturePointNA * m_obj;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user