Some variants have a bigroom variant called "Mines of Moria"; this one is very much that, but has several different arrangements of the pillars.
72 lines
2.4 KiB
Lua
72 lines
2.4 KiB
Lua
-- NetHack bigroom bigrm-13.lua $NHDT-Date: 1652196024 2022/05/10 15:20:24 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.0 $
|
|
-- Copyright (c) 2026 by Pasi Kallinen
|
|
-- NetHack may be freely redistributed. See license for details.
|
|
--
|
|
-- Pillars
|
|
|
|
des.level_init({ style = "solidfill", fg = " " });
|
|
des.level_flags("mazelevel", "noflip");
|
|
|
|
des.map([[
|
|
---------------------------------------------------------------------------
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
|.........................................................................|
|
|
---------------------------------------------------------------------------
|
|
]]);
|
|
|
|
local pillar = [[
|
|
---
|
|
| |
|
|
---]];
|
|
|
|
filters = {
|
|
function(x, y) return true; end,
|
|
function(x, y) return (x%2 == 1); end,
|
|
function(x, y) return (((x+y)%2) == 0); end,
|
|
function(x, y) return (y%2 == 1); end,
|
|
function(x, y) return (y%2 == 0); end,
|
|
};
|
|
|
|
idx = math.random(1, #filters);
|
|
|
|
for y = 0,2 do
|
|
for x = 0,6 do
|
|
if (filters[idx](x, y)) then
|
|
des.map({ coord = {12 + x*9, 4 + y*5}, map = pillar, contents=function() end });
|
|
end
|
|
end
|
|
end
|
|
|
|
des.region(selection.area(00,00,75,18), "lit");
|
|
des.wallify();
|
|
des.non_diggable();
|
|
|
|
des.stair("up");
|
|
des.stair("down");
|
|
|
|
for i = 1,15 do
|
|
des.object();
|
|
end
|
|
for i = 1,6 do
|
|
des.trap();
|
|
end
|
|
for i = 1,28 do
|
|
des.monster();
|
|
end
|
|
|