gai-ca2/project/scripts/player/tree/impl/testing/WalkToMouse.gd

18 lines
673 B
GDScript

class_name WalkToMouse
extends Task
func run(blackboard: Dictionary) -> void:
var world: World = blackboard["world"]
var player: PlayerManager = blackboard["player"]
var tilemap_navigation: TilemapNavigation = blackboard["navigation"]
world.tilemap_temperature.clear_cells()
var path: Array[Vector2i] = tilemap_navigation.find_path(player.board_position, world.tilemap_mouse_position(), player.view_distance)
if len(path) == 0:
status = FAILURE
for pos in path:
world.tilemap_temperature.set_cell(pos, tilemap_types.TEMPERATURE_COLD_1)
player.walk_along(path)
status = SUCCESS