hch
2025-08-22 fca615e299c6a6ec0fd0b589f2b302a2bf54c72b
Main/System/HappyXB/HappyXBModel.cs
@@ -234,7 +234,7 @@
    /// </summary>
    /// <param name="type">寻宝类型</param>
    /// <param name="index">0 单次寻宝 1 多次寻宝</param>
    /// <param name="costType">0-默认仙玉;1-免费次数;2-寻宝道具</param>
    /// <param name="costType">0-货币;1-免费次数;2-寻宝道具</param>
    public event Action<int> StartXBEvent;
    public void SendXBQuest(int type, int index, int costType)
    {
@@ -310,16 +310,31 @@
            if (UIHelper.GetMoneyCnt(moneyType) >= (ulong)xbOneMoney)
            {
                StoreModel.Instance.UseMoneyCheck(xbOneMoney, moneyType, () =>
                //暂定充值货币需要二次确认
                if (moneyType == 1)
                {
                    StoreModel.Instance.UseMoneyCheck(xbOneMoney, moneyType, () =>
                    {
                        SendXBQuest(xbType, 0, 0);
                    }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, xbOneMoney,
                    UIHelper.GetIconNameWithMoneyType(moneyType), funcSet.CostItemCountList[0]));
                }
                else
                {
                    SendXBQuest(xbType, 0, 0);
                }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, xbOneMoney,
                UIHelper.GetIconNameWithMoneyType(moneyType), funcSet.CostItemCountList[0]));
                }
            }
            else
            {
                SysNotifyMgr.Instance.ShowTip("LackMoney", moneyType);
                ItemTipUtility.Show(GeneralDefine.MoneyDisplayModel[moneyType], true);
                if (!GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
                {
                    SysNotifyMgr.Instance.ShowTip("LackMoney", moneyType);
                }
                else
                {
                    ItemTipUtility.Show(GeneralDefine.MoneyDisplayModel[moneyType], true);
                }
            }
        }
    }
@@ -350,17 +365,31 @@
            int moneyType = funcSet.CostMoneyType;
            if (UIHelper.GetMoneyCnt(moneyType) >= (ulong)needMoney)
            {
                StoreModel.Instance.UseMoneyCheck(needMoney, moneyType, () =>
                //暂定充值货币需要二次确认
                if (moneyType == 1)
                {
                    //只要有道具就是道具寻宝,不足部分服务端扣货币
                    StoreModel.Instance.UseMoneyCheck(needMoney, moneyType, () =>
                    {
                        //只要有道具就是道具寻宝,不足部分服务端扣货币
                        SendXBQuest(xbType, 1, toolCnt > 0 ? 2 : 0);
                    }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, needMoney,
                    UIHelper.GetIconNameWithMoneyType(moneyType), needToolCnt - toolCnt));
                }
                else
                {
                    SendXBQuest(xbType, 1, toolCnt > 0 ? 2 : 0);
                }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, needMoney,
                UIHelper.GetIconNameWithMoneyType(moneyType), needToolCnt - toolCnt));
                }
            }
            else
            {
                SysNotifyMgr.Instance.ShowTip("LackMoney", moneyType);
                ItemTipUtility.Show(GeneralDefine.MoneyDisplayModel[moneyType], true);
                if (!GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
                {
                    SysNotifyMgr.Instance.ShowTip("LackMoney", moneyType);
                }
                else
                {
                    ItemTipUtility.Show(GeneralDefine.MoneyDisplayModel[moneyType], true);
                }
            }
        }