/// <summary> /// 購入通信成功時 /// </summary> public static void OnSuccessBuyApi(BuyResponseData response, Action <UserShopData> onCompleted) { //購入後のユーザーデータの更新 UserData userData = UserData.Get(); userData.Set(response.tUsers); userData.Set(response.tGem); //入手したアイテムの情報を更新 if (response.tCannonBattery != null) { for (int i = 0; i < response.tCannonBattery.Length; ++i) { userData.AddItem(ItemType.Battery, response.tCannonBattery[i].itemId, 1); } } if (response.tCannonBarrel != null) { for (int i = 0; i < response.tCannonBarrel.Length; ++i) { userData.AddItem(ItemType.Barrel, response.tCannonBarrel[i].itemId, 1); } } if (response.tCannonBullet != null) { for (int i = 0; i < response.tCannonBullet.Length; ++i) { userData.AddItem(ItemType.Bullet, response.tCannonBullet[i].itemId, 1); } } if (response.tGear != null) { for (int i = 0; i < response.tGear.Length; ++i) { userData.AddItem(ItemType.Gear, response.tGear[i].gearId, 1); } } if (response.tItem != null) { for (int i = 0; i < response.tItem.Length; i++) { userData.SetItem(response.tItem[i]); } } HomeScene.isMaxPossession = response.isMaxPossession; //通信完了 onCompleted?.Invoke(response.tShop); }
/// <summary> /// 補償取得通信 /// </summary> public static void CallVipRewardGetApi(uint vipLevel, Action onCompleted) { var request = new SharkWebRequest <VipRewardGetResponseData>("vip/rewardGet"); request.SetRequestHeader("AccessToken", UserData.Get().hash); request.SetRequestParameter(new Dictionary <string, object> { { "vipLevel", vipLevel } }); request.onSuccess = (response) => { UserData userData = UserData.Get(); // アイテム更新 foreach (var add in response.mVipReward) { userData.AddItem((ItemType)add.itemType, add.itemId, add.itemNum); } //ジェムとコインを反映 if (response.tGem != null) { userData.Set(response.tGem); } if (response.tUsers != null) { userData.Set(response.tUsers); SharedUI.Instance.header.SetInfo(userData); } onCompleted?.Invoke(); }; request.Send(); }