diff --git a/data/json/mapgen/nested_chunks_roof.json b/data/json/mapgen/nested/nested_chunks_roof.json similarity index 87% rename from data/json/mapgen/nested_chunks_roof.json rename to data/json/mapgen/nested/nested_chunks_roof.json index 55938c87b9022..3f5918ea6fb55 100644 --- a/data/json/mapgen/nested_chunks_roof.json +++ b/data/json/mapgen/nested/nested_chunks_roof.json @@ -264,5 +264,39 @@ { "furn": "f_water_purifier", "x": 1, "y": 1 } ] } + }, + { + "type": "mapgen", + "method": "json", + "nested_mapgen_id": "roof_6x6_survivor", + "object": { + "mapgensize": [ 6, 6 ], + "rotation": [ 0, 3 ], + "rows": [ + "..AA..", + "......", + "..a...", + ".o..o.", + "......", + "....A." + ], + "set": [ + { "point": "trap", "id": "tr_funnel", "x": 0, "y": 0 }, + { "point": "trap", "id": "tr_cot", "x": 5, "y": 5 }, + { "point": "trap", "id": "tr_cot", "x": 3, "y": 5 } + ], + "terrain": { ".": "t_null" }, + "furniture": { "o": "f_camp_chair", "a": "f_brazier", "A": "f_tourist_table" }, + "place_loot": [ + { "group": "cannedfood", "x": [ 2, 3 ], "y": 0, "repeat": [ 2, 3 ] }, + { "group": "camping", "x": [ 0, 5 ], "y": [ 0, 3 ], "chance": 50, "repeat": [ 2, 3 ] }, + { "group": "stash_wood", "x": 1, "y": 2, "repeat": [ 2, 3 ] }, + { "group": "bed", "x": 5, "y": 5, "chance": 50, "repeat": [ 1, 2 ] }, + { "group": "bed", "x": 3, "y": 5, "chance": 50, "repeat": [ 1, 2 ] }, + { "item": "jug_plastic", "x": 0, "y": 0 }, + { "item": "can_drink_unsealed", "x": [ 0, 5 ], "y": [ 0, 5 ], "chance": 30, "repeat": [ 2, 3 ] }, + { "item": "can_food_unsealed", "x": [ 0, 5 ], "y": [ 0, 5 ], "chance": 40, "repeat": [ 2, 3 ] } + ] + } } ] diff --git a/data/json/mapgen/pharmacy.json b/data/json/mapgen/pharmacy.json index 26cd10b1e22f2..dc319f0552f5e 100644 --- a/data/json/mapgen/pharmacy.json +++ b/data/json/mapgen/pharmacy.json @@ -5,11 +5,12 @@ "om_terrain": [ "s_pharm" ], "weight": 300, "object": { + "fill_ter": "t_floor", "rows": [ "________________________", "________________________", "|--OOOO----**----OOOO--|", - "|} #.................|", + "|} #................y|", "|} #..{}...{}...{}...|", "|} #..{}...{}...{}...|", "|} h#..{}...{}...{}...|", @@ -22,33 +23,27 @@ "|f.....................|", "|f......}}}}}}}}}}}}...|", "|f......}}}}}}}}}}}}...|", - "|......................|", + "|y.....................|", "|..................ffff|", "|*!!!!!!!!!------------|", - "| h |LLLLLLLL| %|", + "| y h y y|LLLLLLLL|y%|", "| * + |", "|LLLLLLLLLL|LLLLLLLL| &|", "|----------------------|", - ",,,,,,,,,,,,,,,,,,,,,,,," + ",,,,,,,,,,,,,,,,,,,,,,4," ], "terrain": { - ",": [ "t_grass", "t_grass", "t_grass", "t_grass", "t_dirt" ], - "-": "t_wall", - "|": "t_wall", + ",": [ [ "t_grass", 4 ], "t_dirt" ], + "-": "t_wall_w", + "|": "t_wall_w", "_": "t_pavement", ".": "t_floor", " ": "t_floor", - "&": "t_floor", - "%": "t_floor", - "{": "t_floor", - "}": "t_floor", - "#": "t_floor", - "!": "t_wall_glass_alarm", - "h": "t_floor", - "f": "t_floor", - "L": "t_floor", + "!": "t_reinforced_glass", "O": "t_reinforced_glass_shutter_open", + "g": "t_reinforced_glass", "+": "t_door_c", + "4": "t_gutter_downspout", "*": "t_door_locked_alarm" }, "furniture": { @@ -57,8 +52,9 @@ "}": "f_rack", "h": "f_chair", "f": "f_glass_fridge", - "L": "f_locker", - "#": "f_counter" + "L": "f_glass_cabinet", + "#": "f_counter", + "y": [ "f_indoor_plant_y", "f_indoor_plant" ] }, "toilets": { "&": { } }, "place_loot": [ @@ -81,9 +77,72 @@ { "type": "mapgen", "method": "json", - "om_terrain": [ "s_pharm" ], + "om_terrain": "s_pharm_roof", + "object": { + "fill_ter": "t_flat_roof", + "rows": [ + " ", + " ", + "|22222222222222222222223", + "|......................3", + "|......................3", + "|.........ooo..ooo.....3", + "|.........ooo..ooo.....3", + "|......................3", + "|.........ooo..ooo.....3", + "|.........ooo..ooo.....3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|......................3", + "|....................=.3", + "|......................3", + "|..&...................3", + "|---------------------53", + " " + ], + "terrain": { + ".": "t_flat_roof", + " ": "t_open_air", + "o": "t_glass_roof", + "2": "t_gutter_north", + "-": "t_gutter_south", + "3": "t_gutter_east", + "|": "t_gutter_west", + ">": "t_ladder_down", + "5": "t_gutter_drop" + }, + "furniture": { "&": "f_roof_turbine_vent", "=": "f_vent_pipe" }, + "place_items": [ { "item": "roof_trash", "x": [ 2, 20 ], "y": [ 5, 20 ], "chance": 50, "repeat": [ 1, 3 ] } ], + "place_nested": [ + { + "chunks": [ + [ "null", 20 ], + [ "roof_2x2_utilities_b", 15 ], + [ "roof_2x2_utilities_c", 5 ], + [ "roof_2x2_utilities_d", 40 ], + [ "roof_2x2_utilities", 50 ], + [ "roof_4x4_utility", 40 ], + [ "roof_6x6_utility", 20 ] + ], + "x": [ 4, 16 ], + "y": [ 11, 15 ] + } + ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": [ "s_pharm_1" ], "weight": 300, "object": { + "fill_ter": "t_floor", "rows": [ "________________________", "________________________", @@ -97,122 +156,135 @@ "|r # rr f|", "|r # rr rrrrrrr f|", "|r # rr rrrrrrr f|", - "|r # |", - "| # |", - "| | | |", - "|-+-----------&&&&&----|", - "| GG| w |", - "| c| |", - "| L |", - "| |rrrrrrrrrrrrr|", + "|r # b|", + "| # b|", + "| bby| |ybb|", + "|--+---+------&&&&&----|", + "|T S| &| w |", + "|----- &| |", + "|G + L |", + "|Gc y| y|xxxxxxxxxxxxx|", "|-----*----------------|", - "________________________", - "________________________", + "______________UU### ", + " ", + " " ], "terrain": { - " ": "t_floor", - "#": "t_floor", - "*": "t_door_locked", - "+": "t_door_c", - "-": "t_wall", - "=": "t_floor", - "G": "t_floor", - "L": "t_door_locked_alarm", - "O": "t_window", - "T": "t_floor", - "_": "t_pavement", - "c": "t_floor", - "f": "t_floor", - "l": "t_floor", - "r": "t_floor", - "w": "t_gates_mech_control", - "|": "t_wall" + ".": "t_flat_roof", + "#": "t_grate", + "2": "t_gutter_north", + "-": "t_gutter_south", + "3": "t_gutter_east", + "|": "t_gutter_west", + ">": "t_ladder_down", + "5": "t_gutter_drop" }, - "furniture": { "#": "f_counter", "G": "f_desk", "c": "f_chair", "f": "f_glass_fridge", "l": "f_vending_c", "r": "f_rack" }, - "toilets": { "T": { } }, - "place_loot": [ - { "group": "drugs_pharmacy", "x": [ 10, 22 ], "y": [ 19, 19 ], "chance": 50, "repeat": [ 2, 6 ] }, - { "group": "behindcounter", "x": [ 1, 3 ], "y": [ 7, 12 ], "chance": 50 }, - { "group": "behindcounter", "x": [ 1, 1 ], "y": [ 8, 11 ], "chance": 70 }, - { "group": "vending_drink", "x": [ 1, 1 ], "y": [ 3, 4 ], "chance": 80, "repeat": [ 1, 1 ] }, - { "group": "softdrugs", "x": [ 9, 10 ], "y": [ 7, 11 ], "chance": 40, "repeat": [ 1, 3 ] }, - { "group": "snacks", "x": [ 13, 19 ], "y": [ 7, 8 ], "chance": 70, "repeat": [ 1, 2 ] }, - { "group": "magazines", "x": [ 13, 19 ], "y": [ 10, 11 ], "chance": 70, "repeat": [ 1, 2 ] }, - { "group": "fridgesnacks", "x": [ 22, 22 ], "y": [ 7, 11 ], "chance": 70, "repeat": [ 1, 3 ] } + "furniture": { "&": "f_roof_turbine_vent", "=": "f_vent_pipe" }, + "place_nested": [ + { + "chunks": [ + [ "null", 20 ], + [ "roof_2x2_utilities_b", 15 ], + [ "roof_2x2_utilities_c", 5 ], + [ "roof_2x2_utilities_d", 40 ], + [ "roof_2x2_utilities", 50 ], + [ "roof_2x2_golf", 20 ], + [ "roof_3x3_wine", 30 ], + [ "roof_4x4_utility_1", 30 ] + ], + "x": [ 2, 5 ], + "y": 4 + }, + { + "chunks": [ + [ "null", 20 ], + [ "roof_4x4_party", 15 ], + [ "roof_4x4_holdout", 5 ], + [ "roof_4x4_utility", 40 ], + [ "roof_6x6_survivor", 20 ], + [ "roof_4x4_utility_1", 30 ], + [ "roof_6x6_utility", 20 ] + ], + "x": [ 3, 15 ], + "y": [ 8, 13 ] + } ] } } diff --git a/data/json/overmap/multitile_city_buildings.json b/data/json/overmap/multitile_city_buildings.json index 4e2d1479233ef..c7d095d5e99ac 100644 --- a/data/json/overmap/multitile_city_buildings.json +++ b/data/json/overmap/multitile_city_buildings.json @@ -1294,5 +1294,17 @@ { "point": [ 0, 0, 1 ], "overmap": "gym_roof_north" }, { "point": [ 0, 0, 2 ], "overmap": "gym_upper_roof_north" } ] + }, + { + "type": "city_building", + "id": "s_pharm", + "locations": [ "land" ], + "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "s_pharm_north" }, { "point": [ 0, 0, 1 ], "overmap": "s_pharm_roof_north" } ] + }, + { + "type": "city_building", + "id": "s_pharm_1", + "locations": [ "land" ], + "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "s_pharm_1_north" }, { "point": [ 0, 0, 1 ], "overmap": "s_pharm_roof_1_north" } ] } ] diff --git a/data/json/overmap_terrain_commercial.json b/data/json/overmap_terrain_commercial.json index 337aa8b4c7c51..ff906c1975d5a 100644 --- a/data/json/overmap_terrain_commercial.json +++ b/data/json/overmap_terrain_commercial.json @@ -13,6 +13,27 @@ "copy-from": "generic_city_building", "color": "light_red" }, + { + "type": "overmap_terrain", + "id": "s_pharm_roof", + "name": "pharmacy roof", + "copy-from": "generic_city_building", + "color": "light_red" + }, + { + "type": "overmap_terrain", + "id": "s_pharm_1", + "name": "pharmacy", + "copy-from": "generic_city_building", + "color": "light_red" + }, + { + "type": "overmap_terrain", + "id": "s_pharm_roof_1", + "name": "pharmacy roof", + "copy-from": "generic_city_building", + "color": "light_red" + }, { "type": "overmap_terrain", "id": "office_doctor", diff --git a/data/json/regional_map_settings.json b/data/json/regional_map_settings.json index e95d5bbb58db9..50362f5617d32 100644 --- a/data/json/regional_map_settings.json +++ b/data/json/regional_map_settings.json @@ -578,6 +578,7 @@ "craft_shop": 100, "s_gas": 500, "s_pharm": 300, + "s_pharm_1": 300, "s_grocery": 1500, "s_grocery_1": 1500, "s_hardware": 500,