# 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 CounterWindowConveyor
extends WallTile

var conveyor: ConveyorModel = preload("res://map/tiles/counter_window_conveyor.tscn").instantiate()

func _init(ctx: TileFactory.TileCC):
	super(ctx)
	match kind:
		WallKind.STRAIGHT:
			add_dyed_mesh(ctx, conveyor)
		WallKind.OUTER_CORNER:
			push_warning("There is no corner counter window!")
			add_dyed_mesh(ctx, conveyor)

static func interact_target(): # -> Vector3?
	return Vector3(0., .425, 0.)

func pass_to(tile: Tile):
	super(tile)
	var dir: Vector3 = (tile.position - position)
	conveyor.to_direction(Vector2(dir.x, dir.z).normalized())
