diff --git a/src/lua_baselib.c b/src/lua_baselib.c index 97d2fdc24..767ab2dd3 100644 --- a/src/lua_baselib.c +++ b/src/lua_baselib.c @@ -2051,12 +2051,15 @@ static int lib_evCrumbleChain(lua_State *L) ffloor_t *rover = NULL; NOHUD INLEVEL - if (lua_isuserdata(L, 2)) + if (!lua_isnone(L, 2)) { - sec = *((sector_t **)luaL_checkudata(L, 1, META_SECTOR)); + if (!lua_isnil(L, 1)) + { + sec = *((sector_t **)luaL_checkudata(L, 1, META_SECTOR)); + if (!sec) + return LUA_ErrInvalid(L, "sector_t"); + } rover = *((ffloor_t **)luaL_checkudata(L, 2, META_FFLOOR)); - if (!sec) - return LUA_ErrInvalid(L, "sector_t"); } else rover = *((ffloor_t **)luaL_checkudata(L, 1, META_FFLOOR));