How to give each score to each player?

Sorry, I found the cause.

My entire code is here:

prop_teleport := class(creative_device):

    @editable
    TriggerCard : []trigger_device = array{}

    var PlayerScore : int = 0

    @editable
    ScoreManagerDevice<public> : score_manager_device = score_manager_device{}


    OnBegin<override>()<suspends>:void=
        Playspace: fort_playspace = GetPlayspace()
        var AllPlayers: []player = Playspace.GetPlayers()
        Sleep(3.0)

        for(Index -> TriggeredCard : TriggerCard):
            spawn{CheckTrigger(TriggeredCard,Index)}

  CheckTrigger(Card:trigger_device,Index:int)<suspends>:void =
          loop:
              QAgent := Card.TriggeredEvent.Await()
              if(ToString(Index) = CardIndex):
                  AwardScore(QAgent)
                  break
              else:
                  PenaltyScore(QAgent)

    AwardScore<public>(QAgent:?agent) : void =
        set PlayerScore = PlayerScore + 1
        if(Agent := QAgent?):
            ScoreManagerDevice.SetScoreAward(PlayerScore)
            ScoreManagerDevice.Activate(Agent)
    
    PenaltyScore<public>(QAgent:?agent) : void =
       set PlayerScore = PlayerScore - 1
       if(Agent := QAgent?):
        ScoreManagerDevice.SetScoreAward(PlayerScore)
        ScoreManagerDevice.Activate(Agent)

I use the same score variable “PlayerScore” every time AwardScore/PenaltyScore method are executed, this is the reason. I will revise my code, but there is another problem:

In my game, more than two player play. And AwardScore/PenaltyScore method work when Trigger Device is shoot (Score is grant to QAgent)
So, I will prepare more than two “PlayerScore” variable.

prop_teleport := class(creative_device):

    @editable
    TriggerCard : []trigger_device = array{}

    var PlayerScore : int = 0
    var PlayerScore2 : int = 0
    var PlayerScore3 : int = 0
    var PlayerScore4 : int = 0
    var PlayerScore5 : int = 0


    @editable
    ScoreManagerDevice<public> : score_manager_device = score_manager_device{}

However, the content of QAgent depends on player’s action (shoot). How should I linke “PlayerScore” variable with each player?

Please give me some advices.

Regards,