Can someone fix my code?

using { /Fortnite.com/Devices }

using { /Fortnite.com/Characters }

using { /Verse.org/Simulation }

using { /Verse.org/Verse }

# Main game controller device

runner_tycoon_controller := class(creative_device):

\# Device references

@editable

RunningScoreManager : score_manager_device = score_manager_device{}

@editable

WinScoreManager : score_manager_device = score_manager_device{}

@editable

WinTrigger : trigger_device = trigger_device{}

@editable

RebirthButton : button_device = button_device{}



\# Player multipliers

var PointGainMultiplier : \[agent\]float = map{}



\# Rebirth thresholds

RebirthThresholds : \[\]tuple(int, float) array{ = 

(20, 1.10),

(50, 1.25),

(100, 1.45),

(200, 1.70)

}

OnBegin<override>()<suspends>:void=

    \# Subscribe to events

    WinTrigger.TriggeredEvent.Subscribe(OnWin)

    RebirthButton.InteractedWithEvent.Subscribe(OnRebirthAttempt)



    \# Main game loop

    loop:

        Sleep(0.1)

        for (Player : GetPlayspace().GetPlayers()):

            spawn{CheckPlayerMovement(Player)}



\# Check player movement and award points

CheckPlayerMovement(Player : agent)<suspends>:void=

    if (Character := fort_character\[Player\]):

        \# Award points based on multiplier

        var Multiplier : float = 1.0

        if (StoredMultiplier := PointGainMultiplier\[Player\]):

            set Multiplier = StoredMultiplier

        

        RunningScoreManager.Activate(Player)



\# Handle win event

OnWin(MaybeAgent : ?agent):void=

    if (Agent := MaybeAgent?):

        WinScoreManager.Activate(Agent)



\# Handle rebirth attempt

OnRebirthAttempt(Agent : agent):void=

    var CurrentMultiplier : float = 1.0

    if (StoredMultiplier := PointGainMultiplier\[Agent\]):

        set CurrentMultiplier = StoredMultiplier



    \# Find next threshold

    for (Threshold : RebirthThresholds):

        if (Threshold(1) > CurrentMultiplier):

            CurrentWins := WinScoreManager.GetCurrentScore(Agent)

            if (CurrentWins >= Threshold(0)):

                \# Update multiplier

                if (set PointGainMultiplier\[Agent\] = Threshold(1)):

                    \# Reset scores by activating with 0

                    RunningScoreManager.Activate(Agent)

            return