using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using {/Verse.org/Random}
See Create Your Own Device Using Verse for how to create a verse device.
A Verse-authored creative device that can be placed in a level
random_map_selector := class(creative_device):
@editable teleporter1 : teleporter_device = teleporter_device{}
@editable teleporter2 : teleporter_device = teleporter_device{}
@editable teleporter3 : teleporter_device = teleporter_device{}
@editable teleporter4 : teleporter_device = teleporter_device{}
@editable LoadoutTimer : timer_device = timer_device{}
@editable storm_controller1 : storm_controller_device = storm_controller_device{}
@editable storm_controller2 : storm_controller_device = storm_controller_device{}
@editable storm_controller3 : storm_controller_device = storm_controller_device{}
@editable storm_controller4 : storm_controller_device = storm_controller_device{}
@editable PlayerCheckpoint1 : playerCheckpoint_Prop = Player_Checkpoint_Prop{}
@editable PlayerCheckpoint2 : Player_Checkpoint_Prop = Player_Checkpoint_Prop{}
@editable PlayerCheckpoint3 : Player_Checkpoint_Prop = Player_Checkpoint_Prop{}
@editable PlayerCheckpoint4 : Player_Checkpoint_Prop = Player_Checkpoint_Prop{}
@editable prop_mover1 : prop_mover_device = prop_mover_device{}
@editable prop_mover2 : prop_mover_device = prop_mover_device{}
@editable prop_mover3 : prop_mover_device = prop_mover_device{}
@editable prop_mover4 : prop_mover_device = prop_mover_device{}
DeviceGroup1 := struct:
teleporter1 : teleporter_device
storm_controller1 : storm_controller_device
PlayerCheckpoint1 : Player_Checkpoint_Prop
prop_mover1 : prop_mover_device
DeviceGroup2 := struct:
teleporter2 : teleporter_device
storm_controller2 : storm_controller_device
PlayerCheckpoint2 : Player_Checkpoint_Prop
prop_mover2 : prop_mover_device
DeviceGroup3 := struct:
teleporter3 : teleporter_device
storm_controller3 : storm_controller_device
PlayerCheckpoint3 : Player_Checkpoint_Prop
prop_mover3 : prop_mover_device
DeviceGroup4 := struct:
teleporter4 : teleporter_device
storm_controller4 : storm_controller_device
PlayerCheckpoint4 : Player_Checkpoint_Prop
prop_mover4 : prop_mover_device
# Runs when the device is started in a running game
OnBegin<override>()<suspends>:void=
OnLoadoutTimerSucess (gameStart): void =
StartTimer(30)
This handler is triggered when the 30-second timer completes
OnTimerEnd(): void =
Rand := GetRandomInt(1, 4) # Generate a random number between 1 and 4
if (Rand = 1) then {ActivateDeviceGroup1()} # Check and activate Device Group 1
else if (Rand = 2) then {ActivateDeviceGroup2()} # Check and activate Device Group 2
else if (Rand = 3) then {ActivateDeviceGroup3()} # Check and activate Device Group 3
else if (Rand = 4) then {ActivateDeviceGroup4()} # Check and activate Device Group 4
Activation du groupe de dispositifs 1
ActivateDeviceGroup1(): void =
teleporter1.Activate()
storm_controller1.Activate()
PlayerCheckpoint1.Activate()
prop_mover1.Activate()
Activation du groupe de dispositifs 2
ActivateDeviceGroup2(): void =
teleporter2.Activate()
storm_controller2.Activate.subscribe()
PlayerCheckpoint2.Activate.subscribe()
prop_mover2.Activate.subscribe()
Activation du groupe de dispositifs 3
ActivateDeviceGroup3(): void =
teleporter3.Activate
storm_controller3.Activate
PlayerCheckpoint3.Activate
prop_mover3.Activate
Activation du groupe de dispositifs 4
ActivateDeviceGroup4(): void =
teleporter4.Activate()
storm_controller4.Activate()
PlayerCheckpoint4.Activate()
prop_mover4.Activate()