diff --git a/game/modules/tome/data/general/grids/malrok_walls.lua b/game/modules/tome/data/general/grids/malrok_walls.lua new file mode 100644 index 0000000000000000000000000000000000000000..7989b050287c5cea3492bafd2f8120f35c1fdeeb --- /dev/null +++ b/game/modules/tome/data/general/grids/malrok_walls.lua @@ -0,0 +1,141 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009 - 2019 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +----------------------------------------- +-- Dungeony exits +----------------------------------------- +newEntity{ + define_as = "MALROK_UP_WILDERNESS", + type = "floor", subtype = "rocks", + name = "exit to the worldmap", image = "terrain/red_floating_rocks05_01.png", add_mos = {{image="terrain/stair_up_wild.png"}}, + display = '<', color_r=255, color_g=0, color_b=255, + always_remember = true, + notice = true, + change_level = 1, + change_zone = "wilderness", +} + +newEntity{ + define_as = "MALROK_UP", image = "terrain/red_floating_rocks05_01.png", add_mos = {{image="terrain/malrok_wall/malrok_malrok_wall_stairs_up2.png"}}, + type = "floor", subtype = "rocks", + name = "previous level", + display = '<', color_r=255, color_g=255, color_b=0, + notice = true, + always_remember = true, + change_level = -1, +} + +newEntity{ + define_as = "MALROK_DOWN", image = "terrain/red_floating_rocks05_01.png", add_mos = {{image="terrain/malrok_wall/malrok_malrok_wall_stairs_down2.png"}}, + type = "floor", subtype = "rocks", + name = "next level", + display = '>', color_r=255, color_g=255, color_b=0, + notice = true, + always_remember = true, + change_level = 1, +} + +----------------------------------------- +-- Basic floors +----------------------------------------- +newEntity{ + define_as = "MALROK_FLOOR", + type = "floor", subtype = "rocks", + name = "floor", image = "terrain/red_floating_rocks05_01.png", + display = '.', color_r=255, color_g=255, color_b=255, back_color=colors.DARK_GREY, + grow = "MALROK_WALL", +} + +----------------------------------------- +-- Walls +----------------------------------------- +newEntity{ + define_as = "MALROK_WALL", + type = "wall", subtype = "rocks", + name = "wall", image = "terrain/malrok_wall/malrok_wall_block1.png", + display = '#', color_r=255, color_g=255, color_b=255, back_color=colors.GREY, + z = 3, + nice_tiler = { method="wall3d", inner={"MALROK_WALL", 100, 1, 41}, north={"MALROK_WALL_NORTH", 100, 1, 41}, south={"MALROK_WALL_SOUTH", 100, 1, 36}, north_south="MALROK_WALL_NORTH_SOUTH", pillar_4="MALROK_WALL_NORTH_SOUTH", pillar_6="MALROK_WALL_NORTH_SOUTH", pillar_2="MALROK_WALL_SOUTH1", pillar_8="MALROK_WALL_NORTH1", small_pillar="MALROK_WALL_NORTH_SOUTH" }, + always_remember = true, + does_block_move = true, + block_sight = true, + air_level = -20, + can_pass = {pass_wall=1}, +} +for i = 1, 41 do + local ri = math.max(1, i - 20) + newEntity{ base = "MALROK_WALL", define_as = "MALROK_WALL"..i, image = "terrain/malrok_wall/malrok_wall_block"..ri..".png", z = 3} + newEntity{ base = "MALROK_WALL", define_as = "MALROK_WALL_NORTH"..i, image = "terrain/malrok_wall/malrok_wall_block"..ri..".png", z = 3, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}} +end +newEntity{ base = "MALROK_WALL", define_as = "MALROK_WALL_NORTH_SOUTH", image = "terrain/malrok_wall/malrok_wall_wall1.png", z = 3, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}} +newEntity{ base = "MALROK_WALL", define_as = "MALROK_WALL_SOUTH", image = "terrain/malrok_wall/malrok_wall_wall1.png", z = 3} +for i = 1, 36 do newEntity{ base = "MALROK_WALL", define_as = "MALROK_WALL_SOUTH"..i, image = "terrain/malrok_wall/malrok_wall_wall"..i..".png", z = 3} end + +----------------------------------------- +-- Walls +----------------------------------------- +newEntity{ + define_as = "MALROK_HARDWALL", + type = "wall", subtype = "rocks", + name = "wall", image = "terrain/malrok_wall/malrok_wall_block1.png", + display = '#', color_r=255, color_g=255, color_b=255, back_color=colors.GREY, + z = 3, + nice_tiler = { method="wall3d", inner={"MALROK_HARDWALL", 100, 1, 3}, north={"MALROK_HARDWALL_NORTH", 100, 1, 3}, south={"MALROK_HARDWALL_SOUTH", 40, 1, 11}, north_south="MALROK_HARDWALL_NORTH_SOUTH", pillar_4="MALROK_HARDWALL_NORTH_SOUTH", pillar_6="MALROK_HARDWALL_NORTH_SOUTH", pillar_2="MALROK_HARDWALL_SOUTH1", pillar_8="MALROK_HARDWALL_NORTH", small_pillar="MALROK_HARDWALL_NORTH_SOUTH" }, + always_remember = true, + does_block_move = true, + block_sight = true, + air_level = -20, +} +for i = 1, 3 do + newEntity{ base = "MALROK_HARDWALL", define_as = "MALROK_HARDWALL"..i, image = "terrain/malrok_wall/malrok_wall_block"..i..".png", z = 3} + newEntity{ base = "MALROK_HARDWALL", define_as = "MALROK_HARDWALL_NORTH"..i, image = "terrain/malrok_wall/malrok_wall_block"..i..".png", z = 3, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}} +end +newEntity{ base = "MALROK_HARDWALL", define_as = "MALROK_HARDWALL_NORTH_SOUTH", image = "terrain/malrok_wall/malrok_wall_wall1.png", z = 3, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}} +newEntity{ base = "MALROK_HARDWALL", define_as = "MALROK_HARDWALL_SOUTH", image = "terrain/malrok_wall/malrok_wall_wall1.png", z = 3} +for i = 1, 11 do newEntity{ base = "MALROK_HARDWALL", define_as = "MALROK_HARDWALL_SOUTH"..i, image = "terrain/malrok_wall/malrok_wall_wall"..i..".png", z = 3} end + +----------------------------------------- +-- Doors +----------------------------------------- +newEntity{ + define_as = "MALROK_DOOR", + type = "wall", subtype = "rocks", + name = "door", image = "terrain/malrok_wall/malrok_granite_door1.png", + display = '+', color_r=238, color_g=154, color_b=77, back_color=colors.DARK_UMBER, + nice_tiler = { method="door3d", north_south="MALROK_DOOR_VERT", west_east="MALROK_DOOR_HORIZ" }, + notice = true, + always_remember = true, + block_sight = true, + is_door = true, + door_opened = "MALROK_DOOR_OPEN", + dig = "FLOOR", + can_pass = {pass_wall=1}, +} +newEntity{ + define_as = "MALROK_DOOR_OPEN", + type = "wall", subtype = "rocks", + name = "open door", image="terrain/malrok_wall/malrok_granite_door1_open.png", + display = "'", color_r=238, color_g=154, color_b=77, back_color=colors.DARK_GREY, + always_remember = true, + door_closed = "MALROK_DOOR", +} +newEntity{ base = "MALROK_DOOR", define_as = "MALROK_DOOR_HORIZ", image = "terrain/red_floating_rocks05_01.png", add_mos={{image = "terrain/malrok_wall/malrok_wall_closed_doors1.png"}}, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}, door_opened = "MALROK_DOOR_HORIZ_OPEN"} +newEntity{ base = "MALROK_DOOR_OPEN", define_as = "MALROK_DOOR_HORIZ_OPEN", image = "terrain/red_floating_rocks05_01.png", add_mos={{image = "terrain/malrok_wall/malrok_wall_open_doors1.png"}}, add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_top_block1.png", z=18, display_y=-1}}, door_closed = "MALROK_DOOR_HORIZ"} +newEntity{ base = "MALROK_DOOR", define_as = "MALROK_DOOR_VERT", image = "terrain/red_floating_rocks05_01.png", add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_door1_vert.png", z=17}, class.new{image="terrain/malrok_wall/malrok_wall_door1_vert_north.png", z=18, display_y=-1}}, door_opened = "MALROK_DOOR_OPEN_VERT"} +newEntity{ base = "MALROK_DOOR_OPEN", define_as = "MALROK_DOOR_OPEN_VERT", image = "terrain/red_floating_rocks05_01.png", add_displays = {class.new{image="terrain/malrok_wall/malrok_wall_door1_open_vert.png", z=17}, class.new{image="terrain/malrok_wall/malrok_wall_door1_open_vert_north.png", z=18, display_y=-1}}, door_closed = "MALROK_DOOR_VERT"}