From: deltanedas <39013340+deltanedas@users.noreply.github.com>
Date: Mon, 2 Oct 2023 19:21:15 +0000 (+0100)
Subject: Add rolling pins for flattening dough (#20624)
X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=4c4627330395362534857571c5829b05c9cd811e;p=space-station-14.git
Add rolling pins for flattening dough (#20624)
---
diff --git a/Resources/Locale/en-US/tools/tool-qualities.ftl b/Resources/Locale/en-US/tools/tool-qualities.ftl
index d12eb1104e..331925b4b9 100644
--- a/Resources/Locale/en-US/tools/tool-qualities.ftl
+++ b/Resources/Locale/en-US/tools/tool-qualities.ftl
@@ -26,4 +26,7 @@ tool-quality-honking-name = Honking
tool-quality-honking-tool-name = Bike Horn
tool-quality-woodcutting-name = Woodcutting
-tool-quality-woodcutting-tool-name = Hatchet
\ No newline at end of file
+tool-quality-woodcutting-tool-name = Hatchet
+
+tool-quality-rolling-name = Rolling
+tool-quality-rolling-tool-name = Rolling Pin
diff --git a/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml b/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml
index ccf702b210..86f35b5269 100644
--- a/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml
+++ b/Resources/Prototypes/Catalog/VendingMachines/Inventories/dinnerware.yml
@@ -3,6 +3,7 @@
startingInventory:
ButchCleaver: 1
KitchenKnife: 5
+ RollingPin: 4
Spoon: 4
Fork: 4
FoodBowlBig: 10
diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles.yml
index bd81756816..2fa487fa2c 100644
--- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles.yml
+++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_bottles.yml
@@ -39,6 +39,10 @@
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
+ - type: Tool
+ qualities:
+ - Rolling
+ speed: 0.75 # not as good as a rolling pin but does the job
- type: TrashOnEmpty
solution: drink
diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml
index a68aba3d6e..118b242136 100644
--- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml
+++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml
@@ -48,6 +48,10 @@
damage:
types:
Blunt: 0
+ - type: Tool
+ qualities:
+ - Rolling
+ speed: 0.25 # its small so takes longer to roll the entire dough flat
- type: ItemCooldown
- type: SpaceGarbage
- type: TrashOnEmpty
diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Food/ingredients.yml b/Resources/Prototypes/Entities/Objects/Consumable/Food/ingredients.yml
index c3b3bba35b..8ef9bab706 100644
--- a/Resources/Prototypes/Entities/Objects/Consumable/Food/ingredients.yml
+++ b/Resources/Prototypes/Entities/Objects/Consumable/Food/ingredients.yml
@@ -334,6 +334,9 @@
- type: SliceableFood
count: 3
slice: FoodDoughSlice
+ - type: Construction
+ graph: Pizza
+ node: start
- type: entity
name: dough slice
@@ -424,6 +427,9 @@
components:
- type: Sprite
state: dough-flat
+ - type: Construction
+ graph: Pizza
+ node: flat
- type: entity
name: pizza bread
diff --git a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml
index 344d707443..66ab0ab7fb 100644
--- a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml
+++ b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml
@@ -42,6 +42,10 @@
Blunt: 10
soundHit:
path: /Audio/Weapons/smash.ogg
+ - type: Tool
+ qualities:
+ - Rolling
+ speed: 0.5 # its very big, akward to use
- type: Appearance
- type: GenericVisualizer
visuals:
diff --git a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml
index 7f4ee54f79..0fde43be31 100644
--- a/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml
+++ b/Resources/Prototypes/Entities/Objects/Tools/gas_tanks.yml
@@ -42,7 +42,17 @@
price: 20
- type: entity
+ abstract: true
parent: GasTankBase
+ id: GasTankRoundBase
+ components:
+ - type: Tool
+ qualities:
+ - Rolling
+ speed: 0.6 # fairly unwieldly but nice round surface
+
+- type: entity
+ parent: GasTankRoundBase
id: OxygenTank
name: oxygen tank
description: A standard cylindrical gas tank for oxygen.
@@ -68,7 +78,7 @@
sprite: Objects/Tanks/yellow.rsi
- type: entity
- parent: GasTankBase
+ parent: GasTankRoundBase
id: NitrogenTank
name: nitrogen tank
description: A standard cylindrical gas tank for nitrogen.
@@ -81,7 +91,7 @@
sprite: Objects/Tanks/red.rsi
- type: entity
- parent: GasTankBase
+ parent: GasTankRoundBase
id: EmergencyOxygenTank
name: emergency oxygen tank
description: An easily portable tank for emergencies. Contains very little oxygen, rated for survival use only.
@@ -152,7 +162,7 @@
Blunt: 7.5
- type: entity
- parent: GasTankBase
+ parent: GasTankRoundBase
id: AirTank
name: air tank
description: Mixed anyone?
@@ -168,7 +178,7 @@
sprite: Objects/Tanks/generic.rsi
- type: entity
- parent: GasTankBase
+ parent: GasTankRoundBase
id: NitrousOxideTank
name: nitrous oxide tank
description: Contains a mixture of air and nitrous oxide. Make sure you don't refill it with pure N2O.
@@ -186,6 +196,7 @@
sprite: Objects/Tanks/anesthetic.rsi
- type: entity
+ # it's a square so no rolling dough
parent: GasTankBase
id: PlasmaTank
name: plasma tank
diff --git a/Resources/Prototypes/Entities/Objects/Tools/tools.yml b/Resources/Prototypes/Entities/Objects/Tools/tools.yml
index 82bef616de..c9e7bd0403 100644
--- a/Resources/Prototypes/Entities/Objects/Tools/tools.yml
+++ b/Resources/Prototypes/Entities/Objects/Tools/tools.yml
@@ -497,3 +497,27 @@
Wood: 50
- type: StaticPrice
price: 25
+
+- type: entity
+ parent: BaseItem
+ id: RollingPin
+ name: rolling pin
+ description: A tool used to shape and flatten dough.
+ components:
+ - type: Sprite
+ sprite: Objects/Tools/rolling_pin.rsi
+ state: icon
+ - type: Item
+ sprite: Objects/Tools/rolling_pin.rsi
+ size: 10
+ - type: ItemCooldown
+ - type: MeleeWeapon
+ damage:
+ types:
+ Blunt: 7
+ - type: Tool
+ qualities:
+ - Rolling
+ - type: PhysicalComposition
+ materialComposition:
+ Wood: 100
diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Melee/baseball_bat.yml b/Resources/Prototypes/Entities/Objects/Weapons/Melee/baseball_bat.yml
index c8134180bc..4cd71e7239 100644
--- a/Resources/Prototypes/Entities/Objects/Weapons/Melee/baseball_bat.yml
+++ b/Resources/Prototypes/Entities/Objects/Weapons/Melee/baseball_bat.yml
@@ -18,6 +18,10 @@
Blunt: 8
- type: Item
size: 80
+ - type: Tool
+ qualities:
+ - Rolling
+ speed: 0.75 # a bit unwieldly but does the job
- type: Clothing
quickEquip: false
slots:
diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/food/pizza.yml b/Resources/Prototypes/Recipes/Construction/Graphs/food/pizza.yml
new file mode 100644
index 0000000000..c8184100dd
--- /dev/null
+++ b/Resources/Prototypes/Recipes/Construction/Graphs/food/pizza.yml
@@ -0,0 +1,14 @@
+- type: constructionGraph
+ id: Pizza
+ start: start
+ graph:
+ - node: start
+ entity: FoodDough
+ edges:
+ - to: flat
+ steps:
+ - tool: Rolling
+ doAfter: 1
+ - node: flat
+ entity: FoodDoughFlat
+ # TODO: add stuff for adding ingredients then cooking the pizza, wsci
diff --git a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml
index 3b15730535..1290c73a1d 100644
--- a/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml
+++ b/Resources/Prototypes/Recipes/Cooking/meal_recipes.yml
@@ -482,14 +482,14 @@
solids:
FoodBreadPlainSlice: 2
-#Pizzas
+#Pizzas TODO: contruction graph based pizza
- type: microwaveMealRecipe
id: RecipeMargheritaPizza
name: margherita pizza recipe
result: FoodPizzaMargherita
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodCheeseSlice: 1
FoodTomato: 4
@@ -499,7 +499,7 @@
result: FoodPizzaMushroom
time: 25
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodMushroom: 5
- type: microwaveMealRecipe
@@ -508,7 +508,7 @@
result: FoodPizzaMeat
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodMeat: 3
FoodCheeseSlice: 1
FoodTomato: 1
@@ -519,7 +519,7 @@
result: FoodPizzaVegetable
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodEggplant: 1
FoodCarrot: 1
FoodCorn: 1
@@ -531,7 +531,7 @@
result: FoodPizzaPineapple
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodMeatChickenCutlet: 3
FoodPineappleSlice: 5
@@ -541,7 +541,7 @@
result: FoodPizzaDank
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodAmbrosiaVulgaris: 3
FoodCheeseSlice: 1
FoodTomato: 1
@@ -552,7 +552,7 @@
result: FoodPizzaDonkpocket
time: 30
solids:
- FoodDough: 1
+ FoodDoughFlat: 1
FoodDonkpocketWarm: 3
FoodCheeseSlice: 1
FoodTomato: 1
diff --git a/Resources/Prototypes/tool_qualities.yml b/Resources/Prototypes/tool_qualities.yml
index 6525454287..ff55d9fcf1 100644
--- a/Resources/Prototypes/tool_qualities.yml
+++ b/Resources/Prototypes/tool_qualities.yml
@@ -59,4 +59,11 @@
name: tool-quality-honking-name
toolName: tool-quality-honking-tool-name
spawn: BikeHorn
- icon: { sprite: Objects/Fun/bikehorn.rsi, state: icon }
\ No newline at end of file
+ icon: { sprite: Objects/Fun/bikehorn.rsi, state: icon }
+
+- type: tool
+ id: Rolling
+ name: tool-quality-rolling-name
+ toolName: tool-quality-rolling-tool-name
+ spawn: RollingPin
+ icon: { sprite: Objects/Tools/rolling_pin.rsi, state: icon }
diff --git a/Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml b/Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml
index 02bf32677e..338cbea408 100644
--- a/Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml
+++ b/Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml
@@ -25,6 +25,7 @@ WARNING: This is not an automatically generated list, things here may become out
+
@@ -39,6 +40,7 @@ WARNING: This is not an automatically generated list, things here may become out
- Bun: Microwave Dough Slice for 5 Seconds
- Cutlet: Slice Raw Meat
- Cheese Wedge: Slice Cheese Wheel
+- Flat Dough: Use a rolling pin or a round object (fire extinguisher, soda can, bottle) on Dough.
## Food Examples
@@ -46,7 +48,7 @@ WARNING: This is not an automatically generated list, things here may become out
- Plain Burger: Microwave 1 Bun and 1 Raw Meat for 10 Seconds
- Tomato Soup: 10u Water, 1 Bowl, and 2 Tomatoes for 10 Seconds
- Citrus Salad: 1 Bowl, 1 Lemon, 1 Lime, 1 Orange for 5 Seconds
-- Margherita Pizza: Microwave 1 Dough, 1 Cheese Wedge, and 4 Tomatoes for 30 Seconds
+- Margherita Pizza: Microwave 1 Flat Dough, 1 Cheese Wedge, and 4 Tomatoes for 30 Seconds
- Cake: 1 Cake Batter for 15 Seconds
- Apple Pie: 1 Pie Dough, 3 Apples, and 1 Pie Tin for 15 Seconds
diff --git a/Resources/Textures/Objects/Tools/rolling_pin.rsi/icon.png b/Resources/Textures/Objects/Tools/rolling_pin.rsi/icon.png
new file mode 100644
index 0000000000..4cc81ec2c6
Binary files /dev/null and b/Resources/Textures/Objects/Tools/rolling_pin.rsi/icon.png differ
diff --git a/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-left.png b/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-left.png
new file mode 100644
index 0000000000..d356033481
Binary files /dev/null and b/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-right.png b/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-right.png
new file mode 100644
index 0000000000..6866756289
Binary files /dev/null and b/Resources/Textures/Objects/Tools/rolling_pin.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Objects/Tools/rolling_pin.rsi/meta.json b/Resources/Textures/Objects/Tools/rolling_pin.rsi/meta.json
new file mode 100644
index 0000000000..407ebc30c0
--- /dev/null
+++ b/Resources/Textures/Objects/Tools/rolling_pin.rsi/meta.json
@@ -0,0 +1,22 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "icon.png taken from https://github.com/DesertRose2/desertrose/blob/0348c98f8343b5cb82d87df12411ba647b2b1b4f/icons/obj/kitchen.dmi. Inhand sprites created by deltanedas (github) for SS14.",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ }
+ ]
+}