# Undercooked - a game about cooking # Copyright 2024 nokoe # # 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 . # class_name FullTile extends Floor var static_body = StaticBody3D.new() var item: Node3D = null func _init(rename: String, neighbors: Array): super(rename, neighbors) var shape = CollisionShape3D.new() var box = BoxShape3D.new() shape.position.y += .5 shape.shape = box shape.name = "Box" static_body.add_child(shape) static_body.name = "Body" base.add_child(static_body) # defines where items go when interacting static func interact_target() -> Vector3: return Vector3(0, 0, 0) # actions when interacting, e.g. animations func interact(): pass func put_item(i: Node3D): if item != null: push_error("already holding an item") item = i func take_item() -> Node3D: var i = item item = null return i