ManipulationSystem

ManipulationSystem

Core manipulation system for grid building objects. Provides the pure C# logic foundation for move, rotate, flip, and demolish operations. Ported from: godot/addons/grid_building/systems/manipulation/manipulation_system.gd

Project: GridPlacement v6.0
Layer: Core
Source: Core/_incomplete/Systems/Placement/Manipulation/ManipulationSystem.cs
Namespace: GridBuilding.Core.Systems.Manipulation
Kind: class

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

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

Properties

ManipulationCommands

Optional manipulation commands surface for user-aware operations.

Session

Optional GridBuilding session providing per-user scopes.

HasUserSessionSupport

True if user/session-aware APIs are fully configured.

CurrentState

Current manipulation state.

IsActive

Whether the system is currently active.

ManipulationService2D

Access to the manipulation service.

TransformHandler

Access to the transform handler.

PhysicsManager

Access to the physics layer manager.

MoveManager

Access to the move workflow manager.

PlacementManager

Access to the placement manager.

DemolishManager

Access to the demolish manager.

Settings

Current manipulation settings.

Methods

StartMove

Starts a move operation for the specified target.

Returns: ManipulationResult

Parameters:

  • ManipulationTarget target
  • ManipulationContext context

TryMoveForUser

Attempts to move from one grid position to another for a specific user. Thin user/session-aware facade over IManipulationCommands.

Returns: ManipulationResult

Parameters:

  • UserId userId
  • CoreVector2I from
  • CoreVector2I to

StartRotate

Starts a rotate operation for the specified target.

Returns: ManipulationResult

Parameters:

  • ManipulationTarget target
  • float rotationAngle
  • ManipulationContext context

StartFlip

Starts a flip operation for the specified target.

Returns: ManipulationResult

Parameters:

  • ManipulationTarget target
  • FlipDirection flipDirection
  • ManipulationContext context

StartDemolish

Starts a demolish operation for the specified target.

Returns: ManipulationResult

Parameters:

  • ManipulationTarget target
  • ManipulationContext context

CompleteOperation

Completes the current manipulation operation.

Returns: ManipulationResult

CancelOperation

Cancels the current manipulation operation.

Returns: ManipulationResult