gai-ca2/project/scripts/player/tree/impl/game/boat/TaskGoToBoatLocation.gd

21 lines
832 B
GDScript

class_name TaskGoToBoatLocation
extends Task
func run(blackboard: Dictionary) -> void:
var world: World = blackboard["world"]
var player: PlayerManager = blackboard["player"]
var navigation: TilemapNavigation = blackboard["navigation"]
var target: Vector2i = world.camp_manager.boat_build_location
StepVisualization.add_line_tileset(player.board_position, target, StepVisualization.LineType.SEARCH_SELECTED)
var path: Array[Vector2i] = navigation.find_path_allow_neighbors(player.board_position, target, player.view_distance)
if path.size() > 0:
blackboard["path"] = path
status_reason = "Found path to boat build location"
status = SUCCESS
return
status = FAILURE
status_reason = "No path found to boat build location " + str(target)