Ejemplo n.º 1
0
    public void AddEquipment(string name, int amount)
    {
        if (!allEquipments.ContainsKey(name))
        {
            try
            {
                allEquipments.Add(name, new Equipment(LoadManager.Instance.allEquipmentData[name]));
                Debug.Log($"No current Equipment data in player. Trying to Create new one . . .");
            }
            catch (KeyNotFoundException e)
            {
                Debug.LogError($"Can't find {name}'s data ::" + e.ToString());
            }
        }

        allEquipments[name].AllAmount += amount;
        Debug.Log($"Adding {allEquipments[name].Name} : {amount} unit(s) to Player. Now Player have {allEquipments[name].AllAmount}.");
        LoadManager.Instance.SavePlayerDataToJson();
        return;
    }
Ejemplo n.º 2
0
    public void AddEquipment(string name, int amount)
    {
        if (!allEquipments.ContainsKey(name))
        {
            Debug.Log($"No current Equipment data in player. Trying to Create new one . . .");
            if (LoadManager.Instance.allEquipmentData.ContainsKey(name))
            {
                allEquipments.Add(name, new Equipment(LoadManager.Instance.allEquipmentData[name]));
            }
            else
            {
                Debug.LogWarning($"There're no {name} Equipment data in game.");
                return;
            }
        }

        allEquipments[name].AllAmount += amount;
        Debug.Log($"Adding {allEquipments[name].Name} : {amount} unit(s) to Player. Now Player have {allEquipments[name].AllAmount}.");
        LoadManager.Instance.SavePlayerDataToFireBase();
        return;
    }
Ejemplo n.º 3
0
    public IEnumerator LoadInGameData()
    {
        Debug.Log("Fetching Building Data . . .");
        Coroutine c1 = StartCoroutine(GetRequest("/BuildingData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allBuildingData = new BuildingDictionary();

                Building[] buildings = JsonHelper.FromJson <Building>(req.downloadHandler.text);
                foreach (Building building in buildings)
                {
                    allBuildingData.Add(building.type, building);
                }

                Debug.Log("Fetching Building Data completed.\n");
            }
        }));

        Debug.Log("Fetching Quest Data  . . .");
        Coroutine c2 = StartCoroutine(GetRequest("/QuestData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allQuestData           = new QuestDataDictionary();
                QuestData[] questDatas = JsonHelper.FromJson <QuestData>(req.downloadHandler.text);
                foreach (QuestData questData in questDatas)
                {
                    allQuestData.Add(questData.questID, questData);
                }
                Debug.Log("Fetching Quest Data completed.\n");
            }
        }));

        Debug.Log("Fetching Resource Data . . .");
        Coroutine c3 = StartCoroutine(GetRequest("/ResourceData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allResourceData      = new ResourceDictionary();
                Resource[] resources = JsonHelper.FromJson <Resource>(req.downloadHandler.text);
                foreach (Resource resource in resources)
                {
                    allResourceData.Add(resource.Name, resource);
                }
                Debug.Log("Fetching Resource Data completed.\n");
            }
        }));

        Debug.Log("Fetching Equipment Data . . .");
        Coroutine c4 = StartCoroutine(GetRequest("/EquipmentData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allEquipmentData       = new EquipmentDictionary();
                Equipment[] equipments = JsonHelper.FromJson <Equipment>(req.downloadHandler.text);
                foreach (Equipment equipment in equipments)
                {
                    allEquipmentData.Add(equipment.Name, equipment);
                }
                Debug.Log("Fetching Equipment Data completed.\n");
            }
        }));

        Debug.Log("Fetching Enemy Data  . . .");
        Coroutine c5 = StartCoroutine(GetRequest("/EnemyData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allEnemyData = new List <Enemy>();
                Debug.Log("Fetching Enemy Data completed.\n");
                allEnemyData.AddRange(JsonHelper.FromJson <Enemy>(req.downloadHandler.text));
            }
        }));
        Coroutine c6 = StartCoroutine(LoadManager.Instance.GetRequest("/CharacterData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allCharacterData = new List <Character.CharacterData>();
                Debug.Log("Fetching Character Data completed.\n");
                allCharacterData.AddRange(JsonHelper.FromJson <Character.CharacterData>(req.downloadHandler.text));
            }
        }));
        Coroutine c7 = StartCoroutine(LoadManager.Instance.GetRequest("/BirthMarkData.json", (UnityWebRequest req) =>
        {
            if (req.isNetworkError || req.isHttpError)
            {
                Debug.Log($"{req.error}: {req.downloadHandler.text}");
            }
            else
            {
                allBirthMarkDatas = new List <BirthMarkData>();
                Debug.Log("Fetching Character BirthMark Data completed.\n");

                BirthMarkSerializer birthMarkSerializer = new BirthMarkSerializer();

                birthMarkSerializer = JsonUtility.FromJson <BirthMarkSerializer>(req.downloadHandler.text);

                allBirthMarkDatas = birthMarkSerializer.birthMarkDatas;
            }
        }));

        Debug.Log("Now Waiting . . .");

        yield return(c1);

        yield return(c2);

        yield return(c3);

        yield return(c4);

        yield return(c5);

        yield return(c6);

        yield return(c7);

        Debug.Log("Load GameData Complete.");
    }