示例#1
0
    public void FillData(Sprite avatarSprite, string name, MyPlayerData data)
    {
        if (avatarSprite == null)
        {
            avatar.GetComponent <Image>().sprite = defaultAvatar;
        }
        else
        {
            avatar.GetComponent <Image>().sprite = avatarSprite;
        }

        playername.GetComponent <Text>().text         = name;
        TotalEarningsValue.GetComponent <Text>().text = data.GetTotalEarnings().ToString();
        GamesPlayedValue.GetComponent <Text>().text   = data.GetPlayedGamesCount().ToString();
        CurrentMoneyValue.GetComponent <Text>().text  = data.GetCoins().ToString();
        GamesWonValue.GetComponent <Text>().text      = (data.GetTwoPlayerWins() + data.GetFourPlayerWins()).ToString();
        float gamesWon = (data.GetTwoPlayerWins() + data.GetFourPlayerWins());

        Debug.Log("WON: " + gamesWon);
        Debug.Log("played: " + data.GetPlayedGamesCount());
        if (data.GetPlayedGamesCount() != 0 && gamesWon != 0)
        {
            WinRateValue.GetComponent <Text>().text = Mathf.RoundToInt((gamesWon / data.GetPlayedGamesCount() * 100)).ToString() + "%";
        }
        else
        {
            WinRateValue.GetComponent <Text>().text = "0%";
        }
        TwoPlayerWinsValue.GetComponent <Text>().text  = data.GetTwoPlayerWins().ToString();
        FourPlayerWinsValue.GetComponent <Text>().text = data.GetFourPlayerWins().ToString();
    }
示例#2
0
    public PlayerObject(string name, string id, Sprite avatar)
    {
        this.name   = name;
        this.id     = id;
        this.avatar = avatar;
        this.timer  = timer;
        if (!id.Contains("_BOT"))
        {
            this.isBot = false;
            getPlayerDataRequest(this.id);
        }
        else
        {
            this.isBot     = true;
            this.data      = new MyPlayerData();
            this.data.data = new Dictionary <string, UserDataRecord>();


            UserDataRecord record3 = new UserDataRecord();
            record3.Value = Random.Range(500, 1000).ToString();
            this.data.data.Add(MyPlayerData.GamesPlayedKey, record3);
            UserDataRecord record4 = new UserDataRecord();
            record4.Value = Random.Range(1, 250).ToString();
            this.data.data.Add(MyPlayerData.TwoPlayerWinsKey, record4);
            UserDataRecord record5 = new UserDataRecord();
            record5.Value = Random.Range(1, 250).ToString();
            this.data.data.Add(MyPlayerData.FourPlayerWinsKey, record5);
            UserDataRecord record = new UserDataRecord();
            record.Value = (Random.Range(10000, 50000) * 100).ToString();
            this.data.data.Add(MyPlayerData.TotalEarningsKey, record);
            UserDataRecord record2 = new UserDataRecord();
            record2.Value = (Random.Range(1, 10000) * 100).ToString();
            this.data.data.Add(MyPlayerData.CoinsKey, record2);
        }
    }
示例#3
0
    public void LoadData()
    {
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = new FileStream(Application.dataPath + "/PlayerInfoData.dat", FileMode.OpenOrCreate);

        if (file != null && file.Length > 0)
        {
            for (int i = 0; i < DataSize; ++i)
            {
                MyPlayerData Data = (MyPlayerData)bf.Deserialize(file);
                m_Data[i] = Data;
            }
        }
        else if (file != null)
        {
            MyPlayerData data = new MyPlayerData();
            for (int i = 0; i < DataSize; ++i)
            {
                data.StageNumber = i + 1;
                data.StageScore  = 0;
                bf.Serialize(file, data);
            }
        }
        file.Close();
    }
示例#4
0
    public void SaveData(int iStageNumber, int iScore)
    {
        BinaryFormatter bf   = new BinaryFormatter();
        FileStream      file = new FileStream(Application.dataPath + "/PlayerInfoData.dat", FileMode.Create);

        for (int i = 0; i < DataSize; ++i)
        {
            if (i == iStageNumber - 1)
            {
                MyPlayerData data = new MyPlayerData();
                data.StageNumber = iStageNumber;
                if (m_Data[i].StageScore < iScore)
                {
                    data.StageScore = iScore;
                }
                else
                {
                    data.StageScore = m_Data[i].StageScore;
                }
                bf.Serialize(file, data);
            }
            else
            {
                bf.Serialize(file, m_Data[i]);
            }
        }
        file.Close();
    }
示例#5
0
    public void ShowPlayerInfo(Sprite avatarSprite, string name, MyPlayerData data)
    {
        editProfileButton.SetActive(false);
        addFriendButton.SetActive(true);

        window.SetActive(true);

        FillData(avatarSprite, name, data);
    }
示例#6
0
    public void getPlayerDataRequest(string id)
    {
        Debug.Log("Get player data request: " + id);
        GetUserDataRequest getdatarequest = new GetUserDataRequest()
        {
            PlayFabId = id,
        };

        PlayFabClientAPI.GetUserData(getdatarequest, (result) =>
        {
            Dictionary <string, UserDataRecord> data = result.Data;

            this.data = new MyPlayerData(data, false);
        }, (error) =>
        {
            Debug.Log("Data updated error " + error.ErrorMessage);
        }, null);
    }
    public IEnumerator SendInitialData()
    {
        var request = new UnityWebRequest("http://18.223.239.177/hello/addplayer/", "POST");

        byte[] bodyRaw = Encoding.UTF8.GetBytes(PlayerDataJson);
        request.uploadHandler   = (UploadHandler) new UploadHandlerRaw(bodyRaw);
        request.downloadHandler = (DownloadHandler) new DownloadHandlerBuffer();
        request.SetRequestHeader("Content-Type", "application/json");
        yield return(request.SendWebRequest());

        Debug.Log("Status Code: " + request.responseCode);

        if (request.isNetworkError || request.isHttpError)
        {
            Debug.Log(request.error);
        }
        else
        {
            string       data = request.downloadHandler.text;
            MyPlayerData MPD  = JsonUtility.FromJson <MyPlayerData>(data);
            //Debug.Log("_ID received: " + MPD._id);
            DB._id_Player = MPD._id;
        }
    }
    /*
     * public void UploadAllData2(AppData AD, DataBase DB) {
     *  string name = "Sample name";                         // Player's name
     *  string industry = "Sample industry";          // Current industry in which player is working/job
     *  int bankaccount = 999;                     // Player's bank amount
     *  float satisfaction = 9.9f;     // Player's Satisfaction level
     *  int actionpoints = 9;   // Player's Remaining Action Points
     *
     *
     *  // Need checks...
     *  bool jobstatus = true;                      // Is working or not / Is fire
     *  string currentjob = "Sample job";         // Current Job title
     *  int salary = 9999;                          // Player's Salary// Need Checks...
     *  // Need further checks....
     *  int joblevel = 9;                        // Current Job level
     *
     *  //if (!string.IsNullOrEmpty(AD.CurrentPlayer.MyJob.FieldName) && !string.IsNullOrEmpty(AD.CurrentPlayer.MyJob.JobTitle)) {
     *  //    jobstatus = true;
     *  //    currentjob = AD.CurrentPlayer.MyJob.JobTitle;
     *  //    salary = AD.CurrentPlayer.MyJob.Salary;
     *  //    // need further checks...
     *  //    joblevel = GetJobLevel(AD.CurrentPlayer.MyJob.JobTitle);
     *  //}
     *  string educationlevel = "PHD-9";               // Latest Education
     *  //if (AD.CurrentPlayer.Phd.Count > 0) {
     *  //    educationlevel = AD.CurrentPlayer.Phd[AD.CurrentPlayer.Phd.Count - 1].edu;
     *  //} else if (AD.CurrentPlayer.Mast.Count > 0) {
     *  //    educationlevel = AD.CurrentPlayer.Mast[AD.CurrentPlayer.Mast.Count - 1].edu;
     *  //} else if (AD.CurrentPlayer.Bach.Count > 0) {
     *  //    educationlevel = AD.CurrentPlayer.Bach[AD.CurrentPlayer.Bach.Count - 1].edu;
     *  //} else if (AD.CurrentPlayer.Poly.Count > 0) {
     *  //    educationlevel = AD.CurrentPlayer.Poly[AD.CurrentPlayer.Poly.Count - 1].edu;
     *  //} else if (AD.CurrentPlayer.Educations.Count > 0) {
     *  //    educationlevel = AD.CurrentPlayer.Educations[AD.CurrentPlayer.Educations.Count - 1].edu;
     *  //} else {
     *  //    educationlevel = null;
     *  //}
     *  string[] skills = new string[1] { "skill-999" };                     // Skills of player
     *  //if (AD.CurrentPlayer.MyValues.Count > 0) {
     *  //    skills = new string[AD.CurrentPlayer.MyValues.Count];
     *  //    for (int i = 0; i < skills.Length; i++) {
     *  //        skills[i] = AD.CurrentPlayer.MyValues[i].title;
     *  //    }
     *  //}
     *  MyPlayerPossession p = new MyPlayerPossession("sample possession 9", "sample category - 9");
     * /////////////// p._id = "";
     *  MyPlayerPossession[] possessions = new MyPlayerPossession[1] { p };    // Player's Possessions
     *  //if (AD.CurrentPlayer.ShopPossessions.Count > 0) {
     *  //    possessions = new MyPlayerPossession[AD.CurrentPlayer.ShopPossessions.Count];
     *  //    for (int i = 0; i < possessions.Length; i++) {
     *  //        possessions[i] = new MyPlayerPossession(AD.CurrentPlayer.ShopPossessions[i].Name, AD.CurrentPlayer.ShopPossessions[i].Category);
     *  //    }
     *  //}
     *  MyPlayerData MPD = new MyPlayerData(name, industry, joblevel, currentjob, educationlevel, bankaccount, jobstatus, satisfaction, salary, actionpoints, skills, possessions);
     *
     *  // Upload: MPD Object here...
     *  PlayerDataJson = JsonUtility.ToJson(MPD);
     *  //UnityWebRequest www = UnityWebRequest.Post("http://18.223.239.177/hello/player/update/123", PlayerDataJson);
     *  //www.SendWebRequest();
     *
     * }
     */
    public void UploadAllData(AppData AD, DataBase DB, int rn)
    {
        string name   = AD.CurrentPlayer.Name;                       // Player's name
        string gameID = AD.game_id_data;

        string industry = "null";          // Current industry in which player is working/job

        if (!string.IsNullOrEmpty(AD.MyFinalJob.FieldName))
        {
            industry = AD.MyFinalJob.FieldName;
        }
        int   bankaccount  = AD.CurrentPlayer.Bank;                  // Player's bank amount
        float satisfaction = AD.CurrentPlayer.SatisfactionLevel;     // Player's Satisfaction level
        int   actionpoints = AD.CurrentPlayer.RemainingActionPoints; // Player's Remaining Action Points


        // Need checks...
        bool   jobstatus  = false;          // Is working or not / Is fire
        string currentjob = "null";         // Current Job title
        int    salary     = 0;              // Player's Salary// Need Checks...
        // Need further checks....
        int joblevel = 0;                   // Current Job level

        if (!string.IsNullOrEmpty(AD.MyFinalJob.FieldName) && !string.IsNullOrEmpty(AD.MyFinalJob.JobTitle))
        {
            jobstatus  = true;
            currentjob = AD.MyFinalJob.JobTitle;
            salary     = AD.MyFinalJob.Salary;
            // need further checks...
            joblevel = GetJobLevel(AD.MyFinalJob.JobTitle);
        }
        string educationlevel = null;               // Latest Education

        if (AD.CurrentPlayer.Phd.Count > 0)
        {
            educationlevel = AD.CurrentPlayer.Phd[AD.CurrentPlayer.Phd.Count - 1].edu;
        }
        else if (AD.CurrentPlayer.Mast.Count > 0)
        {
            educationlevel = AD.CurrentPlayer.Mast[AD.CurrentPlayer.Mast.Count - 1].edu;
        }
        else if (AD.CurrentPlayer.Bach.Count > 0)
        {
            educationlevel = AD.CurrentPlayer.Bach[AD.CurrentPlayer.Bach.Count - 1].edu;
        }
        else if (AD.CurrentPlayer.Poly.Count > 0)
        {
            educationlevel = AD.CurrentPlayer.Poly[AD.CurrentPlayer.Poly.Count - 1].edu;
        }
        else if (AD.CurrentPlayer.Educations.Count > 0)
        {
            educationlevel = AD.CurrentPlayer.Educations[AD.CurrentPlayer.Educations.Count - 1].edu;
        }
        else
        {
            educationlevel = "null";
        }
        string[] skills = null;                     // Skills of player
        if (AD.CurrentPlayer.MyValues.Count > 0)
        {
            skills = new string[AD.CurrentPlayer.MyValues.Count];
            for (int i = 0; i < skills.Length; i++)
            {
                if (AD.CurrentPlayer.MyValues[i].Cost > 0)
                {
                    skills[i] = AD.CurrentPlayer.MyValues[i].title;
                }
                else
                {
                    skills[i] = "null";
                }
            }
        }
        MyPlayerPossession[] possessions = null;    // Player's Possessions
        if (AD.CurrentPlayer.ShopPossessions.Count > 0)
        {
            possessions = new MyPlayerPossession[AD.CurrentPlayer.ShopPossessions.Count];
            for (int i = 0; i < possessions.Length; i++)
            {
                possessions[i] = new MyPlayerPossession(AD.CurrentPlayer.ShopPossessions[i].Name, AD.CurrentPlayer.ShopPossessions[i].Category);
            }
        }
        MyPlayerData MPD = new MyPlayerData(name, gameID, industry, joblevel, currentjob, educationlevel, bankaccount, jobstatus,
                                            satisfaction, salary, actionpoints, skills, possessions);

        MPD.roundno = rn;
        // Upload: MPD Object here...
        //Debug.Log("Sending...");
        PlayerDataJson = JsonUtility.ToJson(MPD);
        //UnityWebRequest www = UnityWebRequest.Post("http://18.223.239.177/hello/addplayer/", PlayerDataJson);

        StartCoroutine(SendInitialData());

        //var request = new UnityWebRequest("http://18.223.239.177/hello/addplayer/", "POST");
        //byte[] bodyRaw = Encoding.UTF8.GetBytes(PlayerDataJson);
        //request.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
        //request.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
        //request.SetRequestHeader("Content-Type", "application/json");
        //request.SendWebRequest();


        //var request = new UnityWebRequest("http://18.223.239.177/hello/addplayer/", "POST");
        //byte[] bodyRaw = Encoding.UTF8.GetBytes(PlayerDataJson);
        //request.uploadHandler = (UploadHandler)new UploadHandlerRaw(bodyRaw);
        //request.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
        //request.SetRequestHeader("Content-Type", "application/json");
        //yield return request.SendWebRequest();
        //Debug.Log("Status Code: " + request.responseCode);
        //www.SendWebRequest();

        //Debug.Log("Send...");
    }