AUTO-GENERATED FILE — DO NOT EDIT MANUALLY
Source: placement/manager/components/placement_validator.gd
Version: 5.0
class_name: PlacementValidator
extends: GBInjectable
Signals
finished(results: ValidationResults)- Emitted when the setup failed
- Creates a PlacementValidator with dependency injection from container.
- Container serves as single source of truth for all dependencies.
- Parameters:
- container: GBCompositionContainer - The dependency container
- Returns:
- PlacementValidator - Fully configured placement validator with validated dependencies
setup_failed(issues: Dictionary, Array])- Creates a PlacementValidator with dependency injection from container.
- Container serves as single source of truth for all dependencies.
- Parameters:
- container: GBCompositionContainer - The dependency container
- Returns:
- PlacementValidator - Fully configured placement validator with validated dependencies
Exports
(none)
Methods
create_with_injection(container: GBCompositionContainer) -> PlacementValidator- Get dependencies from container as single source of truth
_init(p_base_rules: Array, p_logger: GBLogger) -> voidresolve_gb_dependencies(container: GBCompositionContainer) -> boolget_runtime_issues -> Arrayvalidate_placement -> ValidationResults- Check prerequisites using pure logic
_handle_validation_orchestration(results: ValidationResults) -> void- Log issues if any exist (as verbose, not warnings - this is normal gameplay feedback)
_setup_rules(p_rules: Array, p_gts: GridTargetingState) -> Dictionarysetup(p_rules: Array, p_gts: GridTargetingState) -> Dictionaryget_combined_rules(p_outside_rules: Array, p_ignore_base = false) -> Array- Use pure logic class for rule combination
_pre_check_tile_rules(p_tile_check_rules: Array)tear_downapply_rules_add_rules_to_test(p_placementing_rules: Array, p_gts: GridTargetingState) -> bool