Implemented lua, shaking out latent bugs

This commit is contained in:
2015-07-08 02:48:46 +10:00
parent 56ae0a13c9
commit f254c9d88f
11 changed files with 173 additions and 8 deletions
+2
View File
@@ -104,6 +104,8 @@ static int unloadRegion(lua_State* L) {
return 0;
}
//TODO: check that parameters are not null
static int setOnLoad(lua_State* L) {
RegionPagerLua* pager = reinterpret_cast<RegionPagerLua*>(lua_touserdata(L, 1));
luaL_unref(L, LUA_REGISTRYINDEX, pager->GetLoadReference());
+2
View File
@@ -28,6 +28,8 @@ RegionPagerBase::~RegionPagerBase() {
UnloadAll();
};
//TODO: add nullptr checks to the calls to GetRegion()
Region::type_t RegionPagerBase::SetTile(int x, int y, int z, Region::type_t v) {
Region* ptr = GetRegion(x, y);
return ptr->SetTile(x - ptr->GetX(), y - ptr->GetY(), z, v);
+2
View File
@@ -28,6 +28,8 @@
#include <functional>
#include <string>
//NOTE: set the lua hook before use
class RegionPagerLua : public RegionPagerBase {
public:
RegionPagerLua() = default;