1 #include "configmanager.h"
4 static std::map
<std::string
, int> *scr
= NULL
;
5 static std::map
<std::string
, Ponto
> *play
= NULL
;
6 static std::list
<std::string
> *m
= NULL
;
8 static int regscreen(lua_State
*L
) {
9 const char *name
= lua_tostring(L
, 1);
10 double value
= lua_tonumber(L
, 2);
11 (*scr
)[name
] = (int) value
;
15 static int regplayer(lua_State
*L
) {
16 const char *name
= lua_tostring(L
, 1);
17 double x
= lua_tonumber(L
, 2);
18 double y
= lua_tonumber(L
, 3);
19 (*play
)[name
] = Ponto(x
, y
);
23 static int regplayerhp(lua_State
*L
) {
24 const char *name
= lua_tostring(L
, 1);
25 double x
= lua_tonumber(L
, 2);
30 static int regmap(lua_State
*L
) {
31 m
->push_back(lua_tostring(L
, 1));
35 ConfigManager::ConfigManager() {
39 std::string
ConfigManager::previousMap() {
40 return map
!= maps
.begin() ? *(--map
) : *map
;
43 std::string
ConfigManager::currentMap() {
47 std::string
ConfigManager::nextMap() {
48 return map
!= --(maps
.end()) ? *(++map
) : *map
;
51 void ConfigManager::load() {
61 registerFunction(lstate
, "regscreen", regscreen
);
62 registerFunction(lstate
, "regplayer", regplayer
);
63 registerFunction(lstate
, "regplayerhp", regplayerhp
);
64 registerFunction(lstate
, "regmap", regmap
);
65 doLuaFile(lstate
,"configmanager.lua");
66 doLuaFile(lstate
,"config.lua");