Chris' Tutorials
Docs/Grid Placement

Class

ManipulationParent

Generated GDScript class reference for GridPlacement.ManipulationParent.

StatusDraft
Versionv6.0
UpdatedDevelopment docs generated from GDScript source

This is unreleased documentation in active development. APIs, class names, and behavior may change before the final release.

Draft — Unreleased:This page is in active development. APIs, class names, and behavior may change before the release is finalized. Use it as a preview of what's coming — not as a stable integration target.

ManipulationParent

  • Transform container for preview objects during manipulation. Applies rotation, translation, and scale transforms to preview objects during building/manipulation. All child nodes automatically inherit these transforms through Godot's scene tree. ManipulationParent is the canonical transform parent used by GridPositioner2D and the GridPlacementHost pattern. It is NOT a deprecated orchestrator. The IndicatorManager is parented to ManipulationParent so indicators inherit the preview's rotation, scale, and flip transforms via the scene tree. Top-Down/Platformer: IndicatorManager as child of ManipulationParent (indicators rotate with preview) Isometric: IndicatorManager as child of ManipulationParent (indicators maintain correct orientation) ## Key Methods
  • apply_rotation(degrees)
  • Rotate this node and all children
  • apply_horizontal_flip()
  • Flip horizontally
  • apply_vertical_flip()
  • Flip vertically
  • reset()
  • Reset to identity transform ## Transform Behavior
  • Manipulation start: Resets to identity
  • During manipulation: Accumulates transforms
  • Manipulation end/cancel: Resets to identity For detailed parenting decisions, isometric considerations, and architectural patterns: See [b]docs/v5-0-0/guides/isometric_implementation.mdx[/b] For system architecture: See [b]docs/systems/parent_node_architecture.md[/b]

Source: addons/grid_placement/systems/manipulation/manipulation_parent.gd

Syntax

class ManipulationParent extends PlacementNode2D

Members

NameKindSummary
rotatedEventEmitted after a rotation transform is applied to this node (and inherited by all children, including the preview sprite). Fires for every rotation path: grid-aware clockwise/counter-clockwise and the fallback [method apply_rotation], from both input-driven and programmatic ([ManipulationService2D]) callers. Consumers may use this to swap a directional/pre-rotated sprite instead of visually spinning the texture -- whether to do so is entirely at the consumer's discretion (see the manipulation guide). [param new_rotation_degrees] This node's resulting [member Node2D.global_rotation_degrees]. [param cardinal] Best-effort nearest cardinal facing via [method PlacementGridRotationUtils.degrees_to_cardinal]; most meaningful for 90-degree grid increments.
flippedEventEmitted after a flip transform is applied to this node (and inherited by all children). A single signal for both axes -- branch on [param axis] rather than connecting two separate signals. Mirrors the repo's signal-consolidation direction (see [signal ManipulationState.action_performed]). [param axis] Which axis was mirrored ([enum PlacementEnums.FlipAxis]).
set_hostMethod
resetMethod
apply_rotationMethod
apply_grid_rotation_clockwiseMethod
new_rotation_degProperty
apply_grid_rotation_counter_clockwiseMethod
new_rotation_degProperty
apply_horizontal_flipMethod
apply_vertical_flipMethod
settingsProperty
cardinalProperty
handle_transform_inputMethod
failedProperty
target_mapProperty
failedProperty
target_mapProperty
failedProperty-- FLIP H / V --
failedProperty
manipulation_dataProperty
manipulation_settingsProperty
actionsProperty
manipulatable_settingsProperty
statesProperty
settingsProperty
resolve_placement_dependenciesMethod
validation_issuesProperty
get_runtime_issuesMethod
issuesProperty

Source

addons/grid_placement/systems/manipulation/manipulation_parent.gd

Plugin docs root:gdscript/plugins/grid_placement_dev/docs