aboutsummaryrefslogtreecommitdiff
path: root/client/map
diff options
context:
space:
mode:
Diffstat (limited to 'client/map')
-rw-r--r--client/map/deep_fryer_basket.res (renamed from client/map/tiles/deep_fryer_basket.res)bin14285 -> 14285 bytes
-rw-r--r--client/map/item_factory.gd1
-rw-r--r--client/map/items/basket.gd44
-rw-r--r--client/map/items/basket.gd.uid1
-rw-r--r--client/map/items/basket.tscn9
-rw-r--r--client/map/tiles/deep_fryer.gd2
-rw-r--r--client/map/tiles/deep_fryer.tscn7
7 files changed, 57 insertions, 7 deletions
diff --git a/client/map/tiles/deep_fryer_basket.res b/client/map/deep_fryer_basket.res
index afcb1889..afcb1889 100644
--- a/client/map/tiles/deep_fryer_basket.res
+++ b/client/map/deep_fryer_basket.res
Binary files differ
diff --git a/client/map/item_factory.gd b/client/map/item_factory.gd
index 9a4200e5..8261650d 100644
--- a/client/map/item_factory.gd
+++ b/client/map/item_factory.gd
@@ -62,6 +62,7 @@ static func produce(raw_name: String, owned_by: Node3D) -> Item:
"dirty-plate": return Plate.new(owned_by, ["dirt"])
"pot": return Pot.new(owned_by, item.contents)
+ "basket": return Basket.new(owned_by, item.contents)
"pan": return Pan.new(owned_by, item.contents)
"foodprocessor": return FoodProcessor.new(owned_by, item.contents)
"glass": return Glass.new(owned_by, item.contents)
diff --git a/client/map/items/basket.gd b/client/map/items/basket.gd
new file mode 100644
index 00000000..459d6b81
--- /dev/null
+++ b/client/map/items/basket.gd
@@ -0,0 +1,44 @@
+# Hurry Curry! - a game about cooking
+# Copyright (C) 2025 Hurry Curry! contributors
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, version 3 of the License only.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+#
+class_name Basket
+extends Item
+
+var steam: CPUParticles3D = load("res://map/items/steam.tscn").instantiate()
+
+func _init(owned_by_: Node3D, contents: Array):
+ super(owned_by_)
+ add_child(load("res://map/items/basket.tscn").instantiate())
+ base.add_child(steam)
+
+ for i in contents:
+ match i:
+ _:
+ base.add_child(ItemFactory.produce(i, self))
+
+func progress(position_: float, speed: float, warn: bool):
+ super(position_, speed, warn)
+ steam.emitting = true
+ if warn:
+ steam.color = Color(.2, .2, .2)
+ else:
+ steam.color = Color(1.,1.,1.)
+
+func finish():
+ super()
+ steam.emitting = false
+
+static func base_position() -> Vector3:
+ return Vector3(0.,0.015, 0.)
diff --git a/client/map/items/basket.gd.uid b/client/map/items/basket.gd.uid
new file mode 100644
index 00000000..deef2f3b
--- /dev/null
+++ b/client/map/items/basket.gd.uid
@@ -0,0 +1 @@
+uid://c3aiw6tx8ebql
diff --git a/client/map/items/basket.tscn b/client/map/items/basket.tscn
new file mode 100644
index 00000000..c6f92a50
--- /dev/null
+++ b/client/map/items/basket.tscn
@@ -0,0 +1,9 @@
+[gd_scene load_steps=2 format=3 uid="uid://bu0o7coy26rwx"]
+
+[ext_resource type="ArrayMesh" uid="uid://bqwi4qvtgjlk5" path="res://map/deep_fryer_basket.res" id="1_7yj46"]
+
+[node name="Basket" type="Node3D"]
+
+[node name="Mesh" type="MeshInstance3D" parent="."]
+transform = Transform3D(0.75, 0, 0, 0, 0.75, 0, 0, 0, 0.75, 0, 0, 0)
+mesh = ExtResource("1_7yj46")
diff --git a/client/map/tiles/deep_fryer.gd b/client/map/tiles/deep_fryer.gd
index c50f1fd0..b5951630 100644
--- a/client/map/tiles/deep_fryer.gd
+++ b/client/map/tiles/deep_fryer.gd
@@ -23,4 +23,4 @@ func _init(ctx: TileFactory.TileCC):
base.add_child(deep_fryer)
static func interact_target() -> Vector3:
- return Vector3(0., 0.575, 0.)
+ return Vector3(0., 0.55, 0.)
diff --git a/client/map/tiles/deep_fryer.tscn b/client/map/tiles/deep_fryer.tscn
index f16e363e..cb854ec0 100644
--- a/client/map/tiles/deep_fryer.tscn
+++ b/client/map/tiles/deep_fryer.tscn
@@ -1,7 +1,6 @@
-[gd_scene load_steps=5 format=3 uid="uid://bys6bffu5srpt"]
+[gd_scene load_steps=4 format=3 uid="uid://bys6bffu5srpt"]
[ext_resource type="ArrayMesh" uid="uid://bketpomfy35to" path="res://map/tiles/deep_fryer_base.res" id="1_e4g0d"]
-[ext_resource type="ArrayMesh" uid="uid://bqwi4qvtgjlk5" path="res://map/tiles/deep_fryer_basket.res" id="2_kukwf"]
[ext_resource type="ArrayMesh" uid="uid://c7k6gevpwdbv0" path="res://map/tiles/deep_fryer_fill.res" id="3_1rwcx"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_1rwcx"]
@@ -15,10 +14,6 @@ roughness = 0.1
transform = Transform3D(0.75, 0, 0, 0, -3.278354e-08, -0.75, 0, 0.75, -3.278354e-08, 0, 0.5, 0)
mesh = ExtResource("1_e4g0d")
-[node name="Basket" type="MeshInstance3D" parent="."]
-transform = Transform3D(0.75, 0, 0, 0, 0.75, 0, 0, 0, 0.75, 0, 0.55, 0)
-mesh = ExtResource("2_kukwf")
-
[node name="Fill" type="MeshInstance3D" parent="."]
transform = Transform3D(0.75, 0, 0, 0, -3.278354e-08, -0.75, 0, 0.75, -3.278354e-08, 0, 0.5, 0)
mesh = ExtResource("3_1rwcx")