Table of Contents

Class TileCheckRuleExecutor

Namespace
MoonBark.GridPlacement.Godot.Placement.PlacementRules
Assembly
MoonBark.GridPlacement.Godot.dll

Executes tile check rules for placement validation. Coordinates bulk physics queries against registered rules.

public class TileCheckRuleExecutor
Inheritance
TileCheckRuleExecutor
Inherited Members

Constructors

TileCheckRuleExecutor(PlacementContext)

Creates a new TileCheckRuleExecutor.

public TileCheckRuleExecutor(PlacementContext context)

Parameters

context PlacementContext

The placement context. Must not be null.

Properties

Context

The placement context providing access to ECS systems.

public PlacementContext Context { get; }

Property Value

PlacementContext

Methods

ClearRules()

Clears all registered tile check rules.

public void ClearRules()

ProcessBulkTileChecks(EntityStore, Node2D)

Processes bulk tile checks for all entities in the given EntityStore. Used by the placement system to validate multiple positions in a single pass.

public Task ProcessBulkTileChecks(EntityStore store, Node2D worldRoot)

Parameters

store EntityStore

The ECS entity store containing placement entities.

worldRoot Node2D

The root node for world queries (provides PhysicsDirectSpaceState2D).

Returns

Task

Task that completes when all checks are processed.

RegisterRule(TileCheckRule)

Registers a tile check rule for placement validation.

public void RegisterRule(TileCheckRule rule)

Parameters

rule TileCheckRule

The rule to register.

UnregisterRule(TileCheckRule)

Unregisters a tile check rule.

public void UnregisterRule(TileCheckRule rule)

Parameters

rule TileCheckRule

The rule to unregister.

ValidatePosition(Vector2, PhysicsDirectSpaceState2D)

Checks a single world position against all registered tile check rules.

public bool ValidatePosition(Vector2 worldPosition, PhysicsDirectSpaceState2D spaceState)

Parameters

worldPosition Vector2

The world position to check.

spaceState PhysicsDirectSpaceState2D

The physics direct space state to query against.

Returns

bool

True if all rules pass; false if any rule fails.