RuleCheckIndicatorLogic
Pick the appropriate display settings given validity state and failing rules.
Pick the appropriate display settings given validity state and failing rules.
Version: v5.0.0
Inherits: RefCounted
Source: rule_check_indicator_logic.gd
Parsing: AST-based for maximum accuracy with symbol typing
Methods
build_rules_diag
Signature: static build_rules_diag(ind: RuleCheckIndicator) -> String
[return] A short summary like: “rules=2 [{pass_on_collision=true, mask=1}, …]”
Returns: String
Static: true
Parameters:
ind: RuleCheckIndicator
build_visuals_diag
Signature: static build_visuals_diag(ind: RuleCheckIndicator) -> String
[return] A summary like: “display=valid_settings tex=(valid=true, invalid=false) modulate=Color(1,1,1,1)”
Returns: String
Static: true
Parameters:
ind: RuleCheckIndicator
format_indicator_state
Signature: static format_indicator_state(ind: RuleCheckIndicator, header: String = "", resource_path: String = "") -> String
[return] Multi-line diagnostic wrapped by GBDiagnostics.format_debug
Returns: String
Static: true
Parameters:
ind: RuleCheckIndicatorheader: String(optional, default:"")resource_path: String(optional, default:"")
build_rules_diag_from_rules
Signature: static build_rules_diag_from_rules(rules: Array) -> String
Build a concise rules diagnostic from a rules array (no indicator object required)
Returns: String
Static: true
Parameters:
rules: Array
build_visuals_diag_from_parts
Signature: static build_visuals_diag_from_parts(current_display_settings: IndicatorVisualSettings, valid_settings: IndicatorVisualSettings, invalid_settings: IndicatorVisualSettings, validity_sprite: Sprite2D) -> String
Build visuals diagnostic given discrete components (no indicator object required)
Returns: String
Static: true
Parameters:
current_display_settings: IndicatorVisualSettingsvalid_settings: IndicatorVisualSettingsinvalid_settings: IndicatorVisualSettingsvalidity_sprite: Sprite2D
format_indicator_state_from_parts
Signature: static format_indicator_state_from_parts(valid: bool, collisions: int, global_position: Vector2, rules: Array, current_display_settings: IndicatorVisualSettings, valid_settings: IndicatorVisualSettings, invalid_settings: IndicatorVisualSettings, validity_sprite: Sprite2D, header: String = "", resource_path: String = "") -> String
Format indicator state from small pieces of data (no indicator object required)
Returns: String
Static: true
Parameters:
valid: boolcollisions: intglobal_position: Vector2rules: Arraycurrent_display_settings: IndicatorVisualSettingsvalid_settings: IndicatorVisualSettingsinvalid_settings: IndicatorVisualSettingsvalidity_sprite: Sprite2Dheader: String(optional, default:"")resource_path: String(optional, default:"")
find_highest_rule_with_visual_settings
Signature: static find_highest_rule_with_visual_settings(p_rules: Array[TileCheckRule]: Variant) -> TileCheckRule
Find the rule with highest visual priority that defines fail_visual_settings.
Returns: TileCheckRule
Static: true
Parameters:
p_rules: Array[TileCheckRule]: Variant
validate_rules_from_rules_and_checker
Signature: static validate_rules_from_rules_and_checker(p_rules: Array[TileCheckRule]: Variant, failing_checker: Callable) -> Array
This mirrors RuleCheckIndicator.validate_rules but as a pure function to aid testing.
Returns: Array
Static: true
Parameters:
p_rules: Array[TileCheckRule]: Variantfailing_checker: Callable
choose_display_settings
Signature: static choose_display_settings(p_display_rules: Array[TileCheckRule]: Variant, p_is_valid: bool, valid_settings: IndicatorVisualSettings, invalid_settings: IndicatorVisualSettings) -> IndicatorVisualSettings
Pick the appropriate display settings given validity state and failing rules.
Returns: IndicatorVisualSettings
Static: true
Parameters:
p_display_rules: Array[TileCheckRule]: Variantp_is_valid: boolvalid_settings: IndicatorVisualSettingsinvalid_settings: IndicatorVisualSettings