-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRandom_Output_Device.verse
30 lines (23 loc) · 1016 Bytes
/
Random_Output_Device.verse
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Random}
random_output_device := class(creative_device):
@editable
Trigger_StartRNG : trigger_device = trigger_device{}
@editable
Triggers : []trigger_device = array{}
var LastSelection : int = -1
OnBegin<override>()<suspends>:void=
Trigger_StartRNG.TriggeredEvent.Subscribe(RandomizeTrigger)
RandomizeTrigger(InAgent: ?agent):void=
ChosenTrigger := GetRandomInt(0, Triggers.Length-1)
Print("Chosen Trigger is number {ChosenTrigger} and the previous selection was number {LastSelection}")
if (ChosenTrigger = LastSelection):
Print ("Rerolling mode...")
RandomizeTrigger(InAgent)
else:
if (Trigger := Triggers[ChosenTrigger]):
Trigger.Trigger()
set LastSelection = ChosenTrigger
Print("Set Last Selection to {LastSelection}")