1 #ifndef __LUA_HUD_OBJECTS_H
2 #define __LUA_HUD_OBJECTS_H
3 
4 /*
5 LUA_HUD_OBJECTS.H
6 
7 	Copyright (C) 2009 by Jeremiah Morris
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 HUD objects and globals
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 "items.h"
37 #include "map.h"
38 #include "lua_templates.h"
39 
40 extern char Lua_HUDPlayer_Name[]; // "Player"
41 typedef L_Class<Lua_HUDPlayer_Name> Lua_HUDPlayer;
42 
43 extern char Lua_HUDGame_Name[]; // "Game"
44 typedef L_Class<Lua_HUDGame_Name> Lua_HUDGame;
45 
46 extern char Lua_HUDScreen_Name[]; // "Screen"
47 typedef L_Class<Lua_HUDScreen_Name> Lua_HUDScreen;
48 
49 
50 extern char Lua_InterfaceColor_Name[]; // "interface_color"
51 typedef L_Enum<Lua_InterfaceColor_Name> Lua_InterfaceColor;
52 
53 extern char Lua_InterfaceColors_Name[]; // "InterfaceColors"
54 typedef L_EnumContainer<Lua_InterfaceColors_Name, Lua_InterfaceColor> Lua_InterfaceColors;
55 
56 extern char Lua_InterfaceFont_Name[]; // "interface_font"
57 typedef L_Enum<Lua_InterfaceFont_Name> Lua_InterfaceFont;
58 
59 extern char Lua_InterfaceFonts_Name[]; // "InterfaceFonts"
60 typedef L_EnumContainer<Lua_InterfaceFonts_Name, Lua_InterfaceFont> Lua_InterfaceFonts;
61 
62 extern char Lua_InterfaceRect_Name[]; // "interface_rect"
63 typedef L_Enum<Lua_InterfaceRect_Name> Lua_InterfaceRect;
64 
65 extern char Lua_InterfaceRects_Name[]; // "InterfaceRects"
66 typedef L_EnumContainer<Lua_InterfaceRects_Name, Lua_InterfaceRect> Lua_InterfaceRects;
67 
68 extern char Lua_InventorySection_Name[]; // "inventory_section"
69 typedef L_Enum<Lua_InventorySection_Name> Lua_InventorySection;
70 
71 extern char Lua_InventorySections_Name[]; // "InventorySections"
72 typedef L_EnumContainer<Lua_InventorySections_Name, Lua_InventorySection> Lua_InventorySections;
73 
74 extern char Lua_RendererType_Name[]; // "renderer_type"
75 typedef L_Enum<Lua_RendererType_Name> Lua_RendererType;
76 
77 extern char Lua_RendererTypes_Name[]; // "RendererTypes"
78 typedef L_EnumContainer<Lua_RendererTypes_Name, Lua_RendererType> Lua_RendererTypes;
79 
80 extern char Lua_SensorBlipType_Name[]; // "sensor_blip"
81 typedef L_Enum<Lua_SensorBlipType_Name> Lua_SensorBlipType;
82 
83 extern char Lua_SensorBlipTypes_Name[]; // "SensorBlipTypes"
84 typedef L_EnumContainer<Lua_SensorBlipTypes_Name, Lua_SensorBlipType> Lua_SensorBlipTypes;
85 
86 extern char Lua_TextureType_Name[]; // "texture_type";
87 typedef L_Enum<Lua_TextureType_Name> Lua_TextureType;
88 
89 extern char Lua_TextureTypes_Name[]; // "TextureTypes";
90 typedef L_EnumContainer<Lua_TextureTypes_Name, Lua_TextureType> Lua_TextureTypes;
91 #define NUMBER_OF_LUA_TEXTURE_TYPES 5
92 
93 int Lua_HUDObjects_register(lua_State *L);
94 
95 #endif
96 
97 #endif
98