diff options
author | tpart <tpart120@proton.me> | 2024-09-15 11:37:54 +0200 |
---|---|---|
committer | tpart <tpart120@proton.me> | 2024-09-15 11:37:54 +0200 |
commit | 4ae13902faf58d34e3ee9167171b1e7dbbd0700e (patch) | |
tree | 3de7bd5e83688ef8d0621e7a571bbc70e9ac8867 /client/map | |
parent | 1a42e49d6ed33bdce92e673f2d38f0d3104d1b6b (diff) | |
download | hurrycurry-4ae13902faf58d34e3ee9167171b1e7dbbd0700e.tar hurrycurry-4ae13902faf58d34e3ee9167171b1e7dbbd0700e.tar.bz2 hurrycurry-4ae13902faf58d34e3ee9167171b1e7dbbd0700e.tar.zst |
Add pan model; Implement item
Diffstat (limited to 'client/map')
-rw-r--r-- | client/map/item_factory.gd | 1 | ||||
-rw-r--r-- | client/map/items/pan.gd | 46 | ||||
-rw-r--r-- | client/map/items/pan.res | bin | 0 -> 12348 bytes | |||
-rw-r--r-- | client/map/items/pan.tscn | 10 |
4 files changed, 57 insertions, 0 deletions
diff --git a/client/map/item_factory.gd b/client/map/item_factory.gd index 97edd66f..fb7e1131 100644 --- a/client/map/item_factory.gd +++ b/client/map/item_factory.gd @@ -49,6 +49,7 @@ static func produce(full_name: String, owned_by: Node3D) -> Item: "sliced-lettuce": return SlicedLettuce.new(owned_by) "pot": return Pot.new(owned_by, contents) + "pan": return Pan.new(owned_by, contents) "foodprocessor": return FoodProcessor.new(owned_by, contents) "glass": return Glass.new(owned_by, contents) "plate": return Plate.new(owned_by, contents) diff --git a/client/map/items/pan.gd b/client/map/items/pan.gd new file mode 100644 index 00000000..af245316 --- /dev/null +++ b/client/map/items/pan.gd @@ -0,0 +1,46 @@ +# Hurry Curry! - a game about cooking +# Copyright 2024 nokoe +# Copyright 2024 tpart +# +# 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 Pan +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/pan.tscn").instantiate()) + base.add_child(steam) + for c in contents: + base.add_child(ItemFactory.produce(c, owned_by_)) + +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 + +func setup_sounds(): + take_sound.setup([preload("res://map/items/sounds/pot_take.ogg")]) + put_sound.setup([preload("res://map/items/sounds/pot_put.ogg")]) + +static func base_position() -> Vector3: + return Vector3(0.,0.015, 0.) diff --git a/client/map/items/pan.res b/client/map/items/pan.res Binary files differnew file mode 100644 index 00000000..03dcf8f9 --- /dev/null +++ b/client/map/items/pan.res diff --git a/client/map/items/pan.tscn b/client/map/items/pan.tscn new file mode 100644 index 00000000..661814d9 --- /dev/null +++ b/client/map/items/pan.tscn @@ -0,0 +1,10 @@ +[gd_scene load_steps=2 format=3 uid="uid://b1fuw04fcbko8"] + +[ext_resource type="ArrayMesh" uid="uid://be0d8a6no06na" path="res://map/items/pan.res" id="1_m08s2"] + +[node name="Pan" type="Node3D"] + +[node name="Mesh" type="MeshInstance3D" parent="."] +transform = Transform3D(-2.18557e-08, 0, -0.5, 0, 0.5, 0, 0.5, 0, -2.18557e-08, 0, 0, 0) +mesh = ExtResource("1_m08s2") +skeleton = NodePath("") |