Table of Contents

Class IndicatorCalculationResult

Namespace
MoonBark.GridPlacement.Core.Data.Placement
Assembly
MoonBark.GridPlacement.Core.dll

Result of indicator calculation containing placement positions and validity data. This is a pure Core DTO that can be used without Godot dependencies.

public class IndicatorCalculationResult
Inheritance
IndicatorCalculationResult
Inherited Members

Properties

IndicatorPositions

List of grid positions where indicators should be placed. This is the computed footprint of the object for placement validation.

public List<CoreVector2I> IndicatorPositions { get; set; }

Property Value

List<CoreVector2I>

IsOverallValid

Overall placement validity based on all positions.

public bool IsOverallValid { get; set; }

Property Value

bool

Issues

Issues encountered during calculation.

public List<string> Issues { get; set; }

Property Value

List<string>

Notes

Additional diagnostic information.

public List<string> Notes { get; set; }

Property Value

List<string>

PositionRulesMap

Dictionary mapping grid positions to applicable rule identifiers. Key: Grid position in tile coordinates Value: List of rule identifiers that apply to this position

public Dictionary<CoreVector2I, List<string>> PositionRulesMap { get; set; }

Property Value

Dictionary<CoreVector2I, List<string>>

PositionValidityMap

Dictionary mapping grid positions to their placement validity. Key: Grid position in tile coordinates Value: True if placement is valid at this position

public Dictionary<CoreVector2I, bool> PositionValidityMap { get; set; }

Property Value

Dictionary<CoreVector2I, bool>

Methods

AddIssue(string)

Adds an issue to the result.

public void AddIssue(string issue)

Parameters

issue string

AddNote(string)

Adds a note to the result.

public void AddNote(string note)

Parameters

note string

GetPositionRules(CoreVector2I)

Gets applicable rules for a specific position.

public List<string> GetPositionRules(CoreVector2I position)

Parameters

position CoreVector2I

Returns

List<string>

GetPositionValidity(CoreVector2I)

Gets validity for a specific position.

public bool GetPositionValidity(CoreVector2I position)

Parameters

position CoreVector2I

Returns

bool

HasIssues()

Gets whether the calculation has any issues.

public bool HasIssues()

Returns

bool