annotation ExportEnum

Overview

Exports a property whose values are constrained to an enumeration or list of string choices. Can take a list of string choices, or a Crystal Enum type directly (@[ExportEnum(MyEnum)]).

enum CharacterClass
  Warrior
  Mage
  Rogue
end

# Strongly-typed Crystal enum:
@[ExportEnum(CharacterClass)]
property character_class : CharacterClass = CharacterClass::Warrior

# Integer property with enum dropdown:
@[ExportEnum(CharacterClass)]
property class_id : Int32 = 0

# String choice list:
@[ExportEnum("Warrior", "Mage", "Rogue")]
property class_name : String = "Warrior"

Defined in:

libgodot/macros.cr