Files
nethack/dat/bigrm-1.lua
Pasi Kallinen 44f7d44e94 Make lua selection line create a new selection
... instead of modifying the one given as a parameter.

Also add some tests for it.
2020-02-22 14:23:36 +02:00

70 lines
2.5 KiB
Lua

des.level_init({ style = "solidfill", fg = " " });
des.level_flags("mazelevel", "noflip");
des.map([[
---------------------------------------------------------------------------
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
|.........................................................................|
---------------------------------------------------------------------------
]]);
if math.random(0,99) < 75 then
local terrains = { "-", "F", "L", "T", "C" };
local tidx = math.random(1, #terrains);
local choice = math.random(0, 4);
if choice == 0 then
-- one horizontal line
des.terrain(selection.line(10,8, 65,8), terrains[tidx]);
elseif choice == 1 then
-- two vertical lines
local sel = selection.line(15,4, 15, 13) | selection.line(59,4, 59, 13);
des.terrain(sel, terrains[tidx]);
elseif choice == 2 then
-- plus sign
local sel = selection.line(10,8, 64, 8) | selection.line(37,3, 37, 14);
des.terrain(sel, terrains[tidx]);
elseif choice == 3 then
-- brackets: [ ]
des.terrain(selection.rect(4,4, 70,13), terrains[tidx]);
local sel = selection.line(25,4, 50,4) | selection.line(25,13, 50,13);
des.terrain(sel, '.');
else
-- nothing
end
end
des.region(selection.area(01,01, 73, 16), "lit");
des.stair("up");
des.stair("down");
des.non_diggable();
for i = 1,15 do
des.object();
end
for i = 1,6 do
des.trap();
end
for i = 1,28 do
des.monster();
end