Example Configuration Device
using { /Fortnite.com/Characters }
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
# not concrete, not editable
runtime_set := class():
var MyInt:int = 0
var Once:logic = true
Init<public>(New:int):void=
if(Once?):
set Once = false
set MyInt = New
Print("{MyInt}")
# more functionality here
Get():int={return MyInt}
# settings container class
advanced_settings := class<concrete>():
@editable
Selection<public>:int = 0
# more @editables here
example_device := class(creative_device):
# other @editables here
# virtual 0th element
@editable
AdvancedSettings:advanced_settings = advanced_settings{Selection:=1}
@editable
AddSettings:[]advanced_settings = array{}
var Runners:[]runtime_set = array{}
OnBegin<override>()<suspends>:void=
set Runners = array{runtime_set{}}
if(First := Runners[0]):
First.Init(AdvancedSettings.Selection)
for(Setting:AddSettings):
set Runners = Runners + array{runtime_set{}}
if(Runner := Runners[Runners.Length-1]):
Runner.Init(Setting.Selection)