TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
KillRewarder.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2008-2016 TrinityCore <http://www.trinitycore.org/>
3  *
4  * This program is free software; you can redistribute it and/or modify it
5  * under the terms of the GNU General Public License as published by the
6  * Free Software Foundation; either version 2 of the License, or (at your
7  * option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12  * more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef KillRewarder_h__
19 #define KillRewarder_h__
20 
21 #include "Define.h"
22 
23 class Player;
24 class Unit;
25 class Group;
26 
28 {
29 public:
30  KillRewarder(Player* killer, Unit* victim, bool isBattleGround);
31 
32  void Reward();
33 
34 private:
35  void _InitXP(Player* player);
36  void _InitGroupData();
37 
38  void _RewardHonor(Player* player);
39  void _RewardXP(Player* player, float rate);
40  void _RewardReputation(Player* player, float rate);
41  void _RewardKillCredit(Player* player);
42  void _RewardPlayer(Player* player, bool isDungeon);
43  void _RewardGroup();
44 
48  float _groupRate;
53  bool _isFullXP;
56  bool _isPvP;
57 };
58 
59 #endif // KillRewarder_h__
uint32 _xp
Definition: KillRewarder.h:52
Player * _killer
Definition: KillRewarder.h:45
uint8 _maxLevel
Definition: KillRewarder.h:54
bool _isFullXP
Definition: KillRewarder.h:53
bool _isBattleGround
Definition: KillRewarder.h:55
float _groupRate
Definition: KillRewarder.h:48
Unit * _victim
Definition: KillRewarder.h:46
uint32 _sumLevel
Definition: KillRewarder.h:51
Player * _maxNotGrayMember
Definition: KillRewarder.h:49
Definition: KillRewarder.h:27
uint32_t uint32
Definition: Define.h:150
bool _isPvP
Definition: KillRewarder.h:56
uint32 _count
Definition: KillRewarder.h:50
#define TC_GAME_API
Definition: Define.h:134
Group * _group
Definition: KillRewarder.h:47
uint8_t uint8
Definition: Define.h:152
Definition: Unit.h:1305
Definition: Group.h:191