Hello everyone,
I’m having an issue with my team registration function. Players can register up to four times and automatically registered twice, despite having clearly defined the logic with if statements. This should be a team registration process where players first go to a capture area in pairs of two to be registered with a player reference. I can’t figure out what I’m doing wrong. Does anyone have any ideas on what could be causing this? Thank you in advance for your help!
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /Fortnite.com/Playspaces }
using { /Fortnite.com/Characters }
TeamManagement_device := class(creative_device):
@editable
var CaptureArea1 : capture_area_device = capture_area_device{}
@editable
var CaptureArea2 : capture_area_device = capture_area_device{}
@editable
var PlayerReference1 : player_reference_device = player_reference_device{}
@editable
var PlayerReference2 : player_reference_device = player_reference_device{}
@editable
var PlayerReference3 : player_reference_device = player_reference_device{}
@editable
var PlayerReference4 : player_reference_device = player_reference_device{}
var Team1Players: int = 0
var Team2Players: int = 0
var MaxPlayersPerTeam: int = 2
OnBegin<override>()<suspends>:void=
CaptureArea1.AgentEntersEvent.Subscribe(Capture1)
CaptureArea2.AgentEntersEvent.Subscribe(Capture2)
Capture1(Agent:agent):void=
Print("CAPTURE 1")
if (Team1Players < MaxPlayersPerTeam):
if (Team1Players = 0):
PlayerReference1.Register(Agent)
set Team1Players += 1
Print("Registered in Team 1")
else if (Team1Players = 1):
PlayerReference2.Register(Agent)
set Team1Players += 1
Print("Registered in Team 1")
else:
Print("Team 1 is full")
Capture2(Agent:agent):void=
Print("CAPTURE 2")
if (Team2Players < MaxPlayersPerTeam):
if (Team2Players = 0):
PlayerReference3.Register(Agent)
set Team2Players += 1
Print("Registered in Team 2")
else if (Team2Players = 1):
PlayerReference4.Register(Agent)
set Team2Players += 1
Print("Registered in Team 2")
else:
Print("Team 2 is full")