1 #ifndef __LUA_MONSTERS_H
2 #define __LUA_MONSTERS_H
3 
4 /*
5 LUA_MONSTERS.H
6 
7 	Copyright (C) 2008 by Gregory Smith
8 
9 	This program is free software; you can redistribute it and/or modify
10 	it under the terms of the GNU General Public License as published by
11 	the Free Software Foundation; either version 3 of the License, or
12 	(at your option) any later version.
13 
14 	This program is distributed in the hope that it will be useful,
15 	but WITHOUT ANY WARRANTY; without even the implied warranty of
16 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 	GNU General Public License for more details.
18 
19 	This license is contained in the file "COPYING",
20 	which is included with this source code; it is available online at
21 	http://www.gnu.org/licenses/gpl.html
22 
23 	Implements Lua monster classes
24 */
25 
26 #include "cseries.h"
27 
28 #ifdef HAVE_LUA
29 extern "C"
30 {
31 #include "lua.h"
32 #include "lauxlib.h"
33 #include "lualib.h"
34 }
35 
36 #include "map.h"
37 #include "monsters.h"
38 #include "lua_templates.h"
39 
40 extern char Lua_Monster_Name[]; // "monster"
41 typedef L_Class<Lua_Monster_Name> Lua_Monster;
42 
43 extern char Lua_Monsters_Name[]; // "Monsters"
44 typedef L_Container<Lua_Monsters_Name, Lua_Monster> Lua_Monsters;
45 
46 extern char Lua_MonsterAction_Name[]; // "monster_action"
47 typedef L_Enum<Lua_MonsterAction_Name> Lua_MonsterAction;
48 
49 extern char Lua_MonsterType_Name[]; // "monster_type"
50 typedef L_Enum<Lua_MonsterType_Name> Lua_MonsterType;
51 
52 int Lua_Monsters_register(lua_State *L);
53 
54 #endif
55 
56 #endif
57