Beispiel #1
0
    public void SetAchievement(int boxId, string type, string trophySet)
    {
        List <IFieldActor <Player> > players = Field.State.Players.Values.ToList();

        if (boxId != 0)
        {
            MapTriggerBox box = MapEntityStorage.GetTriggerBox(Field.MapId, boxId);
            List <IFieldActor <Player> > boxedPlayers = new();
            foreach (IFieldActor <Player> player in players)
            {
                if (FieldManager.IsPlayerInBox(box, player))
                {
                    boxedPlayers.Add(player);
                }
            }

            players = boxedPlayers;
        }

        foreach (IFieldObject <Player> player in players)
        {
            if (type == "trigger")
            {
                TrophyManager.OnTrigger(player.Value, trophySet);
            }
        }
    }
    public void SetAchievement(int boxId, string type, string trophySet)
    {
        List <Character> players = Field.State.Players.Values.ToList();

        if (boxId != 0)
        {
            MapTriggerBox box = MapEntityMetadataStorage.GetTriggerBox(Field.MapId, boxId);
            if (box is null)
            {
                return;
            }

            players = players.Where(player => FieldManager.IsPlayerInBox(box, player)).ToList();
        }

        foreach (IFieldObject <Player> player in players)
        {
            if (type == "trigger")
            {
                TrophyManager.OnTrigger(player.Value, trophySet);
            }
        }
    }