From cc0f34818b7637bc81ab6a7a6319cdb95bed495d Mon Sep 17 00:00:00 2001 From: arijust <54635208+arijust@users.noreply.github.com> Date: Sun, 8 Mar 2020 18:09:51 +0100 Subject: [PATCH] Magiclysm: Forest Tomb (#37699) --- data/mods/Magiclysm/furniture.json | 19 +++ .../mods/Magiclysm/itemgroups/itemgroups.json | 5 + data/mods/Magiclysm/worldgen/forest_tomb.json | 134 ++++++++++++++++++ .../Magiclysm/worldgen/overmap_specials.json | 13 ++ .../Magiclysm/worldgen/overmap_terrain.json | 18 +++ 5 files changed, 189 insertions(+) create mode 100644 data/mods/Magiclysm/worldgen/forest_tomb.json diff --git a/data/mods/Magiclysm/furniture.json b/data/mods/Magiclysm/furniture.json index ec16f5732a843..e33595f37be77 100644 --- a/data/mods/Magiclysm/furniture.json +++ b/data/mods/Magiclysm/furniture.json @@ -186,5 +186,24 @@ { "item": "glass_shard", "count": [ 8, 12 ] } ] } + }, + { + "type": "furniture", + "id": "f_altar", + "name": "stone altar", + "move_cost_mod": 10, + "symbol": "H", + "color": "light_gray", + "coverage": 40, + "required_str": 30, + "flags": [ "BASHABLE" ], + "description": "This is big stone altar. Most commonly used in morally questionable rituals.", + "bash": { + "str_min": 30, + "str_max": 160, + "sound": "smash!", + "sound_fail": "thump.", + "items": [ { "item": "rock", "count": [ 5, 15 ] }, { "item": "sharp_rock", "count": [ 3, 5 ] } ] + } } ] diff --git a/data/mods/Magiclysm/itemgroups/itemgroups.json b/data/mods/Magiclysm/itemgroups/itemgroups.json index 45016883441b1..594ec79cd6995 100644 --- a/data/mods/Magiclysm/itemgroups/itemgroups.json +++ b/data/mods/Magiclysm/itemgroups/itemgroups.json @@ -1034,5 +1034,10 @@ "type": "item_group", "id": "magic_basement_photo", "items": [ [ "wizard_photo", 100 ] ] + }, + { + "type": "item_group", + "id": "forest_tomb_spellbook", + "items": [ [ "summon_undead_spellbook", 100 ] ] } ] diff --git a/data/mods/Magiclysm/worldgen/forest_tomb.json b/data/mods/Magiclysm/worldgen/forest_tomb.json new file mode 100644 index 0000000000000..9e2e259afeba4 --- /dev/null +++ b/data/mods/Magiclysm/worldgen/forest_tomb.json @@ -0,0 +1,134 @@ +[ + { + "type": "palette", + "id": "tomb", + "terrain": { + ".": "t_rock_floor", + " ": [ [ "t_grass_dead", 15 ], [ "t_dirt", 4 ], [ "t_dirtmound", 3 ], [ "t_rock_floor_no_roof", 4 ] ], + "T": "t_tree_dead", + "R": "t_railroad_rubble", + "S": "t_shrub", + "<": "t_slope_up", + ">": "t_slope_down", + "#": "t_rock" + }, + "furniture": { "H": "f_altar", "C": "f_coffin_c" }, + "items": { "R": { "item": "animist_items", "chance": 25 }, "H": { "item": "forest_tomb_spellbook", "chance": 100 } }, + "monster": { "x": { "monster": "mon_skeleton", "chance": 50 }, "Z": { "monster": "mon_zombie_necro", "chance": 100 } } + }, + { + "type": "palette", + "id": "tomb_roof", + "terrain": { ".": "t_rock_roof", " ": "t_open_air", ">": "t_slope_down" } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": [ "forest_tomb" ], + "//": "Ground level - Z-0.", + "weight": 100, + "object": { + "fill_ter": "t_rock_floor", + "rows": [ + " S ", + " S ", + " S ", + " S ", + " S ", + " S S ", + " ##<############### ", + " ################## ", + " S ####C.##>>##..C### ", + " ###x..........###............... ", + " .................. ", + " .................. ", + " .................> ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .................. ", + " .............>.... ", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " " + ], + "palettes": [ "tomb_roof" ] + } + } +] diff --git a/data/mods/Magiclysm/worldgen/overmap_specials.json b/data/mods/Magiclysm/worldgen/overmap_specials.json index 793fa84e1f4bb..59bd3170213d4 100644 --- a/data/mods/Magiclysm/worldgen/overmap_specials.json +++ b/data/mods/Magiclysm/worldgen/overmap_specials.json @@ -114,5 +114,18 @@ "city_sizes": [ 4, 12 ], "occurrences": [ 0, 1 ], "flags": [ "CLASSIC", "LAKE" ] + }, + { + "type": "overmap_special", + "id": "forest_tomb", + "overmaps": [ + { "point": [ 0, 0, 0 ], "overmap": "forest_tomb_north" }, + { "point": [ 0, 0, 1 ], "overmap": "forest_tomb_roof_north" }, + { "point": [ 0, 0, -1 ], "overmap": "forest_tomb_bottom_north" } + ], + "locations": [ "wilderness" ], + "city_distance": [ 20, -1 ], + "city_sizes": [ 0, 20 ], + "occurrences": [ 0, 1 ] } ] diff --git a/data/mods/Magiclysm/worldgen/overmap_terrain.json b/data/mods/Magiclysm/worldgen/overmap_terrain.json index 8405a6b82bd1d..be7c1f4a01a69 100644 --- a/data/mods/Magiclysm/worldgen/overmap_terrain.json +++ b/data/mods/Magiclysm/worldgen/overmap_terrain.json @@ -353,6 +353,24 @@ "id": "wizardtower2_roof", "copy-from": "wizardtower1_ground" }, + { + "type": "overmap_terrain", + "id": "forest_tomb", + "name": "forest", + "sym": "F", + "color": "brown", + "see_cost": 5 + }, + { + "type": "overmap_terrain", + "id": "forest_tomb_roof", + "copy-from": "forest_tomb" + }, + { + "type": "overmap_terrain", + "id": "forest_tomb_bottom", + "copy-from": "forest_tomb" + }, { "type": "overmap_terrain", "id": "magic_academy_ground",