Пример #1
0
    public void FilterResult(ExecuteCloudScriptResult result)
    {
        ClaimedRewards.Clear();
        JSONNode jsonResultPF = PlayFabSimpleJson.SerializeObject(result.FunctionResult);

        jsonResult = JSON.Parse(result.FunctionResult.ToString());

        Debug.Log("json result playfab " + jsonResultPF.ToString());
        Debug.Log("json result " + jsonResult.ToString());
        if ((jsonResult.Value.Equals("null") || result.Error != null))
        {
            status = FMRewardStatus.error;
            return;
        }

        /*{ "status":"success",
         * "rewards":
         * [{"achievement_key":"stages_created","reward_Key":"default_co_200","reward_type":"coins","amount":200}]
         * }
         */
        Debug.Log("function result  size" + jsonResult["rewards"].AsArray.Count);
        for (int i = 0; i < jsonResult["rewards"].AsArray.Count; i++)
        {
            string rewardKey  = jsonResult["rewards"].AsArray[i]["reward_Key"];
            string rewardType = jsonResult["rewards"].AsArray[i]["reward_type"];

            FMRewardType rewadType   = rewardType.Equals("item") ? FMRewardType.Item : FMRewardType.Currency;
            int          rewardValue = rewadType == FMRewardType.Currency ? jsonResult["rewards"].AsArray[i]["amount"].AsInt : 0;
            string       itemKey     = rewadType == FMRewardType.Item ? jsonResult["rewards"].AsArray[i]["item_key"].Value : "";

            //var ri = new FMRewardItem(rewardKey, rewardType, rewardValue, rewardValue);
            //ClaimedRewards.Add(ri);
        }
    }
Пример #2
0
 public FMRewardItem(string rewardKey, string rewardType, int amount, string itemKey, FMRewardType type)
 {
     this.Key             = rewardKey;
     this.RewardTypeValue = rewardType;
     this.Amount          = amount;
     this.ItemKey         = itemKey;
     this.Type            = type;
 }
Пример #3
0
    public static void StoreItemsFromJson(GetTitleDataResult res)
    {
        Items.Clear();
        var allRewardsJson = JSON.Parse(res.Data["fm_rewards"]);

        for (int i = 0; i < allRewardsJson.Count; i++)
        {
            var          reward  = allRewardsJson[i];
            FMRewardType type    = reward["item_key"] == null ? FMRewardType.Currency : FMRewardType.Item;
            int          amount  = type == FMRewardType.Currency ? reward["amount"].AsInt : 0;
            string       itemKey = type == FMRewardType.Item ? reward["item_key"].Value : "";
            var          ri      = new FMRewardItem(reward["key"], reward["reward_type"], amount, itemKey, type);
            Items.Add(ri);
        }
    }