Table of Contents

Class PlacementResult

Namespace
MoonBark.GridPlacement.Core.Results
Assembly
MoonBark.GridPlacement.Core.dll

Result of a building placement operation Contains success status, position, and any relevant metadata

public record PlacementResult : IEquatable<PlacementResult>
Inheritance
PlacementResult
Implements
Inherited Members

Constructors

PlacementResult(bool, CoreVector2I, CoreVector2, IReadOnlyList<DiagnosticMessage>, PlacementMetadata)

Result of a building placement operation Contains success status, position, and any relevant metadata

public PlacementResult(bool Success, CoreVector2I GridPosition, CoreVector2 WorldPosition, IReadOnlyList<DiagnosticMessage> Messages, PlacementMetadata Metadata)

Parameters

Success bool
GridPosition CoreVector2I
WorldPosition CoreVector2
Messages IReadOnlyList<DiagnosticMessage>
Metadata PlacementMetadata

Properties

Errors

Gets the error messages only.

public IReadOnlyList<DiagnosticMessage> Errors { get; }

Property Value

IReadOnlyList<DiagnosticMessage>

GridPosition

public CoreVector2I GridPosition { get; init; }

Property Value

CoreVector2I

Messages

public IReadOnlyList<DiagnosticMessage> Messages { get; init; }

Property Value

IReadOnlyList<DiagnosticMessage>

MessagesAsStrings

Gets all messages as strings (for backward compatibility).

public IReadOnlyList<string> MessagesAsStrings { get; }

Property Value

IReadOnlyList<string>

Metadata

public PlacementMetadata Metadata { get; init; }

Property Value

PlacementMetadata

Success

public bool Success { get; init; }

Property Value

bool

WorldPosition

public CoreVector2 WorldPosition { get; init; }

Property Value

CoreVector2

Methods

Failed(CoreVector2I, CoreVector2, DiagnosticMessage)

Creates a failed placement result with a diagnostic message

public static PlacementResult Failed(CoreVector2I gridPosition, CoreVector2 worldPosition, DiagnosticMessage message)

Parameters

gridPosition CoreVector2I
worldPosition CoreVector2
message DiagnosticMessage

Returns

PlacementResult

Failed(CoreVector2I, CoreVector2, IEnumerable<DiagnosticMessage>)

Creates a failed placement result with multiple diagnostic messages

public static PlacementResult Failed(CoreVector2I gridPosition, CoreVector2 worldPosition, IEnumerable<DiagnosticMessage> messages)

Parameters

gridPosition CoreVector2I
worldPosition CoreVector2
messages IEnumerable<DiagnosticMessage>

Returns

PlacementResult

Failed(CoreVector2I, CoreVector2, IEnumerable<string>)

Creates a failed placement result with multiple messages

public static PlacementResult Failed(CoreVector2I gridPosition, CoreVector2 worldPosition, IEnumerable<string> messages)

Parameters

gridPosition CoreVector2I
worldPosition CoreVector2
messages IEnumerable<string>

Returns

PlacementResult

Failed(CoreVector2I, CoreVector2, string)

Creates a failed placement result with a message

public static PlacementResult Failed(CoreVector2I gridPosition, CoreVector2 worldPosition, string message)

Parameters

gridPosition CoreVector2I
worldPosition CoreVector2
message string

Returns

PlacementResult

Successful(CoreVector2I, CoreVector2)

Creates a successful placement result

public static PlacementResult Successful(CoreVector2I gridPosition, CoreVector2 worldPosition)

Parameters

gridPosition CoreVector2I
worldPosition CoreVector2

Returns

PlacementResult