GBAStarPathManager
Summary
Section titled “Summary”Manage configuration and path queries for AStarGrid2D instances used by grid targeting.
Methods
Section titled “Methods”func_init(
settings: GridTargetingSettings,
p_target_map:TileMapLayer
)
->void
Optionally configure dependencies during construction.
settings: Targeting settings to apply immediately.funcget_grid( ) ->AStarGrid2DReturn the managed AStarGrid2D instance. Returns: The active AStarGrid2D.
funcset_grid(
grid: AStarGrid2D)
->bool
Replace the managed AStarGrid2D instance.
grid: Grid to adopt; when null, a new AStarGrid2D is allocated.funcconfigure(
settings: GridTargetingSettings)
->void
Configure the manager using targeting settings and optional logger.
settings: Targeting settings that drive grid configuration.func _apply_settings( ) ->void
Apply the current settings to the managed grid, updating key heuristics and region.
func _update_region_from_settings( ) ->void
- Update the grid region using the targeting settings region_size.
func on_region_size_changed(
size:Vector2i
)
->void
Respond to a region size change event from GridTargetingSettings.
size: New region size to apply.func on_diagonal_mode_changed(
mode: AStarGrid2D.DiagonalMode)
->void
- Respond to a diagonal mode change.
mode: New diagonal mode. func on_default_compute_heuristic_changed(
heuristic: AStarGrid2D.Heuristic)
->void
Respond to a compute heuristic change.
heuristic: New compute heuristic.func on_default_estimate_heuristic_changed(
heuristic: AStarGrid2D.Heuristic)
->void
Respond to an estimate heuristic change.
heuristic: New estimate heuristic.func on_cell_shape_changed(
shape: AStarGrid2D.CellShape)
->void
- Respond to a cell shape change.
shape: New cell shape. func update_region(
map:TileMapLayer
)
->void
Update the cached region bounds from the provided map.
map: Tile map the positioner operates on.func update_if_dirty( ) ->void
- Update the managed grid when marked dirty.
func resolve_target_tile(
source:Node2D
,
target_tile:Vector2i
,
map:TileMapLayer
,
settings_override: GridTargetingSettings)
->Vector2i
Resolve the desired target tile by applying region refresh and limiting rules.
source: Node whose tile acts as the origin for adjacency limits.target_tile: Desired destination tile.map: Tile map providing region bounds.settings_override: Optional settings override used during limiting. Returns: Tile clamped to region and adjacency limits.func get_closest_valid_tile(
requested_tile:Vector2i
,
source:Node2D
,
map:TileMapLayer
,
settings_override: GridTargetingSettings)
->Vector2i
Public facade: return the closest valid tile given a requested tile and a source node. This consolidates adjacency & region logic in one place for callers.
func limit_tile_to_max_distance(
source:Node2D
,
target_tile:Vector2i
,
map:TileMapLayer
,
settings_override: GridTargetingSettings)
->Vector2i
Limit the desired tile so it does not exceed the configured max distance from the source node.
source: Node whose tile is used as the origin for distance checks.target_tile: Desired tile to clamp.map: Map used for conversions and fallback region data.settings_override: Optional override for targeting settings. Returns: Tile respecting adjacency and region limits.func _limit_using_astar(
source_tile:Vector2i
,
target_tile:Vector2i
,
max_steps:int
,
region:Rect2i
)
->Variant
func _limit_via_step(
current_tile:Vector2i
,
target_tile:Vector2i
,
max_steps:int
,
diagonal_mode:int
,
region:Rect2i
)
->Vector2i
func _step_toward(
current:Vector2i
,
target:Vector2i
,
diagonal_mode:int
)
->Vector2i
func _sample_tile_from_node(
node:Node2D
,
map:TileMapLayer
)
->Vector2i
Source
Section titled “Source”addons/grid_building/systems/grid_targeting/runtime/gb_astar_path_manager.gd
This API reference is automatically generated from the plugin source code. For implementation examples and usage guides, see the guides section.