2 * Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #ifndef __BATTLEGROUNDRL_H
19 #define __BATTLEGROUNDRL_H
23 enum BattleGroundRLObjectTypes
25 BG_RL_OBJECT_DOOR_1
= 0,
26 BG_RL_OBJECT_DOOR_2
= 1,
27 BG_RL_OBJECT_BUFF_1
= 2,
28 BG_RL_OBJECT_BUFF_2
= 3,
32 enum BattleGroundRLObjects
34 BG_RL_OBJECT_TYPE_DOOR_1
= 185918,
35 BG_RL_OBJECT_TYPE_DOOR_2
= 185917,
36 BG_RL_OBJECT_TYPE_BUFF_1
= 184663,
37 BG_RL_OBJECT_TYPE_BUFF_2
= 184664
40 class BattleGroundRLScore
: public BattleGroundScore
43 BattleGroundRLScore() {};
44 virtual ~BattleGroundRLScore() {};
48 class BattleGroundRL
: public BattleGround
50 friend class BattleGroundMgr
;
55 void Update(uint32 diff
);
57 /* inherited from BattlegroundClass */
58 virtual void AddPlayer(Player
*plr
);
60 virtual void FillInitialWorldStates(WorldPacket
&d
);
61 virtual void StartingEventCloseDoors();
62 virtual void StartingEventOpenDoors();
64 void RemovePlayer(Player
*plr
, uint64 guid
);
65 void HandleAreaTrigger(Player
*Source
, uint32 Trigger
);
66 bool SetupBattleGround();
67 void HandleKillPlayer(Player
* player
, Player
*killer
);
68 bool HandlePlayerUnderMap(Player
* plr
);