From 34fa4cbbcb0b3b5568514e7f7750e9ce4439c31e Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:08:35 -0400 Subject: [PATCH 1/7] Stuffed animals, wool pillows & mattresses Added in stuffed animal, a homemade equivalent of the teddy bear, and crafting recipe. Crafted pillows, body pillows, and down mattresses can now be made with yarn instead of cotton balls or down feathers, since wool-stuffed pillows and mattresses are a thing IRL. Renamed down mattress to 'cushiony mattress' to represent its now possible materials, with description adjusted to match. --- data/json/items/generic.json | 7 +++++++ data/json/items/resources/misc.json | 4 ++-- data/json/recipes/other/other.json | 19 ++++++++++++++++--- data/json/uncraft/generic.json | 2 +- 4 files changed, 26 insertions(+), 6 deletions(-) diff --git a/data/json/items/generic.json b/data/json/items/generic.json index 1d44966069e5..898f2f0480db 100644 --- a/data/json/items/generic.json +++ b/data/json/items/generic.json @@ -3152,5 +3152,12 @@ "name": { "str": "broken longrange milspec turret" }, "weight": "50 kg", "copy-from": "broken_turret" + }, + { + "type": "GENERIC", + "id": "stuffed_animal", + "copy-from": "teddy_bear", + "name": { "str": "stuffed animal" }, + "description": "A homemade stuffed animal. You're not sure what animal it's supposed to be, but it was clearly made with love." } ] diff --git a/data/json/items/resources/misc.json b/data/json/items/resources/misc.json index bbf70124f936..4f36d43dc358 100644 --- a/data/json/items/resources/misc.json +++ b/data/json/items/resources/misc.json @@ -105,8 +105,8 @@ "id": "down_mattress", "type": "GENERIC", "category": "spare_parts", - "name": { "str": "down mattress", "str_pl": "down mattresses" }, - "description": "This is a single, or twin, sized down filled mattress.", + "name": { "str": "cushiony mattress", "str_pl": "cushiony mattresses" }, + "description": "This is a single, or twin, sized mattress filled with down feathers or wool.", "weight": "6 kg", "volume": "300000 ml", "price": "10 USD", diff --git a/data/json/recipes/other/other.json b/data/json/recipes/other/other.json index cebf3775b6b4..0fbb156ffbec 100644 --- a/data/json/recipes/other/other.json +++ b/data/json/recipes/other/other.json @@ -35,7 +35,7 @@ "reversible": true, "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], - "components": [ [ [ "rag", 60 ] ], [ [ "down_feather", 1160 ] ] ] + "components": [ [ [ "rag", 60 ] ], [ [ "down_feather", 1160 ], [ "yarn", 650 ] ] ] }, { "type": "recipe", @@ -47,7 +47,7 @@ "reversible": true, "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], - "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ] ] ] + "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ], [ "yarn", 130 ] ] ] }, { "type": "recipe", @@ -59,7 +59,7 @@ "difficulty": 2, "autolearn": true, "using": [ [ "sewing_standard", 12 ], [ "drawing_tool", 20 ] ], - "components": [ [ [ "sheet", 1 ] ], [ [ "cotton_ball", 20 ] ] ] + "components": [ [ [ "sheet", 1 ] ], [ [ "cotton_ball", 20 ], [ "yarn", 330 ] ] ] }, { "type": "recipe", @@ -533,5 +533,18 @@ "autolearn": true, "reversible": true, "components": [ [ [ "withered", 12 ], [ "straw_pile", 12 ] ] ] + }, + { + "type": "recipe", + "result": "stuffed_animal", + "category": "CC_OTHER", + "subcategory": "CSC_OTHER_OTHER", + "skill_used": "tailor", + "difficulty": 3, + "time": "15 m", + "reversible": true, + "autolearn": true, + "using": [ [ "sewing_standard", 12 ] ], + "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ], [ "yarn", 130 ] ] ] } ] diff --git a/data/json/uncraft/generic.json b/data/json/uncraft/generic.json index 140f81ef5807..e15a908366f3 100644 --- a/data/json/uncraft/generic.json +++ b/data/json/uncraft/generic.json @@ -1690,7 +1690,7 @@ "type": "uncraft", "time": "6 m", "qualities": [ { "id": "CUT", "level": 1 } ], - "components": [ [ [ "yarn", 50 ] ] ] + "components": [ [ [ "yarn", 80 ] ] ] }, { "result": "file", From e43d39480afefe2f9a84f0cb64466d92bfbdca1c Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:17:48 -0400 Subject: [PATCH 2/7] Removed stuffed animal Stuffed animal is removed, teddy bear is now craftable and has a changed description. --- data/json/items/generic.json | 9 +-------- data/json/recipes/other/other.json | 2 +- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/data/json/items/generic.json b/data/json/items/generic.json index 898f2f0480db..604d63399add 100644 --- a/data/json/items/generic.json +++ b/data/json/items/generic.json @@ -2376,7 +2376,7 @@ "symbol": "o", "color": "brown", "name": { "str": "teddy bear" }, - "description": "A mass-produced plush teddy bear. It is wearing a little red tshirt but no pants.", + "description": "A cuddly plush teddy bear. It is wearing a little red tshirt but no pants.", "price": "2 USD", "price_postapoc": "10 cent", "material": [ "cotton" ], @@ -3152,12 +3152,5 @@ "name": { "str": "broken longrange milspec turret" }, "weight": "50 kg", "copy-from": "broken_turret" - }, - { - "type": "GENERIC", - "id": "stuffed_animal", - "copy-from": "teddy_bear", - "name": { "str": "stuffed animal" }, - "description": "A homemade stuffed animal. You're not sure what animal it's supposed to be, but it was clearly made with love." } ] diff --git a/data/json/recipes/other/other.json b/data/json/recipes/other/other.json index 0fbb156ffbec..78c4a8daee08 100644 --- a/data/json/recipes/other/other.json +++ b/data/json/recipes/other/other.json @@ -536,7 +536,7 @@ }, { "type": "recipe", - "result": "stuffed_animal", + "result": "teddy_bear", "category": "CC_OTHER", "subcategory": "CSC_OTHER_OTHER", "skill_used": "tailor", From 3d28b723dfd79187c537c1477b8c27d66dac8d7f Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:23:34 -0400 Subject: [PATCH 3/7] Reverted down mattress, added wool mattress Down mattress is made with down feathers again, now wool mattress is its own thing. --- data/json/items/resources/misc.json | 13 +++++++++++-- data/json/recipes/other/other.json | 15 ++++++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/data/json/items/resources/misc.json b/data/json/items/resources/misc.json index 4f36d43dc358..c804ade27ae2 100644 --- a/data/json/items/resources/misc.json +++ b/data/json/items/resources/misc.json @@ -105,8 +105,8 @@ "id": "down_mattress", "type": "GENERIC", "category": "spare_parts", - "name": { "str": "cushiony mattress", "str_pl": "cushiony mattresses" }, - "description": "This is a single, or twin, sized mattress filled with down feathers or wool.", + "name": { "str": "down mattress", "str_pl": "down mattresses" }, + "description": "This is a single, or twin, sized down filled mattress.", "weight": "6 kg", "volume": "300000 ml", "price": "10 USD", @@ -217,5 +217,14 @@ "to_hit": -5, "flags": [ "TRADER_AVOID" ], "bashing": 15 + }, + { + "type": "GENERIC", + "id": "wool_mattress", + "copy-from": "down_mattress", + "looks_like": "down_mattress", + "name": { "str": "wool mattress" }, + "description": "A mattress made of wool. It is quite soft and comfortable.", + "material": [ "wool" ] } ] diff --git a/data/json/recipes/other/other.json b/data/json/recipes/other/other.json index 78c4a8daee08..f3caa5b55cdc 100644 --- a/data/json/recipes/other/other.json +++ b/data/json/recipes/other/other.json @@ -35,7 +35,7 @@ "reversible": true, "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], - "components": [ [ [ "rag", 60 ] ], [ [ "down_feather", 1160 ], [ "yarn", 650 ] ] ] + "components": [ [ [ "rag", 60 ] ], [ [ "down_feather", 1160 ] ] ] }, { "type": "recipe", @@ -546,5 +546,18 @@ "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ], [ "yarn", 130 ] ] ] + }, + { + "type": "recipe", + "result": "wool_mattress", + "category": "CC_OTHER", + "subcategory": "CSC_OTHER_OTHER", + "skill_used": "tailor", + "difficulty": 6, + "time": "240 m", + "reversible": true, + "autolearn": true, + "using": [ [ "sewing_standard", 12 ] ], + "components": [ [ [ "felt_patch", 60 ] ], [ [ "yarn", 650 ] ] ] } ] From 0dbfbbeb2f43c4adb07c2c1ead0714a5e2fa959d Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:24:29 -0400 Subject: [PATCH 4/7] Fixed wool mattress name plural --- data/json/items/resources/misc.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/items/resources/misc.json b/data/json/items/resources/misc.json index c804ade27ae2..e60216884469 100644 --- a/data/json/items/resources/misc.json +++ b/data/json/items/resources/misc.json @@ -223,7 +223,7 @@ "id": "wool_mattress", "copy-from": "down_mattress", "looks_like": "down_mattress", - "name": { "str": "wool mattress" }, + "name": { "str": "wool mattress", "str_pl": "wool mattresses" }, "description": "A mattress made of wool. It is quite soft and comfortable.", "material": [ "wool" ] } From d595f82a39825db4efaf395a5d8b547a39fea865 Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:35:13 -0400 Subject: [PATCH 5/7] Reverted pillow recipe, added wool pillow Pillows have a specific uncraft, so instead of using pillows to turn cotton balls into yarn, wool pillows are now a thing. Also added wool pillows to appropriate construction recipes. --- data/json/construction.json | 4 ++-- .../itemgroups/Locations_MapExtras/locations.json | 2 ++ data/json/itemgroups/furniture.json | 1 + data/json/items/generic.json | 9 +++++++++ data/json/recipes/other/other.json | 14 +++++++++++++- data/json/uncraft/generic.json | 7 +++++++ 6 files changed, 34 insertions(+), 3 deletions(-) diff --git a/data/json/construction.json b/data/json/construction.json index ea825fce6710..bb3ac75807fa 100644 --- a/data/json/construction.json +++ b/data/json/construction.json @@ -3462,7 +3462,7 @@ "time": "15 m", "pre_special": "check_empty", "components": [ - [ [ "pillow", 19 ], [ "down_pillow", 19 ], [ "mattress", 4 ] ], + [ [ "pillow", 19 ], [ "down_pillow", 19 ], [ "wool_pillow", 19 ], [ "mattress", 4 ] ], [ [ "down_blanket", 3 ], [ "blanket", 3 ], [ "fur_blanket", 3 ] ] ], "pre_terrain": "t_floor", @@ -3477,7 +3477,7 @@ "time": "15 m", "pre_special": "check_empty", "components": [ - [ [ "pillow", 4 ], [ "down_pillow", 4 ] ], + [ [ "pillow", 4 ], [ "down_pillow", 4 ], [ "wool_pillow", 4 ] ], [ [ "down_blanket", 2 ], [ "blanket", 2 ], [ "fur_blanket", 2 ] ], [ [ "box_large", 1 ] ], [ [ "plastic_sheet", 1 ] ], diff --git a/data/json/itemgroups/Locations_MapExtras/locations.json b/data/json/itemgroups/Locations_MapExtras/locations.json index 0c61b76dac5a..5fc863f7bee0 100644 --- a/data/json/itemgroups/Locations_MapExtras/locations.json +++ b/data/json/itemgroups/Locations_MapExtras/locations.json @@ -249,6 +249,7 @@ [ "down_blanket", 10 ], [ "pillow", 50 ], [ "down_pillow", 15 ], + [ "wool_pillow", 15 ], [ "smoxygen_tank", 10 ], [ "antiparasitic", 3 ], [ "diazepam", 3 ], @@ -2273,6 +2274,7 @@ [ "down_blanket", 10 ], [ "pillow", 20 ], [ "down_pillow", 15 ], + [ "wool_pillow", 15 ], [ "emer_blanket", 20 ], [ "flyer", 10 ], [ "gasoline_lantern", 5 ], diff --git a/data/json/itemgroups/furniture.json b/data/json/itemgroups/furniture.json index 289bc2359ba5..4b6faab33902 100644 --- a/data/json/itemgroups/furniture.json +++ b/data/json/itemgroups/furniture.json @@ -34,6 +34,7 @@ { "item": "down_blanket", "prob": 13 }, { "item": "pillow", "prob": 30 }, { "item": "down_pillow", "prob": 15 }, + { "item": "wool_pillow", "prob": 15 }, { "item": "electric_blanket", "prob": 4 } ] }, diff --git a/data/json/items/generic.json b/data/json/items/generic.json index 604d63399add..851879b0f648 100644 --- a/data/json/items/generic.json +++ b/data/json/items/generic.json @@ -3152,5 +3152,14 @@ "name": { "str": "broken longrange milspec turret" }, "weight": "50 kg", "copy-from": "broken_turret" + }, + { + "type": "GENERIC", + "id": "wool_pillow", + "copy-from": "pillow", + "looks_like": "pillow", + "name": { "str": "wool pillow" }, + "description": "A pillow to rest your head on when sleeping. This one is made entirely of fluffy wool!", + "material": [ "wool" ] } ] diff --git a/data/json/recipes/other/other.json b/data/json/recipes/other/other.json index f3caa5b55cdc..3913f43e1bb8 100644 --- a/data/json/recipes/other/other.json +++ b/data/json/recipes/other/other.json @@ -47,7 +47,7 @@ "reversible": true, "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], - "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ], [ "yarn", 130 ] ] ] + "components": [ [ [ "rag", 4 ] ], [ [ "cotton_ball", 8 ] ] ] }, { "type": "recipe", @@ -559,5 +559,17 @@ "autolearn": true, "using": [ [ "sewing_standard", 12 ] ], "components": [ [ [ "felt_patch", 60 ] ], [ [ "yarn", 650 ] ] ] + }, + { + "type": "recipe", + "result": "wool_pillow", + "category": "CC_OTHER", + "subcategory": "CSC_OTHER_OTHER", + "skill_used": "tailor", + "time": "10 m", + "reversible": true, + "autolearn": true, + "using": [ [ "sewing_standard", 12 ] ], + "components": [ [ [ "felt_patch", 4 ] ], [ [ "yarn", 130 ] ] ] } ] diff --git a/data/json/uncraft/generic.json b/data/json/uncraft/generic.json index e15a908366f3..fcd0aae1880d 100644 --- a/data/json/uncraft/generic.json +++ b/data/json/uncraft/generic.json @@ -4483,5 +4483,12 @@ "qualities": [ { "id": "CUT", "level": 1 } ], "components": [ [ [ "plastic_scrap", 1 ] ] ], "flags": [ "BLIND_EASY" ] + }, + { + "result": "wool_pillow", + "type": "uncraft", + "time": "1 m", + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "felt_patch", 4 ] ], [ [ "yarn", 130 ] ] ] } ] From ebd5c6a65340597fc0f52e0436f158b3c4d921db Mon Sep 17 00:00:00 2001 From: Chorus System Date: Thu, 18 Apr 2024 21:41:03 -0400 Subject: [PATCH 6/7] Wool mattress spawning Added wool mattresses to spawn in locations with the same chance as down mattresses. --- data/json/construction.json | 8 +++--- .../furniture-sleep.json | 27 +++++++++++++++++++ data/json/mapgen/mall/mall_ground.json | 3 ++- 3 files changed, 33 insertions(+), 5 deletions(-) diff --git a/data/json/construction.json b/data/json/construction.json index bb3ac75807fa..5a83bb72141e 100644 --- a/data/json/construction.json +++ b/data/json/construction.json @@ -1976,7 +1976,7 @@ "required_skills": [ [ "fabrication", 4 ] ], "time": "60 m", "qualities": [ [ { "id": "HAMMER", "level": 2 } ], [ { "id": "SAW_W", "level": 1 } ] ], - "components": [ [ [ "2x4", 12 ] ], [ [ "nail", 10 ] ], [ [ "mattress", 1 ], [ "down_mattress", 1 ] ] ], + "components": [ [ [ "2x4", 12 ] ], [ [ "nail", 10 ] ], [ [ "mattress", 1 ], [ "down_mattress", 1 ], [ "wool_mattress", 1 ] ] ], "pre_special": "check_empty", "post_furniture": "f_bed" }, @@ -1992,7 +1992,7 @@ [ [ "2x4", 16 ], [ "wood_panel", 4 ] ], [ [ "2x4", 14 ] ], [ [ "nail", 30 ] ], - [ [ "mattress", 2 ], [ "down_mattress", 2 ] ] + [ [ "mattress", 2 ], [ "down_mattress", 2 ], [ "wool_mattress", 2 ] ] ], "pre_special": "check_empty", "post_furniture": "f_bunkbed" @@ -2016,7 +2016,7 @@ "category": "FURN", "required_skills": [ [ "fabrication", 0 ] ], "time": "5 m", - "components": [ [ [ "mattress", 1 ], [ "down_mattress", 1 ] ] ], + "components": [ [ [ "mattress", 1 ], [ "down_mattress", 1 ], [ "wool_mattress", 1 ] ] ], "pre_furniture": "f_bed_frame", "dark_craftable": true, "post_furniture": "f_bed" @@ -3462,7 +3462,7 @@ "time": "15 m", "pre_special": "check_empty", "components": [ - [ [ "pillow", 19 ], [ "down_pillow", 19 ], [ "wool_pillow", 19 ], [ "mattress", 4 ] ], + [ [ "pillow", 19 ], [ "down_pillow", 19 ], [ "wool_pillow", 19 ], [ "mattress", 4 ], [ "down_mattress", 4 ], [ "wool_mattress", 4 ] ], [ [ "down_blanket", 3 ], [ "blanket", 3 ], [ "fur_blanket", 3 ] ] ], "pre_terrain": "t_floor", diff --git a/data/json/furniture_and_terrain/furniture-sleep.json b/data/json/furniture_and_terrain/furniture-sleep.json index 2ac1414a8c54..3dcc8afc6002 100644 --- a/data/json/furniture_and_terrain/furniture-sleep.json +++ b/data/json/furniture_and_terrain/furniture-sleep.json @@ -225,5 +225,32 @@ ], "ranged": { "reduction": [ 3, 6 ], "destroy_threshold": 20, "block_unaimed_chance": "25%" } } + }, + { + "type": "furniture", + "id": "f_wool_mattress", + "name": "wool mattress", + "description": "A comfortable wool mattress has been tossed on the floor for sleeping here. It's not quite as comfy as a real bed, but it's pretty close.", + "symbol": "0", + "color": "magenta", + "move_cost_mod": 3, + "coverage": 20, + "comfort": 4, + "floor_bedding_warmth": 800, + "required_str": 7, + "deployed_item": "wool_mattress", + "examine_action": "deployed_furniture", + "flags": [ "TRANSPARENT", "SHORT", "FLAMMABLE_ASH", "PLACE_ITEM", "ORGANIC", "MOUNTABLE" ], + "deconstruct": { "items": [ { "item": "wool_mattress", "count": 1 } ] }, + "bash": { + "str_min": 8, + "str_max": 30, + "sound": "rrrrip!", + "sound_fail": "whump.", + "items": [ + { "item": "felt_patch", "count": [ 40, 55 ] }, + { "item": "yarn", "count": [ 500, 650 ] } + ] + } } ] diff --git a/data/json/mapgen/mall/mall_ground.json b/data/json/mapgen/mall/mall_ground.json index 7f4fe296fa34..85f003101a02 100644 --- a/data/json/mapgen/mall/mall_ground.json +++ b/data/json/mapgen/mall/mall_ground.json @@ -1351,7 +1351,8 @@ { "item": "microwave", "x": 4, "y": 10, "chance": 100 }, { "item": "toaster", "x": 4, "y": 11, "chance": 100 }, { "item": "mattress", "x": [ 13, 15 ], "y": 20, "chance": 90, "repeat": [ 2, 6 ] }, - { "item": "down_mattress", "x": [ 13, 15 ], "y": 22, "chance": 70, "repeat": [ 2, 6 ] } + { "item": "down_mattress", "x": [ 13, 15 ], "y": 22, "chance": 70, "repeat": [ 2, 6 ] }, + { "item": "wool_mattress", "x": [ 13, 15 ], "y": 22, "chance": 70, "repeat": [ 2, 6 ] } ], "place_vendingmachines": [ { "item_group": "vending_drink", "x": 4, "y": 12 }, { "item_group": "vending_food", "x": 4, "y": 13 } ], "items": { From 5033196c8824e2edf96e72f5ff7361ff6d83af40 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Fri, 19 Apr 2024 01:42:41 +0000 Subject: [PATCH 7/7] style(autofix.ci): automated formatting --- data/json/construction.json | 9 ++++++++- data/json/furniture_and_terrain/furniture-sleep.json | 5 +---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/data/json/construction.json b/data/json/construction.json index 5a83bb72141e..8f66725f7d03 100644 --- a/data/json/construction.json +++ b/data/json/construction.json @@ -3462,7 +3462,14 @@ "time": "15 m", "pre_special": "check_empty", "components": [ - [ [ "pillow", 19 ], [ "down_pillow", 19 ], [ "wool_pillow", 19 ], [ "mattress", 4 ], [ "down_mattress", 4 ], [ "wool_mattress", 4 ] ], + [ + [ "pillow", 19 ], + [ "down_pillow", 19 ], + [ "wool_pillow", 19 ], + [ "mattress", 4 ], + [ "down_mattress", 4 ], + [ "wool_mattress", 4 ] + ], [ [ "down_blanket", 3 ], [ "blanket", 3 ], [ "fur_blanket", 3 ] ] ], "pre_terrain": "t_floor", diff --git a/data/json/furniture_and_terrain/furniture-sleep.json b/data/json/furniture_and_terrain/furniture-sleep.json index 3dcc8afc6002..ff3265ed753c 100644 --- a/data/json/furniture_and_terrain/furniture-sleep.json +++ b/data/json/furniture_and_terrain/furniture-sleep.json @@ -247,10 +247,7 @@ "str_max": 30, "sound": "rrrrip!", "sound_fail": "whump.", - "items": [ - { "item": "felt_patch", "count": [ 40, 55 ] }, - { "item": "yarn", "count": [ 500, 650 ] } - ] + "items": [ { "item": "felt_patch", "count": [ 40, 55 ] }, { "item": "yarn", "count": [ 500, 650 ] } ] } } ]