TargetHighlighter
AUTO-GENERATED FILE — DO NOT EDIT MANUALLY
Source: components/target_highlighter.gd
Version: 5.0
class_name: TargetHighlighter
extends: GBSystemsComponent
Summary
When a target node is set on the build state, marks it by colors based on the settings of its Manipulatable node (or lack thereof)
Signals
(none)
Exports
(none)
Methods
resolve_gb_dependencies()- Resolves dependencies from the composition container. Sets up mode state, targeting state, manipulation state, and highlight settings.[br][br] [code]p_container[/code]: [i]GBCompositionContainer[/i] - Container with system dependencies and settings
set_movable_display()- Sets a canvas item modulate to either the valid or invalid move color. Returns the new modulate color.[br][br] [code]p_target[/code]: [i]CanvasItem[/i] - Target canvas item to set modulate color on[br] [code]p_movable[/code]: [i]bool[/i] - Whether the target is movable (valid) or not (invalid)
set_demolish_display()- Sets a canvas item modulate to either the valid or invalid demolish color. Returns the new modulate color.[br][br] [code]p_target[/code]: [i]CanvasItem[/i] - Target canvas item to set modulate color on[br] [code]p_demolishable[/code]: [i]bool[/i] - Whether the target is demolishable (valid) or not (invalid)
set_build_preview_display()- Setsthe color of a build preview to the preview color
set_info_display()set_actionable_colors()- Sets the target modulate to colors based on current mode actionability. Changes color based on whether the target can be affected by the current mode’s action.[br][br] [code]p_target[/code]: [i]CanvasItem[/i] - Target canvas item to set actionable colors on
should_highlight()- Checks if the highlighter should highlight the target based on manipulation data. Returns true if the target matches the manipulation data target.[br][br] [code]p_data[/code]: [i]ManipulationData[/i] - Current manipulation data to compare against[br] [code]p_target[/code]: [i]CanvasItem[/i] - Target canvas item to check for highlighting
is_locked()- Returns true if the highlighter is locked by active manipulation state. A locked highlighter won’t respond to target changes until manipulation finishes.
get_runtime_issues()- Validates that all required dependencies are properly set. Returns true if all dependencies are valid, false otherwise.
_on_data_changed()_on_started()- Move the modulate to the manipulation target and set the manipulation color
_on_canceled()- Return the modulate to the highlighter and set the color to the default
_on_finished()_on_target_changed()- Response for when the grid targeting state target changes
_on_mode_changed()- Refresh colors when mode changes (e.g. MOVE -> DEMOLISH) for the same target
_is_preview_object()- Check if the target is a preview object (has building_node script attached) Returns true if the target has the building_node script, indicating it’s a preview object