Line data Source code
1 : /*
2 : Minetest
3 : Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>
4 :
5 : This program is free software; you can redistribute it and/or modify
6 : it under the terms of the GNU Lesser General Public License as published by
7 : the Free Software Foundation; either version 2.1 of the License, or
8 : (at your option) any later version.
9 :
10 : This program is distributed in the hope that it will be useful,
11 : but WITHOUT ANY WARRANTY; without even the implied warranty of
12 : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 : GNU Lesser General Public License for more details.
14 :
15 : You should have received a copy of the GNU Lesser General Public License along
16 : with this program; if not, write to the Free Software Foundation, Inc.,
17 : 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 : */
19 :
20 : #ifndef S_PLAYER_H_
21 : #define S_PLAYER_H_
22 :
23 : #include "cpp_api/s_base.h"
24 : #include "irr_v3d.h"
25 : #include "util/string.h"
26 :
27 : struct ToolCapabilities;
28 :
29 0 : class ScriptApiPlayer
30 : : virtual public ScriptApiBase
31 : {
32 : public:
33 : virtual ~ScriptApiPlayer();
34 :
35 : void on_newplayer(ServerActiveObject *player);
36 : void on_dieplayer(ServerActiveObject *player);
37 : bool on_respawnplayer(ServerActiveObject *player);
38 : bool on_prejoinplayer(const std::string &name, const std::string &ip,
39 : std::string *reason);
40 : void on_joinplayer(ServerActiveObject *player);
41 : void on_leaveplayer(ServerActiveObject *player);
42 : void on_cheat(ServerActiveObject *player, const std::string &cheat_type);
43 : bool on_punchplayer(ServerActiveObject *player,
44 : ServerActiveObject *hitter, float time_from_last_punch,
45 : const ToolCapabilities *toolcap, v3f dir, s16 damage);
46 : s16 on_player_hpchange(ServerActiveObject *player, s16 hp_change);
47 : void on_playerReceiveFields(ServerActiveObject *player,
48 : const std::string &formname, const StringMap &fields);
49 : };
50 :
51 :
52 : #endif /* S_PLAYER_H_ */
|