PlaceableVariant

AUTO-GENERATED FILE – DO NOT EDIT MANUALLY

This page documents the supported public API surface only. Private, internal, benchmark, test, and implementation-detail types are intentionally omitted.

Declaration

1
public class PlaceableVariant

Summary

Represents a visual variant of a placeable object.

Variants allow the same placeable to have multiple visual representations while sharing the same core gameplay logic and properties. This is useful for:

  • Seasonal appearances (winter/summer versions)
  • Upgrade tiers (level 1, 2, 3 visual states)
  • CoreColor schemes or material variations
  • Damage states (pristine, damaged, ruined)

Each variant can have its own scene file, display name, and custom properties while maintaining the same core placeable behavior.

Metadata

Namespace: GridPlacement.Core.Data

Source File: cs/Core/Data/Placeable/PlaceableVariant.cs

Assembly: GridPlacement.Core

Type: class

Properties

Id

1
public string Id { get; set; }

Unique identifier for this variant within the placeable. Must be unique across all variants of the same placeable. Example: “winter”, “level2”, “damaged”


Scene

1
public string Scene { get; set; }

Path to the Godot scene file (.tscn) that contains the visual representation for this variant. The scene should contain the visual nodes (sprites, meshes, etc.) but not the gameplay logic which is handled by the core placeable.


Name

1
public string Name { get; set; }

Human-readable display name for this variant. Shown in UI elements like variant selection menus or tooltips. Example: “Winter Version”, “Level 2”, “Damaged State”


IsAvailable

1
public bool IsAvailable { get; set; }

Indicates whether this variant is currently available for use. Can be used for unlockable content, seasonal variants, or feature flags. When false, the variant won’t appear in selection UIs.


Properties

1
public Dictionary<string, object> Properties { get; set; }

Custom properties specific to this variant. Allows for variant-specific data like:

  • Material overrides
  • Animation parameters
  • Particle effect settings
  • Sound effect variations