diff options
Diffstat (limited to 'client/map/tiles/floor.gd')
| -rw-r--r-- | client/map/tiles/floor.gd | 60 | 
1 files changed, 2 insertions, 58 deletions
| diff --git a/client/map/tiles/floor.gd b/client/map/tiles/floor.gd index c5089feb..6a158c67 100644 --- a/client/map/tiles/floor.gd +++ b/client/map/tiles/floor.gd @@ -14,66 +14,10 @@  # along with this program.  If not, see <https://www.gnu.org/licenses/>.  #   class_name Floor -extends Node3D - -var base = Node3D.new() -var item: Item = null -var item_base: Node3D - -enum Facing { -	NEG_Y = 0, -	NEG_X = 1, -	Y = 2, -	X = 3, -} +extends Tile  func _init(rename: String, _neighbors: Array): +	super(rename, _neighbors)  	var floor_tile = load("res://map/tiles/floor.tscn").instantiate()  	floor_tile.position += Vector3(0.5, 0, 0.5)  	add_child(floor_tile) -	base.name = "Base" -	base.position += Vector3(0.5, 0, 0.5) -	add_child(base) -	self.name = rename -	var item_base_ = Node3D.new() -	# this method is supposed to be overriden -	@warning_ignore("static_called_on_instance") -	item_base_.position = interact_target() -	item_base_.name = "ItemBase" -	base.add_child(item_base_) -	item_base = item_base_ - -func turn_facing(facing: Facing): -	base.rotate_y(facing * 0.5 * PI + PI) - -# 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 progress(p: float, warn: bool): -	if item != null: -		item.progress(p, warn) - -func finish(warn: bool): -	if item != null: -		item.finish(warn) - -func put_item(i: Item): -	if item != null: -		push_error("already holding an item") -	set_item(i) - -func set_item(i: Item): -	if item != null: -		item.queue_free() -	item = i -	i.owned_by = item_base - -func take_item() -> Item: -	var i = item -	item = null -	return i | 
