aboutsummaryrefslogtreecommitdiff
path: root/src/game/Wintergrasp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/Wintergrasp.h')
-rw-r--r--src/game/Wintergrasp.h50
1 files changed, 0 insertions, 50 deletions
diff --git a/src/game/Wintergrasp.h b/src/game/Wintergrasp.h
index 92a7b2acd9b..291a80a5e1d 100644
--- a/src/game/Wintergrasp.h
+++ b/src/game/Wintergrasp.h
@@ -15,33 +15,25 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-
#ifndef TRINITY_WINTERGRASP_H
#define TRINITY_WINTERGRASP_H
-
#include "OutdoorPvPImpl.h"
-
#define ZONE_WINTERGRASP 4197
#define POS_X_CENTER 4700
#define MAX_VEHICLE_PER_WORKSHOP 4
-
const uint32 WintergraspFaction[3] = {1732, 1735, 35};
const uint32 WG_MARK_OF_HONOR = 43589;
const uint32 VehNumWorldState[2] = {3680,3490};
const uint32 MaxVehNumWorldState[2] = {3681,3491};
const uint32 ClockWorldState[5] = {3785,3784,3782,3976,3975};
-
enum WintergraspSpell
{
SPELL_RECRUIT = 37795,
SPELL_CORPORAL = 33280,
SPELL_LIEUTENANT = 55629,
-
SPELL_TENACITY = 58549,
SPELL_TENACITY_VEHICLE = 59911,
-
SPELL_TELEPORT_DALARAN = 53360,
-
SPELL_TOWER_CONTROL = 62064,
SPELL_VICTORY_REWARD = 56902,
SPELL_DEFEAT_REWARD = 58494,
@@ -54,7 +46,6 @@ enum WintergraspSpell
// SPELL_RULERS_OF_WG = 52108,
// SPELL_ESSENCE_OF_WG = 58045,
};
-
enum WintergraspRewardEvent
{
WIN_BATTLE,
@@ -66,11 +57,8 @@ enum WintergraspRewardEvent
WG_REWARD_EVENT_MAX,
};
-
/* Not used / Not implemented
-
const uint16 GameEventWintergraspDefender[2] = {50, 51};
-
enum OutdoorPvP_WG_Sounds
{
OutdoorPvP_WG_SOUND_KEEP_CLAIMED = 8192,
@@ -80,12 +68,10 @@ enum OutdoorPvP_WG_Sounds
OutdoorPvP_WG_SOUND_KEEP_ASSAULTED_HORDE = 8174,
OutdoorPvP_WG_SOUND_NEAR_VICTORY = 8456
};
-
enum DataId
{
DATA_ENGINEER_DIE,
};
-
enum OutdoorPvP_WG_KeepStatus
{
OutdoorPvP_WG_KEEP_TYPE_NEUTRAL = 0,
@@ -97,7 +83,6 @@ enum OutdoorPvP_WG_KeepStatus
OutdoorPvP_WG_KEEP_STATUS_HORDE_OCCUPIED = 4
};
*/
-
enum WintergraspCreType
{
CREATURE_OTHER,
@@ -107,23 +92,19 @@ enum WintergraspCreType
CREATURE_GUARD,
CREATURE_SPECIAL,
};
-
enum BuildingType
{
BUILDING_WALL,
BUILDING_WORKSHOP,
BUILDING_TOWER,
};
-
enum DamageState
{
DAMAGE_INTACT,
DAMAGE_DAMAGED,
DAMAGE_DESTROYED,
};
-
const uint32 AreaPOIIconId[3][3] = {{7,8,9},{4,5,6},{1,2,3}};
-
struct BuildingState
{
explicit BuildingState(uint32 _worldState, TeamId _team, bool asDefault)
@@ -138,17 +119,14 @@ struct BuildingState
GameObject *building;
uint32 *graveTeam;
BuildingType type;
-
void SendUpdate(Player *player) const
{
player->SendUpdateWorldState(worldState, AreaPOIIconId[team][damageState]);
}
-
void FillData(WorldPacket &data) const
{
data << worldState << AreaPOIIconId[team][damageState];
}
-
TeamId GetTeam() const { return team; }
void SetTeam(TeamId t)
{
@@ -156,15 +134,11 @@ struct BuildingState
if(graveTeam)
*graveTeam = TeamId2Team[t];
}
-
private:
TeamId team;
};
-
typedef std::map<uint32, uint32> TeamPairMap;
-
class SiegeWorkshop;
-
class OPvPWintergrasp : public OutdoorPvP
{
protected:
@@ -174,26 +148,18 @@ class OPvPWintergrasp : public OutdoorPvP
public:
explicit OPvPWintergrasp() : m_tenacityStack(0), m_gate(NULL) {}
bool SetupOutdoorPvP();
-
uint32 GetCreatureEntry(uint32 guidlow, const CreatureData *data);
//uint32 GetGameObjectEntry(uint32 guidlow, uint32 entry);
-
void OnCreatureCreate(Creature *creature, bool add);
void OnGameObjectCreate(GameObject *go, bool add);
-
void ProcessEvent(GameObject *obj, uint32 eventId);
-
void HandlePlayerEnterZone(Player *plr, uint32 zone);
void HandlePlayerLeaveZone(Player *plr, uint32 zone);
void HandleKill(Player *killer, Unit *victim);
-
bool Update(uint32 diff);
-
void BroadcastStateChange(BuildingState *state) const;
-
uint32 GetData(uint32 id);
void SetData(uint32 id, uint32 value);
-
void ModifyWorkshopCount(TeamId team, bool add);
uint32 GetTimer() const { return m_timer / 1000; };
TeamId GetTeam() const { return m_defender; };
@@ -201,32 +167,24 @@ class OPvPWintergrasp : public OutdoorPvP
protected:
TeamId m_defender;
int32 m_tenacityStack;
-
BuildingStateMap m_buildingStates;
BuildingState *m_gate;
-
CreatureSet m_creatures;
CreatureSet m_vehicles[2];
GameObjectSet m_gobjects;
-
TeamPairMap m_creEntryPair, m_goDisplayPair;
-
bool m_wartime;
bool m_changeDefender;
uint32 m_timer;
uint32 m_clock[5];
uint32 m_workshopCount[2];
uint32 m_towerCount[2][2];
-
uint32 m_customHonorReward[WG_REWARD_EVENT_MAX];
-
SiegeWorkshop *GetWorkshop(uint32 lowguid) const;
SiegeWorkshop *GetWorkshopByEngGuid(uint32 lowguid) const;
SiegeWorkshop *GetWorkshopByGOGuid(uint32 lowguid) const;
-
void StartBattle();
void EndBattle();
-
void UpdateClock();
void UpdateClockDigit(uint32 &timer, uint32 digit, uint32 mod);
void PromotePlayer(Player *player) const;
@@ -235,20 +193,15 @@ class OPvPWintergrasp : public OutdoorPvP
void UpdateAllWorldObject();
bool UpdateCreatureInfo(Creature *creature) const;
bool UpdateGameObjectInfo(GameObject *go) const;
-
bool CanBuildVehicle(SiegeWorkshop *workshop) const;
WintergraspCreType GetCreatureType(uint32 entry) const;
-
void RebuildAllBuildings();
-
void LieutenantCastSpell(TeamId team, int32 spellId) const;
void VehicleCastSpell(TeamId team, int32 spellId) const;
-
void SendInitWorldStatesTo(Player *player = NULL) const;
void RemoveOfflinePlayerWGAuras();
void RewardMarkOfHonor(Player *player, uint32 count);
};
-
class SiegeWorkshop : public OPvPCapturePoint
{
public:
@@ -257,9 +210,7 @@ class SiegeWorkshop : public OPvPCapturePoint
void ChangeState() {}
void ChangeTeam(TeamId oldteam);
//void DespawnAllVehicles();
-
//bool CanBuildVehicle() const { return m_vehicles.size() < MAX_VEHICLE_PER_WORKSHOP && m_buildingState->damageState != DAMAGE_DESTROYED; }
-
uint32 *m_engEntry;
uint32 m_engGuid;
Creature *m_engineer;
@@ -269,5 +220,4 @@ class SiegeWorkshop : public OPvPCapturePoint
protected:
OPvPWintergrasp *m_wintergrasp;
};
-
#endif