title | description |
---|---|
Enums |
A fixed list of items (enumeration). |
The enumeration data type, or Datatype.Enum
, is a fixed list of items. You can access enums through the global object called Datatype.Enum
. For a full list of Enums and their items, see Enums in the API Reference.
To get all items of an Enum, call the GetEnumItems()
method on the enum. The following code sample demonstrates how to call GetEnumItems()
on the Enum.PartType
enum.
local partTypes = Enum.PartType:GetEnumItems()
for index, enumItem in partTypes do
print(enumItem)
end
--[[
Enum.PartType.Ball
Enum.PartType.Block
Enum.PartType.Cylinder
]]
The Datatype.EnumItem
is the data type for items in enums. An Datatype.EnumItem
has three properties:
Name
- The name of theDatatype.EnumItem
.Value
- The numerical index of theDatatype.EnumItem
.EnumType
- The parentDatatype.Enum
of theDatatype.EnumItem
.
Some properties of objects can only be items of certain enums. For example, the Shape
property of a Class.Part
object is an item of the Enum.PartType
Enum. The following code sample demonstrates how to print the properties of the Enum.PartType.Cylinder
EnumItem.
-- Properties of the EnumItem called Enum.PartType.Cylinder
print(Enum.PartType.Cylinder.Name) -- Cylinder
print(Enum.PartType.Cylinder.Value) -- 2
print(Enum.PartType.Cylinder.EnumType) -- PartType
To assign an Datatype.EnumItem
as the value of a property, use the full Datatype.Enum
declaration. You can also use its Value
or EnumType
.
local part = Instance.new("Part") -- Create a new part
part.Shape = Enum.PartType.Cylinder -- By EnumItem (best practice)
part.Shape = Enum.PartType.Cylinder.Value -- By EnumItem Value
part.Shape = 2 -- By EnumItem Value
part.Shape = Enum.PartType.Cylinder.Name -- By EnumItem Name
part.Shape = "Cylinder" -- By EnumItem Name
part.Parent = workspace