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

This compiles, if it works as intended don’t know, the problems were the “/” in some parts of the code, randomly generated. And the array declaration, plus indentation.

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