Skip to content

Commit

Permalink
feat(content,port): aircraft carrier (#3892)
Browse files Browse the repository at this point in the history
* Rename terrain-floors_indoor.json

* New map: Aircraft carrier (#54711)

* initial aircraft commit - overmap

* adding terrain mechanisms

* adding few terrains for carrier

* adding few new loot table

* adding a carrier palette

* adding some nested maps for carrier

* adding OMspecial for carrier

* 0 level of carrier

* -1 level of carrier

* first floor of carrier

* second floor of the carrier (flight deck)

* rename the folder so it has no spaces

* adding triple bunkbed

* making officers berths, kinda

* delete unque flag for test purposes

* adding 3 floor (bridge)

* Lint

* add some zeds to spawn

* some turrets on the bridge (bc thats fun)

* split OM terrain on two to make different mob spawns

* remade z1 vehicle spawn

* fix z1 vehicle spawn

* fixing z2 transport spawn

* burning the random vehicle spawn in fire

* added nuclear reactor

* disabling the elevators

* lint

* fixes

* 123

* some stairs fix

* real some stairs fix

* adding loot to driers and washers

* some stuff

* remade offices, fix clothes

* office supplies tweaks, some computer stuff replacing

* replacing computers with wooden one, changing the book loot

* replacing computers with wooden one, changing the book loot

* delete office mess, add loot for entertainment center

* TVs FOR EVERYBODY, YEEEEEAH

* small bunkbed changes

* ( -> )

* fix the metal gates

* add some heavy engines to mechanic supplies

* lint

* spawn only on lake (doesnt work)

* fixing the spawn issues

* replacing unpickable doors with pickable one

* adding water belt around the ship

* tweaking the overmap special

* ¯\_(ツ)_/¯

* Beds

* moved entertainment_center_loot to a better place

* fck u inheritance

* typo

* Update data/json/mapgen_palettes/aircraft_carrier_palette.json

Co-authored-by: Maleclypse <[email protected]>

Co-authored-by: Maleclypse <[email protected]>

* add hospital bed

* Add fireman cabinet and item group

* Remove unsued furn

* adding the scenario

* description, small tweaks in proffesions list

* Update data/json/scenarios.json

Co-authored-by: Maleclypse <[email protected]>

* let the "like new" apache on the aircraft carrier take off. (#62152)

Co-authored-by: waxcatape <[email protected]>

* Make it work

* style(autofix.ci): automated formatting

* feat: add `Military Rifleman` and `Combat Engineer`

* fix: add electric grid

* fix: huge elevators not working for vehicles

used floodfill to optain arbitrary size of elevator tiles.

* feat: working carrier elevators

---------

Co-authored-by: GuardianDll <[email protected]>
Co-authored-by: Maleclypse <[email protected]>
Co-authored-by: curstwist <[email protected]>
Co-authored-by: John Candlebury <[email protected]>
Co-authored-by: GuardianDll <[email protected]>
Co-authored-by: waxcatape <[email protected]>
Co-authored-by: waxcatape <[email protected]>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: scarf <[email protected]>
  • Loading branch information
10 people authored Dec 14, 2023
1 parent a21ab54 commit c5362d0
Show file tree
Hide file tree
Showing 24 changed files with 2,725 additions and 9 deletions.
35 changes: 35 additions & 0 deletions data/json/furniture_and_terrain/furniture-sleep.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,41 @@
]
}
},
{
"type": "furniture",
"id": "f_triple_bunkbed",
"name": "triple berth",
"symbol": "#",
"description": "This bunk bed can hold 3 person at once - perfect solution for places with lack of free space.",
"looks_like": "f_bed",
"color": "magenta",
"move_cost_mod": 8,
"coverage": 40,
"comfort": 5,
"floor_bedding_warmth": 1000,
"required_str": -1,
"deconstruct": {
"items": [
{ "item": "mattress", "count": 3 },
{ "item": "pipe", "count": 28 },
{ "item": "sheet_metal", "count": 3 },
{ "item": "sheet_metal_small", "count": 12 }
]
},
"flags": [ "TRANSPARENT", "FLAMMABLE_HARD", "CAN_SIT" ],
"bash": {
"str_min": 25,
"str_max": 60,
"sound": "crunch!",
"sound_fail": "whump.",
"items": [
{ "item": "pipe", "count": [ 8, 15 ] },
{ "item": "sheet_metal_small", "count": [ 0, 2 ] },
{ "item": "rag", "count": [ 120, 160 ] },
{ "item": "scrap", "count": [ 60, 100 ] }
]
}
},
{
"type": "furniture",
"id": "f_bed_frame",
Expand Down
95 changes: 95 additions & 0 deletions data/json/furniture_and_terrain/furniture-tools.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,99 @@
[
{
"type": "furniture",
"id": "f_console_broken_table",
"name": "broken console",
"looks_like": "t_console_broken",
"description": "This is a standalone computer terminal. It doesn't seem to be working. It's the broken screen and shattered circuit boards that's telling you that.",
"symbol": "6",
"color": "light_gray",
"move_cost_mod": -1,
"coverage": 50,
"required_str": -1,
"flags": [ "TRANSPARENT", "NOITEM", "INDOORS", "SHORT", "PERMEABLE" ],
"deconstruct": {
"furn_set": "f_table",
"items": [
{ "item": "processor", "count": [ 1, 2 ] },
{ "item": "RAM", "count": [ 4, 8 ] },
{ "item": "cable", "charges": [ 4, 6 ] },
{ "item": "large_lcd_screen", "count": 1 },
{ "item": "e_scrap", "count": [ 10, 16 ] },
{ "item": "circuit", "count": [ 6, 10 ] },
{ "item": "power_supply", "count": [ 2, 4 ] },
{ "item": "amplifier", "count": [ 2, 4 ] },
{ "item": "plastic_chunk", "count": [ 10, 12 ] },
{ "item": "scrap", "count": [ 6, 8 ] }
]
},
"bash": {
"str_min": 16,
"str_max": 150,
"sound": "crunch!",
"sound_fail": "whack!",
"furn_set": "f_table",
"items": [
{ "item": "processor", "prob": 25 },
{ "item": "RAM", "count": [ 0, 2 ], "prob": 50 },
{ "item": "cable", "charges": [ 1, 2 ], "prob": 50 },
{ "item": "large_lcd_screen", "prob": 25 },
{ "item": "e_scrap", "count": [ 1, 4 ], "prob": 50 },
{ "item": "circuit", "count": [ 0, 2 ], "prob": 50 },
{ "item": "power_supply", "prob": 25 },
{ "item": "amplifier", "prob": 25 },
{ "item": "plastic_chunk", "count": [ 4, 10 ], "prob": 50 },
{ "item": "scrap", "count": [ 2, 6 ], "prob": 50 }
]
}
},
{
"type": "furniture",
"id": "f_console_table",
"name": "computer console",
"looks_like": "t_console",
"description": "This is a standalone computer terminal. It can be used to view contents and perform any allowed functions. It might even be possible to hack it, given the skills.",
"symbol": "6",
"color": "blue",
"move_cost_mod": -1,
"coverage": 50,
"required_str": -1,
"light_emitted": 10,
"flags": [ "TRANSPARENT", "CONSOLE", "NOITEM", "INDOORS", "SHORT", "PERMEABLE" ],
"deconstruct": {
"furn_set": "f_table",
"items": [
{ "item": "processor", "count": [ 1, 2 ] },
{ "item": "RAM", "count": [ 4, 8 ] },
{ "item": "cable", "charges": [ 4, 6 ] },
{ "item": "large_lcd_screen", "count": 1 },
{ "item": "e_scrap", "count": [ 10, 16 ] },
{ "item": "circuit", "count": [ 6, 10 ] },
{ "item": "power_supply", "count": [ 2, 4 ] },
{ "item": "amplifier", "count": [ 2, 4 ] },
{ "item": "plastic_chunk", "count": [ 10, 12 ] },
{ "item": "scrap", "count": [ 6, 8 ] }
]
},
"bash": {
"str_min": 8,
"str_max": 150,
"sound": "crunch!",
"sound_fail": "whack!",
"furn_set": "f_console_broken_table",
"items": [
{ "item": "processor", "prob": 25 },
{ "item": "RAM", "count": [ 0, 2 ], "prob": 50 },
{ "item": "cable", "charges": [ 1, 2 ], "prob": 50 },
{ "item": "large_lcd_screen", "prob": 25 },
{ "item": "e_scrap", "count": [ 1, 4 ], "prob": 50 },
{ "item": "circuit", "count": [ 0, 2 ], "prob": 50 },
{ "item": "power_supply", "prob": 25 },
{ "item": "amplifier", "prob": 25 },
{ "item": "plastic_chunk", "count": [ 4, 10 ], "prob": 50 },
{ "item": "scrap", "count": [ 2, 6 ], "prob": 50 }
]
}
},
{
"type": "furniture",
"id": "f_forge",
Expand Down
16 changes: 16 additions & 0 deletions data/json/furniture_and_terrain/terrain-doors.json
Original file line number Diff line number Diff line change
Expand Up @@ -2240,6 +2240,22 @@
]
}
},
{
"type": "terrain",
"id": "t_door_metal_interior_locked",
"copy-from": "t_door_metal_locked",
"looks_like": "t_door_metal_pickable",
"//": "Same as t_door_metal_pickable, but without OPENCLOSE_INSIDE. Due the inheritance issues cannot copy from the t_door_metal_pickable, delete doesn't work with flags",
"lockpick_result": "t_door_metal_c",
"oxytorch": {
"result": "t_mdoor_frame",
"duration": "14 seconds",
"byproducts": [ { "item": "steel_plate", "count": [ 0, 1 ] }, { "item": "steel_chunk", "count": [ 3, 8 ] } ]
},
"symbol": "+",
"color": "cyan",
"flags": [ "NOITEM", "REDUCE_SCENT", "CONNECT_TO_WALL", "LOCKED", "BLOCK_WIND", "PICKABLE" ]
},
{
"type": "terrain",
"id": "t_door_metal_pickable",
Expand Down
68 changes: 68 additions & 0 deletions data/json/furniture_and_terrain/terrain-floors-outdoors.json
Original file line number Diff line number Diff line change
Expand Up @@ -414,5 +414,73 @@
"move_cost": 0,
"roof": "t_rock_floor_no_roof",
"flags": [ "NOITEM", "SUPPORTS_ROOF", "WALL" ]
},
{
"type": "terrain",
"id": "t_elevator_no_roof",
"name": "elevator",
"description": "An elevator section of the flight deck.",
"symbol": ".",
"color": "dark_gray",
"looks_like": "t_elevator",
"move_cost": 2,
"flags": [ "TRANSPARENT", "FLAT", "ELEVATOR" ]
},
{
"type": "terrain",
"id": "t_deck_coating_no_roof",
"name": "deck coating",
"description": "Thick metal coating of a hull, covered with a military grade epoxy mix. Used for runways, and can't be melted by jet engine nozzles.",
"symbol": ".",
"looks_like": "t_pavement",
"color": "dark_gray",
"//connects_to": "METALFLOOR",
"move_cost": 2,
"flags": [ "FLAT", "ROAD", "TRANSPARENT" ],
"bash": {
"sound": "thump",
"ter_set": "t_null",
"str_min": 500,
"str_max": 1000,
"str_min_supported": 200,
"items": [
{ "item": "steel_lump", "count": [ 1, 4 ] },
{ "item": "steel_chunk", "count": [ 3, 12 ] },
{ "item": "scrap", "count": [ 9, 36 ] }
]
}
},
{
"type": "terrain",
"id": "t_deck_coating_no_roof_y",
"name": "yellow deck coating",
"description": "Thick metal covering of a hull, covered with a military grade epoxy mix, and painted in yellow color.",
"copy-from": "t_deck_coating_no_roof",
"looks_like": "t_pavement_y",
"flags": [ "FLAT", "ROAD", "TRANSPARENT" ],
"symbol": ".",
"color": "yellow"
},
{
"type": "terrain",
"id": "t_deck_coating_no_roof_r",
"name": "red deck coating",
"description": "Thick metal covering of a hull, covered with a military grade epoxy mix, and painted in red color.",
"copy-from": "t_deck_coating_no_roof",
"looks_like": " ",
"flags": [ "FLAT", "ROAD", "TRANSPARENT" ],
"symbol": ".",
"color": "red"
},
{
"type": "terrain",
"id": "t_deck_coating_no_roof_w",
"name": "white deck coating",
"description": "Thick metal covering of a hull, covered with a military grade epoxy mix, and painted in white color.",
"copy-from": "t_deck_coating_no_roof",
"looks_like": " ",
"flags": [ "FLAT", "ROAD", "TRANSPARENT" ],
"symbol": ".",
"color": "white"
}
]
29 changes: 29 additions & 0 deletions data/json/furniture_and_terrain/terrain-mechanisms.json
Original file line number Diff line number Diff line change
Expand Up @@ -473,6 +473,15 @@
]
}
},
{
"copy-from": "t_elevator_control",
"type": "terrain",
"symbol": ".",
"color": "dark_gray",
"id": "t_elevator_control_no_roof",
"roof": "t_null",
"flags": [ "NOITEM" ]
},
{
"type": "terrain",
"id": "t_elevator_control_off",
Expand Down Expand Up @@ -504,6 +513,15 @@
]
}
},
{
"copy-from": "t_elevator_control_off",
"type": "terrain",
"symbol": ".",
"color": "dark_gray",
"id": "t_elevator_control_off_no_roof",
"roof": "t_null",
"flags": [ "NOITEM" ]
},
{
"type": "terrain",
"id": "t_pedestal_wyrm",
Expand Down Expand Up @@ -587,5 +605,16 @@
"move_cost": 0,
"flags": [ "TRANSPARENT", "PERMEABLE" ],
"examine_action": "fswitch"
},
{
"id": "t_nuclear_reactor",
"type": "terrain",
"name": "nuclear reactor core",
"//": "just a copy of aftershock nuclear reactor",
"description": "Naval A1B reactor, used in Gerald R. Ford–class aircraft carriers, and can produce enough steam to generate 125 megawatts of energy.",
"symbol": "R",
"color": "light_green",
"move_cost": 0,
"flags": [ "TRANSPARENT", "CONTAINER", "REDUCE_SCENT", "PERMEABLE", "PLACE_ITEM" ]
}
]
44 changes: 44 additions & 0 deletions data/json/itemgroups/Clothing_Gear/clothing.json
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,26 @@
}
]
},
{
"id": "clothing_military_distribution",
"type": "item_group",
"subtype": "distribution",
"//": "todo: when #57228 would be closed, change this one to copy-from `clothing_military`",
"items": [
{ "group": "clothing_soldier_shirt" },
{ "distribution": [ { "item": "jacket_army", "prob": 50 }, { "item": "tshirt", "prob": 50 } ] },
{ "item": "pants_army" },
{ "item": "webbing_belt" },
{ "distribution": [ { "item": "socks", "prob": 95 }, { "item": "socks_wool", "prob": 5 } ] },
{ "item": "boots_combat" },
{
"distribution": [
{ "collection": [ { "item": "sports_bra" }, { "item": "boy_shorts" } ] },
{ "distribution": [ { "item": "briefs" }, { "item": "boxer_briefs" }, { "item": "boxer_shorts" } ] }
]
}
]
},
{
"id": "clothing_military_winter",
"type": "item_group",
Expand Down Expand Up @@ -212,6 +232,30 @@
{ "item": "goggles_ir", "prob": 10 }
]
},
{
"id": "clothing_military_pilot_distribution",
"type": "item_group",
"subtype": "distribution",
"//": "todo: when #57228 would be closed, change this one to copy-from `clothing_military`",
"items": [
{ "item": "chestrig", "prob": 40 },
{ "item": "helmet_army" },
{ "item": "jacket_army", "prob": 80 },
{ "item": "nomex_gloves" },
{ "item": "webbing_belt" },
{ "distribution": [ { "item": "socks", "prob": 30 }, { "item": "nomex_socks", "prob": 70 } ] },
{ "item": "gloves_tactical", "prob": 60 },
{ "item": "boots_combat" },
{
"distribution": [
{ "collection": [ { "item": "sports_bra" }, { "item": "boy_shorts" } ] },
{ "distribution": [ { "item": "briefs" }, { "item": "boxer_briefs" }, { "item": "boxer_shorts" } ] }
]
},
{ "group": "clothing_watch", "prob": 85 },
{ "item": "goggles_ir", "prob": 10, "charges": [ 0, 100 ] }
]
},
{
"id": "clothing_soldier_shirt",
"type": "item_group",
Expand Down
21 changes: 21 additions & 0 deletions data/json/itemgroups/furniture.json
Original file line number Diff line number Diff line change
Expand Up @@ -68,5 +68,26 @@
{ "item": "ceramic_shard", "prob": 65, "count-min": 2, "count-max": 5 },
{ "item": "plastic_chunk", "prob": 100, "count-min": 2, "count-max": 5 }
]
},
{
"type": "item_group",
"id": "entertainment_center_loot",
"//": "something you can find in entertainment center, except the tv",
"subtype": "distribution",
"entries": [
{ "group": "games", "prob": 40, "count-min": 0, "count-max": 3 },
{ "group": "magazines", "prob": 40, "count-min": 0, "count-max": 6 },
{ "group": "newspaper", "prob": 40, "count-min": 1, "count-max": 2 },
{ "group": "homebooks", "prob": 40, "count-min": 0, "count-max": 4 },
{ "group": "novels", "prob": 40, "count-min": 0, "count-max": 8 },
{ "group": "religious_books", "prob": 40, "count-min": 0, "count-max": 8 },
{ "item": "stereo", "prob": 30 },
{ "item": "portable_game", "prob": 30 },
{ "item": "battery_charger", "prob": 40 },
{ "item": "microphone_xlr_generic", "prob": 20 },
{ "item": "cable_xlr", "prob": 40 },
{ "item": "headphones_circumaural", "prob": 10 },
{ "item": "cable_instrument", "prob": 5 }
]
}
]
Loading

0 comments on commit c5362d0

Please sign in to comment.