diff --git a/src/sp_lev.c b/src/sp_lev.c index 25411aa1f..2e1b4ab65 100644 --- a/src/sp_lev.c +++ b/src/sp_lev.c @@ -5985,8 +5985,13 @@ lspo_reset_level(lua_State *L) boolean wtower = In_W_tower(u.ux, u.uy, &u.uz); iflags.lua_testing = TRUE; - if (L) + if (L) { + if (gc.coder) { + Free(gc.coder); + gc.coder = NULL; + } create_des_coder(); + } makemap_prepost(TRUE, wtower); gi.in_mklev = TRUE; oinit(); /* assign level dependent obj probabilities */ diff --git a/test/testmove.lua b/test/testmove.lua index da1e0ab83..8ded195d5 100644 --- a/test/testmove.lua +++ b/test/testmove.lua @@ -3,14 +3,14 @@ nh.parse_config("OPTIONS=number_pad:0"); nh.parse_config("OPTIONS=runmode:teleport"); +nh.parse_config("OPTIONS=!timed_delay"); local POS = { x = 10, y = 05 }; local number_pad = 0; function initlev() - nh.debug_flags({mongen = false, hunger = false, overwrite_stairs = true }); - des.level_flags("noflip"); des.reset_level(); + des.level_flags("noflip"); des.level_init({ style = "solidfill", fg = ".", lit = true }); des.teleport_region({ region = {POS.x,POS.y,POS.x,POS.y}, region_islev = true, dir="both" }); des.finalize_level(); @@ -140,6 +140,7 @@ local basicmoves = { }; +nh.debug_flags({mongen = false, hunger = false, overwrite_stairs = true, disable_pline = true }); for k, v in pairs(basicmoves) do initlev(); @@ -179,3 +180,4 @@ for k, v in pairs(basicmoves) do end initlev(); +nh.debug_flags({ disable_pline = false });