Esempio n. 1
0
        public RestResponse SetPlayerGroup(ulong steamId, string group)
        {
            RestResponse    restResponse    = new RestResponse();
            SuccessResponse successResponse = new SuccessResponse();

            if (Players.TryGetPlayer(new NetworkID(new Steamworks.CSteamID(steamId)), out var player))
            {
                EnsureLoaded();
                if (!Groups.ContainsKey(group))
                {
                    successResponse.Success = false;
                    successResponse.Details = $"Failed to set user to group [{group}], it does not exist.";
                }
                else
                {
                    if (Users.TryGetValue(player.ID, out PermissionsGroup value))
                    {
                        value.SetGroup(group);
                    }
                    else
                    {
                        PermissionsGroup permissionsGroup = DefaultNormal.Copy();
                        permissionsGroup.SetGroup(group);
                        Users[player.ID] = permissionsGroup;
                    }
                    SaveUsers();
                    successResponse.Success = true;
                }
            }

            restResponse.Content = successResponse.ToUTF8SerializedJson();
            return(restResponse);
        }