private async void GetGames()
        {
            var games = await http.MakeGetRequest <List <Game> >("games");

            foreach (var game in games)
            {
                ListOfGames.Add(game);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Deal with all of the given game names that are taken in
        /// </summary>
        /// <param name="tempList"></param>
        public static void DealWithGameNames(ListOfGames tempList)
        {
            var update = "";

            foreach (var gameHistory in tempList.List)
            {
                update += "INSERT IGNORE INTO tbl_games VALUES ('" + gameHistory.AppId + "','" +
                          ChangeString(gameHistory.Name).Replace("\\", "\\\\")
                          .Replace("'", "\\\'")
                          .Replace("'", "\\'")
                          .Replace("\", "\\\").Replace("ˈ", "\\ˈ").Replace("ˈ", "\\ˈ") + "');";
            }
            Program.NonQuery(update);
        }
Beispiel #3
0
    private IEnumerator GetMyLastGames()
    {
        Player player = FindObjectOfType <Player>();

        UnityWebRequest httpClient = new UnityWebRequest(player.GetHttpServer() + "/api/Game/GetMyLastGames", "POST");

        httpClient.SetRequestHeader("Authorization", "bearer " + player.Token);
        httpClient.SetRequestHeader("Content-type", "application/json");
        httpClient.downloadHandler    = new DownloadHandlerBuffer();
        httpClient.certificateHandler = new ByPassCertificate();
        yield return(httpClient.SendWebRequest());

        if (httpClient.isNetworkError || httpClient.isHttpError)
        {
            throw new Exception("Games > GetMyLastGames: " + httpClient.error);
        }
        else
        {
            string      jsonResponse = httpClient.downloadHandler.text;
            string      response     = "{\"games\":" + jsonResponse + "}";
            ListOfGames listOfGames  = JsonUtility.FromJson <ListOfGames>(response);
            optionText.text     = "My last games:";
            playerText.text     = "";
            scoreText.text      = "";
            difficultyText.text = "";
            durationText.text   = "";
            dateText.text       = "";
            foreach (GameModel g in listOfGames.games)
            {
                string userName = g.PlayerId.Substring(0, 6);
                playerText.text     += "\n" + userName;
                scoreText.text      += "\n" + g.Score.ToString();
                difficultyText.text += "\n" + g.Difficulty.ToString();
                durationText.text   += "\n" + g.Duration;
                dateText.text       += "\n" + DateTime.Parse(g.WhenPlayed);
            }
        }

        httpClient.Dispose();
    }
Beispiel #4
0
        /// <summary>
        /// Handles all incoming packets into the server after fully recieving them
        /// </summary>
        /// <param name="packet">The packet that was recieved</param>
        /// <param name="clientSocket">The socket, used for sending back data to the client</param>
        public static void Handle(byte[] packet, Socket clientSocket)
        {
            // Get the packet length and type
            var packetLength = BitConverter.ToUInt32(packet, 0);
            var packetType   = BitConverter.ToUInt16(packet, 4);

            Console.WriteLine("Recieved packet of length: {0} and Type: {1}", packetLength, packetType);

            // Packet types:
            // 2000 - Update the steam token
            // 2001 - Update the host id
            // 2002 - Request to Update all the things
            // 2003 - Request to Update the summary
            // 2004
            // 3003 - Information to update the summary to the server
            switch (packetType)
            {
            case 2000:
                clientSocket.Send(new StdData(Program.SteamToken, 0, 2000).Data);
                break;

            case 2001:
                clientSocket.Send(new StdData("21", 0, 2001).Data);
                break;

            case 2002:
                clientSocket.Send(DataDealer.UpdateAll(new StdData(packet).MachineId));
                break;

            case 2003:
                clientSocket.Send(DataDealer.UpdateSum(true, new StdData(packet).MachineId).Data);
                break;

            case 2004:
                clientSocket.Send(DataDealer.UpdateGames(true, new StdData(packet).MachineId).Data);
                break;

            case 2006:
                clientSocket.Send(DataDealer.UpdateFriends(true, new StdData(packet).MachineId).Data);
                break;

            case 2007:
                try
                {
                    clientSocket.Send(new StdData("", 0, 1005).Data);
                    clientSocket.Send(DataDealer.UpdateGameNames(new StdData(packet).MachineId).Data);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                break;

            case 2050:
                clientSocket.Send(
                    new StdData(GetInformation.ShowGenStats(new StdData(packet).MachineId), 0, 3050).Data);
                break;

            case 2051:
                try
                {
                    clientSocket.Send(new StdData("", 0, 1005).Data);
                    clientSocket.Send(
                        new ListOfUsers(GetInformation.ShowPlayerStats(new StdData(packet)), 0, 3051).Data);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                break;

            case 3003:
                var list = new ListOfUsers(packet);
                try
                {
                    DataDealer.DealWithSum(list);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    clientSocket.Send(new StdData("", 0, 1000).Data);
                }
                break;

            case 3004:
                var gameUsers = new ListOfUsers(packet);
                try
                {
                    DataDealer.DealWithGames(gameUsers);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    clientSocket.Send(new StdData("", 0, 1000).Data);
                }
                break;

            case 3006:
                var friends = new ListOfUsers(packet);
                try
                {
                    clientSocket.Send(new StdData("", 0, 1005).Data);
                    DataDealer.DealWithFriends(friends);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    clientSocket.Send(new StdData("", 0, 1000).Data);
                }
                break;

            case 3007:
                var games = new ListOfGames(packet);
                try
                {
                    DataDealer.DealWithGameNames(games);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    clientSocket.Send(new StdData("", 0, 1000).Data);
                }
                break;
            }
        }