ManipulationStateMachineLogicBlocks

ManipulationStateMachineLogicBlocks

LogicBlocks-based state machine for building manipulation Provides the same public API as the original ManipulationStateMachine but uses LogicBlocks internally for state management

Project: GridPlacement v6.0
Layer: Core
Source: Core/_incomplete/State/Manipulation/ManipulationStateMachineLogicBlocks.cs
Namespace: GridBuilding.Core.State.Manipulation
Kind: class

Parsing Method: AST-based (Roslyn) - NOT regex

⚠️ IMPORTANT: This documentation was generated using AST parsing, not regex.

Properties

EnableStateHistory

MaxHistorySize

CurrentState

CurrentStateName

HasStateHistory

Methods

Update

Updates the current state (for time-based operations)

Returns: void

Parameters:

  • double delta

HandleInput

Handles input events

Returns: void

Parameters:

  • InputEventData inputEvent

StartBuilding

Starts a building manipulation

Returns: void

Parameters:

  • CoreVector2I position
  • BuildingData? buildingData

StartDragging

Starts a dragging manipulation

Returns: void

Parameters:

  • CoreVector2I position
  • object? draggedObject

StartRotating

Starts a rotating manipulation

Returns: void

Parameters:

  • CoreVector2I position
  • object? rotatingObject

StartDeleting

Starts a deleting manipulation

Returns: void

UpdateTarget

Updates the target position

Returns: void

Parameters:

  • CoreVector2I position

CancelManipulation

Cancels the current manipulation

Returns: void

FinishManipulation

Finishes the current manipulation

Returns: void

GetCurrentCommand

Gets the current command from the LogicBlocks state machine

Returns: IManipulationCommand?

GetCurrentCommand

Gets the current command, safely typed

Returns: T?

HasCurrentCommand

Checks if the current state has a specific command type

Returns: bool

RevertToPreviousState

Reverts to the previous state

Returns: bool

GetStateHistory

Gets the state history

Returns: List<string>

ClearStateHistory

Clears the state history

Returns: void

CanTransitionTo

Checks if a transition is possible

Returns: bool

Parameters:

  • string targetStateName

IsInManipulationState

Checks if currently in an active manipulation state

Returns: bool

GetLogicBlocks

Gets the LogicBlocks instance for advanced usage

Returns: ManipulationLogic