I have an request, allow us to declare an custom data type, instead only array with one value type in it.
For example, create ExampleData
structure that stores two numbers one about health
and another damagePerTime
structures {
ExampleData: {
health: Number;
damagePerTime: Number;
}
}
And we can use in global/player variables:
And we can store into player/global variable:
Set Player Variable(A, Custom Struct(ExampleData))
Modify Struct(ExampleData, health, Player Variable(A), 150)
Also we can use values in actions (for example damage action):
structures {
ExampleData: {
health: Number;
damagePerTime: Number;
}
};
rule("Damage player by struct value")
{
event
{
Ongoing - Player;
All;
All;
}
conditions
{
Is Alive(Event Player) == True;
}
acitons
{
Damage(Struct Field(ExampleData, damagePerTime, Player Variable(Event Player, A))
Wait(0.25);
Loop;
}
}
Value: Struct Field(<name>, <field name>, <instance>)
- name: Struct name
- field name: Struct field name
- instance: struct instance in global/player variable/value in array.
Example:
conditions
{
Struct Field(ExampleData, damagePerTime, Player Variable(Event Player, A) != 10;
}
Action: Modify Struct (<name>, <field name>, <instance>, <value>
- name: Struct name
- field name: Struct field name
- instance: Struct instance stored in player/global variable and/or value in array.
- value: New value to field.
Example:
Modify Struct(ExampleData, health, PlayerVariable(A), 200)
Action: Initialize Struct(<name>)
- name: Struct name
Example
Set Global Variable(A, Initialize Struct(ExampleData));
- And allow to declare multi-dimentional arrays.
- And allow declare array of structs.