diff --git a/src/lua_maplib.c b/src/lua_maplib.c index b4565121d..4b90bc013 100644 --- a/src/lua_maplib.c +++ b/src/lua_maplib.c @@ -33,7 +33,13 @@ enum sector_e { sector_floorheight, sector_ceilingheight, sector_floorpic, + sector_floorxoffs, + sector_flooryoffs, + sector_floorpicangle, sector_ceilingpic, + sector_ceilingxoffs, + sector_ceilingyoffs, + sector_ceilingpicangle, sector_lightlevel, sector_floorlightlevel, sector_floorlightabsolute, @@ -63,7 +69,13 @@ static const char *const sector_opt[] = { "floorheight", "ceilingheight", "floorpic", + "floorxoffs", + "flooryoffs", + "floorpicangle", "ceilingpic", + "ceilingxoffs", + "ceilingyoffs", + "ceilingpicangle", "lightlevel", "floorlightlevel", "floorlightabsolute", @@ -607,6 +619,21 @@ static int sector_get(lua_State *L) lua_pushlstring(L, levelflat->name, i); return 1; } + case sector_floorxoffs: + { + lua_pushfixed(L, sector->floor_xoffs); + return 1; + } + case sector_flooryoffs: + { + lua_pushfixed(L, sector->floor_yoffs); + return 1; + } + case sector_floorpicangle: + { + lua_pushangle(L, sector->floorpic_angle); + return 1; + } case sector_ceilingpic: // ceilingpic { levelflat_t *levelflat = &levelflats[sector->ceilingpic]; @@ -616,6 +643,21 @@ static int sector_get(lua_State *L) lua_pushlstring(L, levelflat->name, i); return 1; } + case sector_ceilingxoffs: + { + lua_pushfixed(L, sector->ceiling_xoffs); + return 1; + } + case sector_ceilingyoffs: + { + lua_pushfixed(L, sector->ceiling_yoffs); + return 1; + } + case sector_ceilingpicangle: + { + lua_pushangle(L, sector->ceilingpic_angle); + return 1; + } case sector_lightlevel: lua_pushinteger(L, sector->lightlevel); return 1; @@ -751,9 +793,27 @@ static int sector_set(lua_State *L) case sector_floorpic: sector->floorpic = P_AddLevelFlatRuntime(luaL_checkstring(L, 3)); break; + case sector_floorxoffs: + sector->floor_xoffs = luaL_checkfixed(L, 3); + break; + case sector_flooryoffs: + sector->floor_yoffs = luaL_checkfixed(L, 3); + break; + case sector_floorpicangle: + sector->floorpic_angle = luaL_checkangle(L, 3); + break; case sector_ceilingpic: sector->ceilingpic = P_AddLevelFlatRuntime(luaL_checkstring(L, 3)); break; + case sector_ceilingxoffs: + sector->ceiling_xoffs = luaL_checkfixed(L, 3); + break; + case sector_ceilingyoffs: + sector->ceiling_yoffs = luaL_checkfixed(L, 3); + break; + case sector_ceilingpicangle: + sector->ceilingpic_angle = luaL_checkangle(L, 3); + break; case sector_lightlevel: sector->lightlevel = (INT16)luaL_checkinteger(L, 3); break;