From 66bb6ec41cb0e963328a9ebb227fb730ebf36ded Mon Sep 17 00:00:00 2001 From: Chaosvolt Date: Fri, 7 Jun 2024 23:30:38 -0500 Subject: [PATCH] feat(content): picking up household trash cans as a container (#4718) * feat(content): picking up household trash cans as a container * Update containers.json --- .../furniture-storage.json | 6 ++++-- .../Locations_MapExtras/locations.json | 1 + .../locations_commercial.json | 1 + .../json/itemgroups/collections_domestic.json | 1 + data/json/itemgroups/supplies.json | 3 ++- data/json/items/containers.json | 19 +++++++++++++++++++ data/json/recipes/other/containers.json | 12 ++++++++++++ 7 files changed, 40 insertions(+), 3 deletions(-) diff --git a/data/json/furniture_and_terrain/furniture-storage.json b/data/json/furniture_and_terrain/furniture-storage.json index de1a8b4c2554..d8c0eaeabce2 100644 --- a/data/json/furniture_and_terrain/furniture-storage.json +++ b/data/json/furniture_and_terrain/furniture-storage.json @@ -721,18 +721,20 @@ "id": "f_trashcan", "name": "trash can", "symbol": "&", - "description": "One man's trash is another man's dinner.", + "description": "One man's trash is another man's dinner. Examine it to take down, if you need an improvised bucket.", "color": "light_cyan", "move_cost_mod": 1, "required_str": 5, "max_volume": "20 L", "flags": [ "TRANSPARENT", "FLAMMABLE_ASH", "CONTAINER", "PLACE_ITEM", "MOUNTABLE", "SHORT" ], + "deployed_item": "trash_can_empty", + "examine_action": "deployed_furniture", "bash": { "str_min": 8, "str_max": 30, "sound": "smash!", "sound_fail": "whump.", - "items": [ { "item": "plastic_chunk", "count": [ 1, 2 ] } ] + "items": [ { "item": "plastic_chunk", "count": [ 9, 18 ] } ] } }, { diff --git a/data/json/itemgroups/Locations_MapExtras/locations.json b/data/json/itemgroups/Locations_MapExtras/locations.json index b32ee7ba2349..a7862c7569a8 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations.json +++ b/data/json/itemgroups/Locations_MapExtras/locations.json @@ -665,6 +665,7 @@ [ "canteen", 20 ], [ "basket_laundry", 20 ], [ "plastic_pot_flower", 35 ], + [ "trash_can_empty", 30 ], [ "gloves_medical", 20 ], [ "fitover_sunglasses", 20 ], [ "goggles_swim", 20 ], diff --git a/data/json/itemgroups/Locations_MapExtras/locations_commercial.json b/data/json/itemgroups/Locations_MapExtras/locations_commercial.json index 276463a2eeba..5695be55be85 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations_commercial.json +++ b/data/json/itemgroups/Locations_MapExtras/locations_commercial.json @@ -100,6 +100,7 @@ "id": "dollar_kitchen", "type": "item_group", "items": [ + [ "trash_can_empty", 10 ], [ "cup_plastic", 20 ], [ "bowl_plastic", 20 ], [ "canteen", 10 ], diff --git a/data/json/itemgroups/collections_domestic.json b/data/json/itemgroups/collections_domestic.json index 67ad12f606d9..5179146baee0 100644 --- a/data/json/itemgroups/collections_domestic.json +++ b/data/json/itemgroups/collections_domestic.json @@ -114,6 +114,7 @@ { "item": "roller_blades", "prob": 20 }, { "item": "duct_tape", "prob": 100 }, { "item": "lawnmower", "prob": 25 }, + { "item": "trash_can_empty", "prob": 25 }, { "item": "lawn_dart", "prob": 10 }, { "item": "dehydrator", "prob": 15 }, { "item": "jar_glass", "prob": 25, "count": [ 1, 12 ] }, diff --git a/data/json/itemgroups/supplies.json b/data/json/itemgroups/supplies.json index b658acc2375b..425dcf5b9a89 100644 --- a/data/json/itemgroups/supplies.json +++ b/data/json/itemgroups/supplies.json @@ -261,7 +261,8 @@ [ "recharge_station", 10 ], [ "tarp", 15 ], [ "tempered_glass_sheet", 25 ], - [ "rigid_plastic_sheet", 30 ] + [ "rigid_plastic_sheet", 30 ], + [ "trash_can_empty", 25 ] ] }, { diff --git a/data/json/items/containers.json b/data/json/items/containers.json index 013bad08bbfd..f8b00791e1c3 100644 --- a/data/json/items/containers.json +++ b/data/json/items/containers.json @@ -1325,5 +1325,24 @@ "symbol": "0", "contains": "200 L", "color": "yellow" + }, + { + "id": "trash_can_empty", + "type": "CONTAINER", + "category": "container", + "name": { "str": "plastic trash can" }, + "description": "A small plastic wastebasket for offices and kitchens. Could be repurposed as an open-top container if you're desperate, or placed back down.", + "weight": "1 kg", + "volume": "20 L", + "price": "10 USD", + "price_postapoc": "10 cent", + "material": "plastic", + "symbol": ")", + "looks_like": "plastic_pot_flower", + "color": "white", + "contains": "20 L", + "watertight": true, + "qualities": [ [ "CONTAIN", 1 ] ], + "use_action": { "type": "deploy_furn", "furn_type": "f_trashcan" } } ] diff --git a/data/json/recipes/other/containers.json b/data/json/recipes/other/containers.json index 63e3fb1a7eff..d3911fa47d35 100644 --- a/data/json/recipes/other/containers.json +++ b/data/json/recipes/other/containers.json @@ -588,5 +588,17 @@ "autolearn": true, "qualities": [ { "id": "CUT", "level": 1 } ], "components": [ [ [ "cardboard", 90 ] ], [ [ "duct_tape", 100 ] ] ] + }, + { + "type": "recipe", + "result": "trash_can_empty", + "category": "CC_OTHER", + "subcategory": "CSC_OTHER_CONTAINERS", + "skill_used": "fabrication", + "difficulty": 3, + "time": "45 m", + "autolearn": true, + "tools": [ [ [ "mold_plastic", -1 ] ], [ [ "surface_heat", 40, "LIST" ] ] ], + "components": [ [ [ "plastic_chunk", 20 ] ] ] } ]