diff options
Diffstat (limited to 'src/game/Wintergrasp.h')
-rw-r--r-- | src/game/Wintergrasp.h | 50 |
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 |