Ejemplo n.º 1
0
    private static void DownloadManagerImprovements()
    {
        WebClient webClient = new WebClient();

        webClient.Headers.Add(HttpRequestHeader.Authorization, NetService.AuthHeader);
        string  downloadedString = webClient.DownloadString(NetService.FullUrl(NetService.kManagerImprovements));
        string  json             = JsonWebToken.Decode(downloadedString, NetService.secretKey);
        JObject parent           = JObject.Parse(json);
        JToken  arr = parent["response"]["data"];

        var efficiencyImrpovements      = NetService.ParseManagerEfficiencyImprovements(arr);
        var rollbackImprovements        = NetService.ParseManagerRollbackImprovements(arr);
        var megaImprovement             = NetService.ParseMegaManagerImprovement(arr);
        ManagerImproveJsonData jsonData = new ManagerImproveJsonData {
            efficiencyImprovements = efficiencyImrpovements,
            rollbackImprovements   = rollbackImprovements,
            megaImprovement        = megaImprovement
        };

        string         serializePath = Path.Combine(Application.dataPath, "Resources/Data/manager_improvements.json");
        JsonSerializer serializer    = new JsonSerializer();

        serializer.Formatting = Formatting.Indented;
        Serialize(serializePath, jsonData);
        Debug.Log("manager improvements saved...".Colored(ConsoleTextColor.orange).BoldItalic());
        EditorUtility.DisplayDialog("Manager improvements loaded", $"data saved to {"Resources/Data/manager_improvements.json"}", "Ok");
    }
Ejemplo n.º 2
0
        private IEnumerator GetManagerImprovementsImpl(Action <ManagerImproveData> onSuccess, Action <string> onError)
        {
            UnityWebRequest request = UnityWebRequest.Get(FullUrl(kManagerImprovements));

            request.SetRequestHeader(authKey, AuthHeader);
            UnityWebRequestAsyncOperation operation = request.SendWebRequest();

            yield return(operation);

            if (operation.isDone)
            {
                if (!operation.webRequest.isHttpError)
                {
                    try {
                        string result = operation.webRequest.downloadHandler.text;
                        string json   = JsonWebToken.Decode(result, secretKey);
                        print(json);
                        JObject parent = JObject.Parse(json);
                        JToken  arr    = parent["response"]["data"];
                        var     efficiencyImrpovements  = ParseManagerEfficiencyImprovements(arr);
                        var     rollbackImprovements    = ParseManagerRollbackImprovements(arr);
                        var     megaImprovement         = ParseMegaManagerImprovement(arr);
                        ManagerImproveJsonData jsonData = new ManagerImproveJsonData {
                            efficiencyImprovements = efficiencyImrpovements,
                            rollbackImprovements   = rollbackImprovements,
                            megaImprovement        = megaImprovement,
                        };
                        ManagerImproveData improveData = new ManagerImproveData(jsonData);
                        onSuccess?.Invoke(improveData);
                    } catch (Exception exception) {
                        UDebug.LogError(exception.Message.Bold());
                        UDebug.LogError(exception.StackTrace.Bold());
                        onError?.Invoke($"{exception.Message}{Environment.NewLine}{exception.StackTrace}");
                    }
                }
                else
                {
                    UDebug.LogError(operation.webRequest.error);
                    onError?.Invoke(operation.webRequest.error);
                }
            }
            else
            {
                UDebug.LogError($"operation {nameof(GetManagerImprovementsImpl)} is not done".Bold());
                onError?.Invoke($"operation {nameof(GetManagerImprovementsImpl)} is not done");
            }
        }