Esempio n. 1
0
        internal Project EditProject(Project project)
        {
            var old = GetAllProjects().FirstOrDefault(p => p.Id.Equals(project.Id));

            if (old == null)
            {
                return(CreateProject(project));
            }

            var jDb = JsonDatabaseConnection.GetProjectDb(old.Name);

            if (!old.Name.Equals(project.Name))
            {
                jDb.Rename(project.Name);
            }
            _db.Update(project);
            jDb.Update(project);
            foreach (var monsters in GetAllMonsters().Where(m => project.MonsterIds.Contains(m.Id)))
            {
                jDb.Update(monsters);
            }
            foreach (var spell in GetAllSpells().Where(m => project.SpellIds.Contains(m.Id)))
            {
                jDb.Update(spell);
            }
            return(project);
        }
Esempio n. 2
0
    public List <Player> Players = new List <Player>(); //  <Player> Сlass declaration: Assets/Classes/Player.cs

    public void save()
    {
        string file = "ScoreTable";
        string data = JsonUtility.ToJson(this, true);

        JsonDatabaseConnection.save(file, data);
    }
    private IEnumerator SendLocalRecords()
    {
        ScoreTable LocalScoreTable = new ScoreTable();
        string     scoreTable      = JsonDatabaseConnection.load("ScoreTable");

        LocalScoreTable = JsonUtility.FromJson <ScoreTable>(scoreTable);
        Debug.Log(LocalScoreTable);
        if (LocalScoreTable != null)
        {
            string data  = "";
            string name  = DataHolder.nickname;
            string score = DataHolder.points.ToString();
            string url   = "http://seventh.touchit.space/addPlayer.php"; // Database server URL

            foreach (Player player in LocalScoreTable.Players)
            {
                List <IMultipartFormSection> wwwForm = new List <IMultipartFormSection>();

                wwwForm.Add(new MultipartFormDataSection("name", player.name));
                wwwForm.Add(new MultipartFormDataSection("score", player.score.ToString()));

                UnityWebRequest www = UnityWebRequest.Post(url, wwwForm);

                yield return(www.SendWebRequest());
            }

            JsonDatabaseConnection.clean("ScoreTable");
        }
    }
Esempio n. 4
0
        internal void DeleteProject(Project project)
        {
            var old = GetAllProjects().FirstOrDefault(p => p.Id.Equals(project.Id));

            if (old == null)
            {
                return;
            }
            JsonDatabaseConnection.GetProjectDb(old.Name).Delete();
            _db.Remove(project);
        }
Esempio n. 5
0
        private void LoadAllProjects(IDatabaseConnection db)
        {
            var allProjects = GetAllProjects();
            var allMonsters = GetAllMonsters();
            var allSpells   = GetAllSpells();
            var jDb         = new JsonDatabaseConnection();

            foreach (var project in jDb.GetAllProjectNames())
            {
                var pDb = JsonDatabaseConnection.GetProjectDb(project);
                foreach (var p in pDb.GetQueryable <Project>().Where(p => !allProjects.Any(mp => p.Id == mp.Id)).ToList())
                {
                    db.Add(p);
                }
                foreach (var m in pDb.GetQueryable <Monster>().Where(m => !allMonsters.Any(mm => m.Id == mm.Id)).ToList())
                {
                    db.Add(m);
                }
                foreach (var s in pDb.GetQueryable <Spell>().Where(s => !allSpells.Any(ms => s.Id == ms.Id)).ToList())
                {
                    db.Add(s);
                }
            }
        }
Esempio n. 6
0
 internal Project CreateProject(Project project)
 {
     _db.Add(project);
     JsonDatabaseConnection.GetProjectDb(project.Name).Add(project);
     return(project);
 }
    private IEnumerator Send()
    {
        string data = "";



        string name  = DataHolder.nickname;
        string score = DataHolder.points.ToString();
        string url   = "http://seventh.touchit.space/addPlayer.php"; // Database server URL

        List <IMultipartFormSection> wwwForm = new List <IMultipartFormSection>();

        if (name != "" || name != null)
        {
            wwwForm.Add(new MultipartFormDataSection("name", name));
            wwwForm.Add(new MultipartFormDataSection("score", score));

            UnityWebRequest www_add = UnityWebRequest.Post(url, wwwForm);

            yield return(www_add.SendWebRequest());
        }

        url     = "http://seventh.touchit.space/"; // Database server URL
        wwwForm = new List <IMultipartFormSection>();

        UnityWebRequest www = UnityWebRequest.Post(url, wwwForm);

        www = UnityWebRequest.Post(url, wwwForm);

        yield return(www.SendWebRequest());

        data = www.downloadHandler.text;

        ScoreTable GlobalScoreTable = new ScoreTable(); // <ScoreTable> Class declaration: Assets/Classes/ScoreTable.cs

        Debug.Log(data);
        GlobalScoreTable = JsonUtility.FromJson <ScoreTable>(data);
        Debug.Log(GlobalScoreTable);

        if (GlobalScoreTable != null)
        {
            foreach (Player player in GlobalScoreTable.Players)
            {
                scoreTableItem.transform.Find("Id").GetComponent <Text>().text    = player.id.ToString();
                scoreTableItem.transform.Find("Name").GetComponent <Text>().text  = player.name;
                scoreTableItem.transform.Find("Score").GetComponent <Text>().text = player.score.ToString();
                Instantiate(scoreTableItem.transform, scoreTableContent.transform);
            }
        }
        else
        {
            ScoreTable LocalScoreTable = new ScoreTable(); // <ScoreTable> Class declaration: Assets/Classes/ScoreTable.cs
            Player     player          = new Player();

            string scoreTable = JsonDatabaseConnection.load("ScoreTable");

            if (scoreTable != "")
            {
                LocalScoreTable = JsonUtility.FromJson <ScoreTable>(scoreTable);
                Debug.Log(LocalScoreTable.Players);
            }

            long currentUnixTime = System.DateTimeOffset.Now.ToUnixTimeSeconds(); // unix-time

            player.name  = DataHolder.nickname;
            player.score = DataHolder.points;
            player.id    = currentUnixTime * player.name.Length;

            LocalScoreTable.Players.Add(player);
            LocalScoreTable.save();

            scoreTableContent.SetActive(false);
            scoreTableItemError.SetActive(true);
        }

        scoreTableItem.SetActive(false);
    }