diff --git a/game/modules/tome/class/Grid.lua b/game/modules/tome/class/Grid.lua index 6218f21444cf03c1a6cef43e3344b5081c9a8ad3..1ee49e93ef60afbf37606668fd6947cdc87af645 100644 --- a/game/modules/tome/class/Grid.lua +++ b/game/modules/tome/class/Grid.lua @@ -106,17 +106,20 @@ function _M:tooltip(x, y) end --- Generate sub entities to make nice trees -function _M:makeTrees(base, max) +function _M:makeTrees(base, max, bigheight_limit) local function makeTree(nb, z) local inb = 4 - nb + local treeid = rng.range(1, max or 5) return engine.Entity.new{ z = z, - display_scale = rng.float(0.5 + inb / 6, 1.3), + display_scale = 1, + display_scale = rng.float(0.5 + inb / 6, 1), display_x = rng.float(-1 / 3 * nb / 3, 1 / 3 * nb / 3), - display_y = rng.float(-1 / 3 * nb / 3, 1 / 3 * nb / 3), + display_y = rng.float(-1 / 3 * nb / 3, 1 / 3 * nb / 3) - (treeid < (bigheight_limit or 9) and 0 or 1), display_on_seen = true, display_on_remember = true, - image = (base or "terrain/tree_alpha")..rng.range(1,max or 5)..".png", + display_h = treeid < (bigheight_limit or 9) and 1 or 2, + image = (base or "terrain/tree_alpha")..treeid..".png", } end diff --git a/game/modules/tome/data/birth/descriptors.lua b/game/modules/tome/data/birth/descriptors.lua index cdbd015df50eb0b3698a6356f88c02ee483638b8..ece77474a7ce16d6ff28dbe29cf4fd0c523539f6 100644 --- a/game/modules/tome/data/birth/descriptors.lua +++ b/game/modules/tome/data/birth/descriptors.lua @@ -81,7 +81,7 @@ newBirthDescriptor{ {type="lite", subtype="lite", name="brass lantern", ego_chance=-1000}, }, make_tile = function(e) - e.image = "player/"..e.descriptor.subrace:lower().."_"..e.descriptor.sex:lower()..".png" + if not e.image then e.image = "player/"..e.descriptor.subrace:lower():gsub("[^a-z0-9_]", "_").."_"..e.descriptor.sex:lower():gsub("[^a-z0-9_]", "_")..".png" end end, }, } @@ -127,6 +127,7 @@ newBirthDescriptor{ no_birth_levelup = true, easy_mode_lifes = 99999, __game_difficulty = 1, + __allow_rod_recall = false, }, } newBirthDescriptor{ diff --git a/game/modules/tome/data/general/encounters/maj-eyal.lua b/game/modules/tome/data/general/encounters/maj-eyal.lua index e36bae78960bde91c77f9e84558e72cdfb002301..1b089106d581cff39066489e57d359f0c5453f1c 100644 --- a/game/modules/tome/data/general/encounters/maj-eyal.lua +++ b/game/modules/tome/data/general/encounters/maj-eyal.lua @@ -247,7 +247,7 @@ newEntity{ local g = mod.class.WorldNPC.new{ name="Agrimley the Hermit", - type="humanoid", subtype="elf", faction="angolwen", + type="humanoid", subtype="human", faction="neutral", display='@', color=colors.BLUE, can_talk = "alchemist-hermit", unit_power = 300, diff --git a/game/modules/tome/data/general/grids/forest.lua b/game/modules/tome/data/general/grids/forest.lua index 53d140dec30faaba72e59c48c896dd3f839e5e5d..c71df9f1218e68e038c6efbd16e322c1e54458b9 100644 --- a/game/modules/tome/data/general/grids/forest.lua +++ b/game/modules/tome/data/general/grids/forest.lua @@ -23,31 +23,30 @@ newEntity{ name = "grass", image = "terrain/grass.png", display = '.', color=colors.LIGHT_GREEN, back_color={r=44,g=95,b=43}, grow = "TREE", + nice_tiler = { method="replace", base={"GRASS_PATCH", 70, 1, 15}}, } +for i = 1, 12 do newEntity{ base = "GRASS", define_as = "GRASS_PATCH"..i, image = "terrain/grass"..(i<7 and "" or "2")..".png" } end -for i = 1, 20 do newEntity{ - define_as = "TREE"..(i > 1 and i or ""), + define_as = "TREE", type = "wall", subtype = "grass", name = "tree", - image = "terrain/grass.png", - add_displays = class:makeTrees("terrain/tree_alpha"), + image = "terrain/tree.png", display = '#', color=colors.LIGHT_GREEN, back_color={r=44,g=95,b=43}, always_remember = true, can_pass = {pass_tree=1}, does_block_move = true, block_sight = true, dig = "GRASS", + nice_tiler = { method="replace", base={"TREE", 100, 1, 30}}, } -end +for i = 1, 30 do newEntity{ base="TREE", define_as = "TREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 13, 9)} end -for i = 1, 20 do newEntity{ - define_as = "HARDTREE"..(i > 1 and i or ""), + define_as = "HARDTREE, type = "wall", subtype = "grass", name = "tall thick tree", - image = "terrain/grass.png", - add_displays = class:makeTrees("terrain/tree_alpha"), + image = "terrain/tree.png", display = '#', color=colors.LIGHT_GREEN, back_color={r=44,g=95,b=43}, always_remember = true, does_block_move = true, @@ -55,7 +54,7 @@ newEntity{ block_sense = true, block_esp = true, } -end +for i = 1, 30 do newEntity{ define_as = "HARDTREE"..i, image = "terrain/grass.png", add_displays = class:makeTrees("terrain/tree_alpha", 13, 9) } end newEntity{ define_as = "GRASS_DARK1", @@ -100,18 +99,17 @@ end newEntity{ define_as = "FLOWER", type = "floor", subtype = "grass", - name = "flower", image = "terrain/grass_flower3.png", + name = "flower", image = "terrain/flower.png", display = ';', color=colors.YELLOW, back_color={r=44,g=95,b=43}, grow = "TREE", - nice_tiler = { method="replace", base={"FLOWER", 100, 3, 8}}, + nice_tiler = { method="replace", base={"FLOWER", 100, 1, 1}}, } -for i = 3, 8 do newEntity{ base = "FLOWER", define_as = "FLOWER"..i, image = "terrain/grass_flower"..i..".png"} end - +for i = 1, 1 do newEntity{ base = "FLOWER", define_as = "FLOWER"..i, image = "terrain/grass.png", add_mos = {{image = "terrain/flower0"..i..".png"}}} end newEntity{ define_as = "ROCK_VAULT", type = "wall", subtype = "grass", - name = "huge loose rock", image = "terrain/grass.png", add_displays = {class.new{image="terrain/rock_grass.png"}}, + name = "huge loose rock", image = "terrain/grass.png", add_mos = {{image="terrain/huge_rock.png"}}, display = '+', color=colors.GREY, back_color={r=44,g=95,b=43}, notice = true, always_remember = true, @@ -126,7 +124,7 @@ newEntity{ newEntity{ define_as = "ROCK_VAULT_DARK", type = "wall", subtype = "grass", - name = "huge loose rock", image = "terrain/rock_grass_dark.png", + name = "huge loose rock", image = "terrain/grass.png", add_mos = {{image="terrain/huge_rock.png"}}, display = '+', color=colors.GREY, back_color={r=44,g=95,b=43}, notice = true, always_remember = true, @@ -144,7 +142,7 @@ newEntity{ newEntity{ define_as = "GRASS_UP_WILDERNESS", type = "floor", subtype = "grass", - name = "exit to the worldmap", image = "terrain/grass.png", add_displays = {class.new{image="terrain/worldmap.png"}}, + name = "exit to the worldmap", image = "terrain/grass.png", add_mos = {{image="terrain/worldmap.png"}}, display = '<', color_r=255, color_g=0, color_b=255, always_remember = true, notice = true, @@ -155,7 +153,7 @@ newEntity{ newEntity{ define_as = "GRASS_UP8", type = "floor", subtype = "grass", - name = "way to the previous level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_8.png"}}, + name = "way to the previous level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_8.png"}}, display = '<', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -164,7 +162,7 @@ newEntity{ newEntity{ define_as = "GRASS_UP2", type = "floor", subtype = "grass", - name = "way to the previous level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_2.png"}}, + name = "way to the previous level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_2.png"}}, display = '<', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -173,7 +171,7 @@ newEntity{ newEntity{ define_as = "GRASS_UP4", type = "floor", subtype = "grass", - name = "way to the previous level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_4.png"}}, + name = "way to the previous level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_4.png"}}, display = '<', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -182,7 +180,7 @@ newEntity{ newEntity{ define_as = "GRASS_UP6", type = "floor", subtype = "grass", - name = "way to the previous level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_6.png"}}, + name = "way to the previous level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_6.png"}}, display = '<', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -192,7 +190,7 @@ newEntity{ newEntity{ define_as = "GRASS_DOWN8", type = "floor", subtype = "grass", - name = "way to the next level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_8.png"}}, + name = "way to the next level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_8.png"}}, display = '>', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -201,7 +199,7 @@ newEntity{ newEntity{ define_as = "GRASS_DOWN2", type = "floor", subtype = "grass", - name = "way to the next level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_2.png"}}, + name = "way to the next level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_2.png"}}, display = '>', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -210,7 +208,7 @@ newEntity{ newEntity{ define_as = "GRASS_DOWN4", type = "floor", subtype = "grass", - name = "way to the next level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_4.png"}}, + name = "way to the next level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_4.png"}}, display = '>', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, @@ -219,7 +217,7 @@ newEntity{ newEntity{ define_as = "GRASS_DOWN6", type = "floor", subtype = "grass", - name = "way to the next level", image = "terrain/grass.png", add_displays = {class.new{image="terrain/way_next_6.png"}}, + name = "way to the next level", image = "terrain/grass.png", add_mos = {{image="terrain/way_next_6.png"}}, display = '>', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation.png b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation.png index e87798cd5437b27bcb96c6f14b64de5c3eb4ccc5..d5d1b62ae8dc83324af243ba3794b189a8b3256b 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation.png and b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation01.png b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation01.png index 32c2ebccf1586cbb3c216e4ede123a5b4f06b6cf..3b2205a78b644d13f50615a40e822f650fa95206 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation01.png and b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation01.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation02.png b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation02.png index e87798cd5437b27bcb96c6f14b64de5c3eb4ccc5..d5d1b62ae8dc83324af243ba3794b189a8b3256b 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation02.png and b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation02.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation03.png b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation03.png index 2c8a56aa78dd417811f3cf54b29ace7ad45f8ecb..b8ddb5ba888b067c9e77d5908c200a5c0fca22d1 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation03.png and b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation03.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation04.png b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation04.png index 177baa36bb7d35b1be1eb93da46919f8d6bc8591..c1cff3b71a182271ffa81ee7faa9cd03a5fb7ad9 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/cultivation04.png and b/game/modules/tome/data/gfx/shockbolt/terrain/cultivation04.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass.png index 6b1b1940c4b3f23cb9f161ff1bba86b52f70e5ef..db5091dd4434cf1c6a1a7f83bc50f679f9816ae7 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass.png and b/game/modules/tome/data/gfx/shockbolt/terrain/grass.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower3.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower3.png deleted file mode 100644 index 2a5ae09960d8de9476ff672716ae8fb0a1c6ecb6..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower3.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower4.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower4.png deleted file mode 100644 index 990587914aa28137cd8f19579477208f5deb7ed3..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower4.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower5.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower5.png deleted file mode 100644 index 71ca07a86fe360d80372e4efed9364680ecae7a9..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower5.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower6.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower6.png deleted file mode 100644 index b78692fca47ff10f71f8d5aaceda6d1497dbd2ec..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower6.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower7.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower7.png deleted file mode 100644 index 9ee4d479b9782f94c1abf3a2bf344722eee6e569..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower7.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower8.png b/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower8.png deleted file mode 100644 index b8c66697e04bf2b1e41fb53ffe0038a03bc4ae78..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/grass_flower8.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/rock_grass.png b/game/modules/tome/data/gfx/shockbolt/terrain/rock_grass.png deleted file mode 100644 index ac04317dcb6445c41fbd9bd7be72f05f58369d3d..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/rock_grass.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/town1.png b/game/modules/tome/data/gfx/shockbolt/terrain/town1.png index 5165fd52088a9638066341bf3458c29fa4333b82..a1370b80b0c7506824c6a7e0754fc7b45f01e6d9 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/town1.png and b/game/modules/tome/data/gfx/shockbolt/terrain/town1.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/town2.png b/game/modules/tome/data/gfx/shockbolt/terrain/town2.png deleted file mode 100644 index 0427ebe02a0e2f3538baefd577fe33a739c95469..0000000000000000000000000000000000000000 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/town2.png and /dev/null differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha1.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha1.png index b70122009caf6108480234fb820ed204447bf6c2..bdb612a9003560f891ddd9e1fa38f076d4433065 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha1.png and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha1.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha2.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha2.png index 2393c90a21556c4f817a812bae2ceaeabfb32b1b..ab92cf5478c6dd7df838b01e2952f541ff0fe399 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha2.png and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha2.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha3.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha3.png index 057fb207da812e0f464995fe50cbebb8479469eb..f2d3ae505b9e36e0f8424eb60778592204bcde29 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha3.png and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha3.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha4.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha4.png index 3fcd0e0a45fd4953ac96ff1ca3946056a438eb3d..eb594d7cb46838de0f62308a39456f0e3cecf7a5 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha4.png and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha4.png differ diff --git a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha5.png b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha5.png index 66b3d02668ef57bf321b8096af4862f87375e6ef..3d690d4431a3af652a21f4065a0efb064cac0728 100644 Binary files a/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha5.png and b/game/modules/tome/data/gfx/shockbolt/terrain/tree_alpha5.png differ diff --git a/game/modules/tome/data/maps/wilderness/eyal.lua b/game/modules/tome/data/maps/wilderness/eyal.lua index a1d3f893efdc3b6b07bacd1f7737078511c38450..a6052dc0c0b808e3526197fcff3aac753c2cfbca 100644 --- a/game/modules/tome/data/maps/wilderness/eyal.lua +++ b/game/modules/tome/data/maps/wilderness/eyal.lua @@ -51,7 +51,7 @@ quickEntity('{', {always_remember = true, show_tooltip=true, name='Charred Scar' quickEntity('!', {always_remember = true, show_tooltip=true, name='hills', display='^', color=colors.GREEN, back_color=colors.DARK_GREEN, image="terrain/hills.png", can_encounter=true, equilibrium_level=-10}) quickEntity('h', {always_remember = true, show_tooltip=true, name='low hills', display='^', color=colors.GREEN, back_color=colors.DARK_GREEN, image="terrain/hills.png", can_encounter=true, equilibrium_level=-10}) -quickEntity('&', {always_remember = true, show_tooltip=true, name='cultivated fields', display=';', color=colors.GREEN, back_color=colors.DARK_GREEN, image="terrain/cultivation.png", can_encounter=true, equilibrium_level=-10}) +quickEntity('&', {always_remember = true, show_tooltip=true, name='cultivated fields', display=';', color=colors.GREEN, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/cultivation.png"}}, can_encounter=true, equilibrium_level=-10}) -- Maj'Eyal quickEntity('kor-pul', {always_remember = true, show_tooltip=true, name="Ruins of Kor'Pul", display='>', color={r=0, g=255, b=255}, notice = true, change_level=1, change_zone="ruins-kor-pul"}) @@ -68,10 +68,10 @@ quickEntity('rhaloren-camp', {always_remember = true, show_tooltip=true, name="S quickEntity('norgos-lair', {always_remember = true, show_tooltip=true, name="Passageway into Norgos' Lair", display='>', color={r=255, g=255, b=255}, notice = true, change_level=1, change_zone="norgos-lair"}) quickEntity('heart-gloom', {always_remember = true, show_tooltip=true, name="Way into the heart of the gloom", display='>', color={r=255, g=255, b=0}, notice = true, change_level=1, change_zone="heart-gloom"}) -quickEntity('derth', {always_remember = true, show_tooltip=true, name="Derth (Town)", desc="A quiet town at the crossroads of the north", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-derth"}) -quickEntity('last-hope', {always_remember = true, show_tooltip=true, name="Last Hope (Town)", desc="Capital city of the Allied Kingdoms ruled by King Tolak", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-last-hope"}) -quickEntity('shatur', {always_remember = true, show_tooltip=true, name="Shatur (Town)", desc="Capital city of Thaloren lands, ruled by Nessilla Tantaelen", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-shatur"}) -quickEntity('elvala', {always_remember = true, show_tooltip=true, name="Elvala (Town)", desc="Capital city of Shaloren lands, ruled by Aranion Gayaeil", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-elvala"}) +quickEntity('derth', {always_remember = true, show_tooltip=true, name="Derth (Town)", desc="A quiet town at the crossroads of the north", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-derth"}) +quickEntity('last-hope', {always_remember = true, show_tooltip=true, name="Last Hope (Town)", desc="Capital city of the Allied Kingdoms ruled by King Tolak", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-last-hope"}) +quickEntity('shatur', {always_remember = true, show_tooltip=true, name="Shatur (Town)", desc="Capital city of Thaloren lands, ruled by Nessilla Tantaelen", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-shatur"}) +quickEntity('elvala', {always_remember = true, show_tooltip=true, name="Elvala (Town)", desc="Capital city of Shaloren lands, ruled by Aranion Gayaeil", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-elvala"}) -- Far East quickEntity('gates-of-morning', {always_remember = true, show_tooltip=true, name="Gates of Morning (Town)", desc="A massive hole in the Sunwall.", display='*', color=colors.GOLD, back_color=colors.CRIMSON, image="terrain/gate-morning.png", tint=colors.GOLD, notice = true, change_level=1, change_zone="town-gates-of-morning"}) @@ -79,14 +79,14 @@ quickEntity('high-peak', {always_remember = true, show_tooltip=true, name="High quickEntity('unremarkable-cave', {always_remember = true, show_tooltip=true, name="Unremarkable cave", display='>', color=colors.UMBER, notice = true, change_level=1, change_zone="unremarkable-cave"}) -- Island of Rel -quickEntity('irkkk', {always_remember = true, show_tooltip=true, name="Irkkk (Town)", desc="Yeek Wayist capital", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true}) +quickEntity('irkkk', {always_remember = true, show_tooltip=true, name="Irkkk (Town)", desc="Yeek Wayist capital", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true}) quickEntity('ritch-tunnels', {always_remember = true, show_tooltip=true, name="Tunnel into the ritchs grounds",display='>', color=colors.UMBER, notice = true, change_level=1, change_zone="ritch-tunnels"}) quickEntity('murgol-lair', {always_remember = true, show_tooltip=true, name="Way into the lair of Murgol",display='>', color=colors.LIGHT_BLUE, notice = true, change_level=1, change_zone="murgol-lair"}) quickEntity('rel-tunnel', {always_remember = true, show_tooltip=true, name="Tunnel to Maj'Eyal", display='>', color=colors.LIGHT_BLUE, notice = true, force_down=true, change_level=4, change_zone="halfling-ruins", change_level_check = function() local p = game.party:findMember{main=true} if p:hasQuest("start-yeek") and not p:isQuestStatus("start-yeek", engine.Quest.DONE) then require("engine.ui.Dialog"):simplePopup("Long tunnel", "You can not abandon the yeeks of Rel to the dangers that lie within the island.") return true end p:setQuestStatus("rel-tunnel", engine.Quest.DONE) return false end}) -- Angolwen is only know from the start to mages if game.player:knowTalent(game.player.T_TELEPORT_ANGOLWEN) then - quickEntity('angolwen', {always_remember = true, show_tooltip=true, name="Angolwen, the hidden city of magic", desc="Secret place of magic, set apart from the world to protect it.\nLead by the Supreme Archmage Linaniil.", display='*', color=colors.WHITE, back_color=colors.UMBER, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-angolwen"}) + quickEntity('angolwen', {always_remember = true, show_tooltip=true, name="Angolwen, the hidden city of magic", desc="Secret place of magic, set apart from the world to protect it.\nLead by the Supreme Archmage Linaniil.", display='*', color=colors.WHITE, back_color=colors.UMBER, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-angolwen"}) quickEntity('angolwen-teleport', {always_remember = true, show_tooltip=true, name="Hidden teleportation portal to Angolwen, the hidden city of magic", display='&', color=colors.LIGHT_BLUE, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_displays = {mod.class.Grid.new{image="terrain/maze_teleport.png"}}, notice = true, change_level=1, change_zone="town-angolwen", change_level_check = function() local p = game.party:findMember{main=true} if p:attr("forbid_arcane") then game.log("The portal fizzles.") return true end return false end}) else quickEntity('angolwen', '^') @@ -95,14 +95,14 @@ end -- Zigur is only know from the start to non casters if not game.player:knowTalent(game.player.T_MANA_POOL) and not game.player:knowTalent(game.player.T_VIM_POOL) and not game.player:knowTalent(game.player.T_VIM_POOL) and not game.player:knowTalent(game.player.T_NEGATIVE_POOL) and not game.player:knowTalent(game.player.T_POSITIVE_POOL) and not game.player:knowTalent(game.player.T_PARADOX_POOL) then - quickEntity('zigur', {always_remember = true, show_tooltip=true, name="Zigur (Town)", desc="Ziguranth main training ground", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-zigur"}) + quickEntity('zigur', {always_remember = true, show_tooltip=true, name="Zigur (Town)", desc="Ziguranth main training ground", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-zigur"}) else quickEntity('zigur', ')') end -- Iron Council is only known to dwarves if game.player:knowTalent(game.player.T_DWARF_RESILIENCE) then - quickEntity('iron-council', {always_remember = true, show_tooltip=true, name="Iron Council (Town)", desc="Heart of the dwarven Empire", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-iron-council"}) + quickEntity('iron-council', {always_remember = true, show_tooltip=true, name="Iron Council (Town)", desc="Heart of the dwarven Empire", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-iron-council"}) else quickEntity('iron-council', '#') end diff --git a/game/modules/tome/data/quests/lumberjack-cursed.lua b/game/modules/tome/data/quests/lumberjack-cursed.lua index f02f12f919a292c624d733b45088f76531ea6a9f..76ac8e3d2ecdd2f94d83fcfb9820547a7372e5ec 100644 --- a/game/modules/tome/data/quests/lumberjack-cursed.lua +++ b/game/modules/tome/data/quests/lumberjack-cursed.lua @@ -34,7 +34,7 @@ on_grant = function(self, who) show_tooltip=true, always_remember = true, name="Small lumberjack village", display='*', color=colors.WHITE, - notice = true, image="terrain/town1.png", + notice = true, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, change_level=1, change_zone="town-lumberjack-village", } g:resolve() g:resolve(nil, true) diff --git a/game/modules/tome/data/quests/mage-apprentice.lua b/game/modules/tome/data/quests/mage-apprentice.lua index fa8fa3f1ce896f2a79c26644db2babb40db08315..460e061c19d806debf12c4eec60ee8b7e6aa4e93 100644 --- a/game/modules/tome/data/quests/mage-apprentice.lua +++ b/game/modules/tome/data/quests/mage-apprentice.lua @@ -126,7 +126,7 @@ access_angolwen = function(self, player) show_tooltip=true, always_remember = true, name="Angolwen, the hidden city of magic", desc="Secret place of magic, set apart from the world to protect it.", - display='*', color=colors.WHITE, image="terrain/town1.png", + display='*', color=colors.WHITE, image="terrain/grass.png", add_mos={{image="terrain/town1.png"}}, notice = true, change_level=1, change_zone="town-angolwen" } diff --git a/game/modules/tome/dialogs/Birther.lua b/game/modules/tome/dialogs/Birther.lua index 1b48c384df07522946da3a560ef1f2b904541734..aa176a914e66c709065bdaae6b8d1297d7a6f266 100644 --- a/game/modules/tome/dialogs/Birther.lua +++ b/game/modules/tome/dialogs/Birther.lua @@ -165,6 +165,8 @@ function _M:atEnd(v) local ps = self.actor:getParticlesList() for i, p in ipairs(ps) do self.actor:removeParticles(p) end self.actor:defineDisplayCallback() + if self.actor._mo then self.actor._mo:invalidate() end + self.actor._mo = nil game:unregisterDialog(self) self:apply() @@ -721,7 +723,7 @@ end function _M:setTile(f, w, h) if not f then if not self.actor.has_custom_tile and self.descriptors_by_type.subrace and self.descriptors_by_type.sex then - self.actor.image = "player/"..self.descriptors_by_type.subrace:lower().."_"..self.descriptors_by_type.sex:lower()..".png" + self.actor.image = "player/"..self.descriptors_by_type.subrace:lower():gsub("[^a-z0-9_]", "_").."_"..self.descriptors_by_type.sex:lower():gsub("[^a-z0-9_]", "_")..".png" self.actor.add_mos = nil end else