Difference between revisions of "HPL3/Scripting/Scripting Guide/Enums"
Line 65: | Line 65: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
The last parameter, <code>eMusicPrio_BgAmb</code>, is a value of the enum <code>eMusicPrio</code>. | The last parameter, <code>eMusicPrio_BgAmb</code>, is a value of the enum <code>eMusicPrio</code>. | ||
+ | |||
+ | == See Also == | ||
+ | * [[HPL3/Scripting/AngelScript_Fundamentals/Chapter_9_-_Miscellaneous_AngelScript_Features#Enums|Enums - AngelScript]] | ||
+ | |||
{{NavBar|HPL3/Scripting/Scripting_Guide/Local and Global Variables|Local and Global Variables|HPL3/Scripting/HPL3 Scripting Guide|HPL3 Scripting Guide|HPL3/Scripting/Scripting_Guide/Working with Classes|Working with Classes}} | {{NavBar|HPL3/Scripting/Scripting_Guide/Local and Global Variables|Local and Global Variables|HPL3/Scripting/HPL3 Scripting Guide|HPL3 Scripting Guide|HPL3/Scripting/Scripting_Guide/Working with Classes|Working with Classes}} | ||
[[Category:HPL3 Scripting]] | [[Category:HPL3 Scripting]] | ||
[[Category:English]] | [[Category:English]] |
Revision as of 11:56, 16 August 2020
Enum is a user defined datatype in HPL3. It is used to assign names to the integral constants which makes a script easy to read and maintain. The keyword Declaring Enum VariableThe general syntax for declaring an enumeration is enum enum_name
{
enumeration list
}
Where:
Each of the symbols in the enumeration list stands for an integer value, one greater than the symbol that precedes it. By default, the value of the first enumeration symbol is 0. For example: enum WeekDay
{
Day_Sun, // The value here is 0
Day_Mon, // The value here is 1
Day_Tue, // etc
Day_Wed,
Day_Thu,
Day_Fri,
Day_Sat
}
|
Using Enums
The following example demonstrates use of enum
variable:
enum WeekDay
{
Day_Sun,
Day_Mon,
Day_Tue,
Day_Wed,
Day_Thu,
Day_Fri,
Day_Sat
}
//--------------------------------------------------
class cScrMap : iScrMap
{
////////////////////////////
// Run first time starting map
void OnStart()
{
WeekDay currentDay = Day_Mon;
cLux_AddDebugMessage("The current day is: " + currentDay);
}
When the above code is run, the number 1 will be printed to the screen, because the internal value of Day_Mon
is 1.
In HPL3
Enums are mostly required as a parameter for existing HPL3 functions. One of the most common function which uses an enum is Music_Play
. For example:
Music_Play("MyMusicFile.ogg", 1.0f, false, eMusicPrio_BgAmb);
The last parameter, eMusicPrio_BgAmb
, is a value of the enum eMusicPrio
.