how can i make these two verse code to work

can any help me make these two verse code work together, its a spectator verse where you can respawn and the other is a delay respawn verse. but in the spectator verse the player will not being able to spectate the other players becouse of the delay verse, so can you help so that a player can spectate other and not just respawn. and so that you Can only interact with the spectator button if there is 2 players in the game (if its possible)

SPECTATE BUTTON with RESPAWN

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Fortnite.com/Characters }
using { /UnrealEngine.com/Temporary/UI }
using { /Fortnite.com/UI }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Fortnite.com/FortPlayerUtilities }

PlayerUIClass := class():

RespawnClass : class_and_team_selector_device
RespawnText<localizes> : message = "Respawn"
ButtonRespawn : button_loud = button_loud{}
var MyCanvas : canvas = canvas{}


OnRespawnClicked(WidgetPlayer:widget_message):void=
    if(Player:= WidgetPlayer.Player, PlayerUI:= GetPlayerUI[Player]):
            PlayerUI.RemoveWidget(MyCanvas)
            RespawnClass.ChangeClass(Player)
            Player.Respawn(vector3{X:=1.0,Y:=1.0,Z:=1.0}, IdentityRotation())
            

Init() : canvas =
    
    ButtonRespawn.SetText(RespawnText)

    ButtonRespawn.OnClick().Subscribe(OnRespawnClicked)
    
    MainCanvas : canvas = canvas:
        Slots := array:
            canvas_slot:
                Anchors := anchors{Minimum := vector2{X := 0.5, Y := 0.2}, Maximum := vector2{X := 0.5, Y := 0.2}}
                Offsets := margin{Top := 0.0, Left := 0.0, Right := 0.0, Bottom := 0.0}
                Alignment := vector2{X := 0.5, Y := 0.5}
                SizeToContent := true
                Widget := ButtonRespawn

    return MainCanvas

AddUI(Agent : agent) : void=
    if(Player := player[Agent], PlayerUI := GetPlayerUI[Player]):

        set MyCanvas = Init()
        PlayerUI.AddWidget(MyCanvas , player_ui_slot{InputMode := ui_input_mode.All})

Instanr Respawn with Delay trigger

@editable SpectateButton:button_device = button_device{}
@editable SpectatorClass:class_and_team_selector_device = class_and_team_selector_device{}
@editable RespawnClass:class_and_team_selector_device = class_and_team_selector_device{}


# Runs when the device is started in a running game
OnBegin<override>()<suspends>:void=

    SpectateButton.InteractedWithEvent.Subscribe(GoToSpectator)

GoToSpectator(Agent:agent):void=
    if(Player:= player[Agent], PlayerUI:=GetPlayerUI[Player]):
        if(FortChar := Player.GetFortCharacter[]):
            SpectatorClass.ChangeClass(Agent)
            FortChar.Damage(300.0)

            EachPlayerUIClass: PlayerUIClass = PlayerUIClass{RespawnClass:=RespawnClass}
            EachPlayerUIClass.AddUI(Agent)

discord.gg/uefndream

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using {/Fortnite.com/Teams}
using {/Verse.org/Simulation}
using {/Fortnite.com/Characters}
using {/Verse.org/Random}
using {/Fortnite.com/Game}
using {/Fortnite.com/FortPlayerUtilities}
using {/UnrealEngine.com/Temporary/SpatialMath}

InstantRespawn := class(creative_device):

respawnposition: vector3=vector3{X:= 250.00, Y:= 0.01, Z:= 161.9}

@editable
var RespawnTime : float = 0.1

@editable
FastRespawnTrigger : trigger_device = trigger_device{}

@editable
SlowRespawnTrigger : trigger_device = trigger_device{}

@editable
ElimMachine : elimination_manager_device = elimination_manager_device{}
@editable
TeleporterTeam1 : teleporter_device = teleporter_device{}
@editable
TeleporterTeam2 : teleporter_device = teleporter_device{}

NowRespawn(Agent: agent)<suspends>:void=
    Sleep(RespawnTime)
    Agent.Respawn(respawnposition, rotation{})
    TeleporterTeam1.Teleport(Agent)
    TeleporterTeam2.Teleport(Agent)

SelfEliminated(Agent:agent):void=
    spawn{NowRespawn(Agent)}

OnFastRespawnTriggered(Agent:?agent):void=
    set RespawnTime = 0.1

OnSlowRespawnTriggered(Agent:?agent):void=
    set RespawnTime = 1.5

OnBegin<override>()<suspends>:void=
    ElimMachine.EliminatedEvent.Subscribe(SelfEliminated)
    FastRespawnTrigger.TriggeredEvent.Subscribe(OnFastRespawnTriggered)
    SlowRespawnTrigger.TriggeredEvent.Subscribe(OnSlowRespawnTriggered)

:grinning_face: