Example #1
0
 public void BuyAmount(int amount)
 {
     totalPrice = priceAmount * amount;
     if (StaticData.GetWareHouseDiamond() >= totalPrice)
     {
         //扣除资源
         StaticData.UpdateWareHouseDiamond(-totalPrice);
         CSBuyProp cSBuySection = new CSBuyProp()
         {
             BuyWay  = GoodsBuyWay.FirstWay,
             GoodId  = giftInfo.goodsID,
             GoodNum = amount
         };
         ProtocalManager.Instance().SendCSBuyProp(cSBuySection, (sCBuyProp) =>
         {
             Debug.Log("购买道具成功");
             //仓库数量增加
             StaticData.UpdateWareHouseItem(giftInfo.goodsID, amount);
             //更新礼物数量
             buySucceedCallBack?.Invoke(amount);
             //更新玩家货币
             StaticData.UpdateBackpackProps(sCBuyProp);
             this.gameObject.SetActive(false);
         }, (ErrorInfo e) =>
         {
             Debug.LogError("购买失败" + e.webErrorCode);
         });
     }
     else
     {
         StaticData.CreateToastTips("购买道具需要消耗的货币不足");
         StaticData.OpenRechargeUI();
     }
 }
Example #2
0
 public void BuyAmount(int amount)
 {
     totalPrice = priceAmount * amount;
     if (StaticData.GetWareHouseDiamond() >= totalPrice)
     {
         //扣除资源
         StaticData.UpdateWareHouseDiamond(-totalPrice);
         CSBuyProp cSBuyPurple = new CSBuyProp()
         {
             BuyWay  = GoodsBuyWay.FirstWay,
             GoodId  = StaticData.configExcel.GetVertical().PurpleGoldsId,
             GoodNum = amount
         };
         ProtocalManager.Instance().SendCSBuyProp(cSBuyPurple, (sCBuyProp) =>
         {
             Debug.Log("购买紫金币成功");
             //仓库数量增加
             StaticData.UpdateWareHouseItem(StaticData.configExcel.GetVertical().PurpleGoldsId, amount);
             //回调
             buySucceedCallBack?.Invoke();
             //更新玩家货币
             StaticData.UpdateBackpackProps(sCBuyProp);
             this.gameObject.SetActive(false);
         }, (ErrorInfo e) =>
         {
             Debug.LogError("购买失败" + e.webErrorCode);
         });
     }
     else
     {
         //StaticData.CreateToastTips("购买道具需要消耗的货币不足");
         buyFailureCallBack.Invoke();
         //StaticData.OpenRechargeUI();
     }
 }
Example #3
0
    /// <summary>
    /// 确认购买体力
    /// </summary>
    /// <param name="id"></param>
    /// <param name="num"></param>
    private void ConfirmBuyItems(int id, int num)
    {
        _curBuyPorwerNum = num;
        CSBuyProp buyItem = new CSBuyProp();

        buyItem.GoodId  = ZillionaireGameMapManager._instance.CurZillionaireMapControl.CurSelectMap.PowerBuyID;
        buyItem.GoodNum = num;
        buyItem.BuyWay  = GoodsBuyWay.FirstWay;
        ZillionaireToolManager.NotifyServerBuyItems(buyItem, BuyPowerSuccess);
    }
Example #4
0
    private void OnLeftBuyBtnClick()
    {
        if (StaticData.isOpenGuide && GuideCanvasComponent._instance != null && GuideCanvasComponent._instance.CurrExecuteGuideLittleStepDefine.Id == 10011)
        {
            GuideCanvasComponent._instance.SetLittleStepFinish();
        }
        listCostItem.Clear();
        listCostItem.Add(new GoodIDCount()
        {
            ID    = curStoreDefine.OriginalPrice[0].ID,
            Count = leftCurUnitPrice
        });
        GoodsBuyWay buyWay    = GoodsBuyWay.FirstWay;
        CSBuyProp   csBuyProp = new CSBuyProp()
        {
            GoodId  = curStoreDefine.ShopId,
            GoodNum = buyAmount,
            BuyWay  = buyWay
        };

        ProtocalManager.Instance().SendCSBuyProp(csBuyProp, (SCBuyProp) =>
        {
            //道具入库
            StaticData.UpdateWareHouseItem(curStoreDefine.GoodId, (int)curStoreDefine.GoodNum * buyAmount);
            //货币扣除
            foreach (var elem in SCBuyProp.CurrencyInfo)
            {
                StaticData.UpdateWareHouseItems(elem.GoodsId, (int)elem.Count);
            }
            //判断是不是装饰
            if (isOrnament)
            {
                choicedUIOrnament.ChangeBuyLimit(buyAmount);
            }
            else
            {
                choicedUIPoolItemGood.ChangeBuyLimit(buyAmount);
            }
            StaticData.CreateToastTips("购买成功!");
            OnHideShopChoiceUI();
        }, (error) => {
            StaticData.OpenCommonTips(StaticData.GetMultilingual(120245), 120010, () =>
            {
                //打开充值界面
                StaticData.OpenRechargeUI(0);
                //关闭弹窗
                transform.gameObject.SetActive(false);
                //关闭遮罩
                _bgMask.gameObject.SetActive(false);
            }, null, 120075);
            //BuyItemError(error, buyWay);
        }, false);
    }
Example #5
0
 /// <summary>
 /// 购买道具 商城购买
 /// </summary>
 /// <param name="buyItem"></param>
 /// <param name="actionCallback"></param>
 public static void NotifyServerBuyItems(CSBuyProp buyItem, Action <SCBuyProp> actionCallback)
 {
     ProtocalManager.Instance().SendCSBuyProp(buyItem, (SCBuyProp sCBuyProp) =>
     {
         Debug.Log("通知服务器购买道具 购物车型成功!");
         actionCallback?.Invoke(sCBuyProp);
     },
                                              (ErrorInfo er) =>
     {
         Debug.Log("通知服务器购买道具 购物车型失败!Error:" + er.ErrorMessage);
         actionCallback?.Invoke(null);
     });
 }
Example #6
0
        public void SendCSBuyProp(CSBuyProp csbuyprop, Action <SCBuyProp> ResponseSCBuyPropCallBack, Action <ErrorInfo> errorCallBack, bool isShowDefaultTip = true)
        {
            OpCodeType opCodeType = ListOPRelation.GetOpCodeTypeByRequest <CSBuyProp> ();

            ProtoSendMethod.BusinessRequest <SCBuyProp>(csbuyprop, opCodeType, ResponseSCBuyPropCallBack, errorCallBack, isShowDefaultTip);
        }