public void SetPrice(GameCmd.MoneyType moneyType, uint price, float changeRate, bool up) { if (null != this.m_spMoneyIcon && null != this.m_lblPrice) { string currencyIcon = MallDefine.GetCurrencyIconNameByType(moneyType); UIManager.GetAtlasAsyn(currencyIcon, ref iuiCurrencyCSAD, () => { if (null != m_spMoneyIcon) { m_spMoneyIcon.atlas = null; } }, m_spMoneyIcon); this.m_lblPrice.text = "" + price; } m_lblChangeNum.gameObject.SetActive(true); m_lblChangeNum.text = changeRate.ToString("P");//价格变化率 if (up) { m_goAdd.SetActive(true); m_goLess.SetActive(false); } else { m_goLess.SetActive(true); m_goAdd.SetActive(false); } }
/// <summary> /// 根据货币类型获取当前拥有数量 /// </summary> /// <param name="mType"></param> /// <returns></returns> public int GetCurrencyNumByType(GameCmd.MoneyType mType) { int num = 0; Client.IPlayer player = MainPlayer; if (null != player) { switch (mType) { case GameCmd.MoneyType.MoneyType_Gold: num = player.GetProp((int)Client.PlayerProp.Coupon); break; case GameCmd.MoneyType.MoneyType_Coin: num = player.GetProp((int)Client.PlayerProp.Cold); break; case GameCmd.MoneyType.MoneyType_MoneyTicket: num = player.GetProp((int)Client.PlayerProp.Money); break; case GameCmd.MoneyType.MoneyType_Reputation: num = player.GetProp((int)Client.PlayerProp.Reputation); break; case GameCmd.MoneyType.MoneyType_Score: num = player.GetProp((int)Client.PlayerProp.Score); break; } } return(num); }
/// <summary> /// 设置辅助道具 /// </summary> /// <param name="baseId">辅助道具id</param> /// <param name="needNum">辅助道具数量</param> /// <param name="growCost">完成操作所需货币数量</param> /// <param name="growCostType">完成操作所需货币类型</param> /// <param name="num">元宝代货币数量</param> /// <param name="moneyType"></param> private void SetCommonCost(uint baseId , uint needNum , uint growCost , GameCmd.MoneyType growCostType , uint num, GameCmd.MoneyType moneyType = GameCmd.MoneyType.MoneyType_Gold) { if (IsStatus(TabMode.ShengJi) || IsMuhonListEmpty() || null == Data) { return; } Muhon data = Data; if (null != m_itemGrowCostGrid) { m_itemGrowCostGrid.SetGridData(baseId, num: needNum, useDq: m_bool_autoUseDQ, costNum: num, mType: moneyType); } if (null != m_btn_AutoUseDQ) { m_btn_AutoUseDQ.GetComponent <UIToggle>().value = m_bool_autoUseDQ; } bool cansee = IsStatus(TabMode.JiHuo) && !data.IsActive; if (null != m_btn_ActiveBtn && m_btn_ActiveBtn.gameObject.activeSelf != cansee) { m_btn_ActiveBtn.gameObject.SetActive(cansee); } cansee = IsStatus(TabMode.JiHuo) && data.IsActive; if (null != m_btn_RemoveBtn && m_btn_RemoveBtn.gameObject.activeSelf != cansee) { m_btn_RemoveBtn.gameObject.SetActive(cansee); } cansee = IsStatus(TabMode.JinHua); if (null != m_btn_EvolveBtn && m_btn_EvolveBtn.gameObject.activeSelf != cansee) { m_btn_EvolveBtn.gameObject.SetActive(cansee); } cansee = IsStatus(TabMode.RongHe); if (null != m_btn_BlendBtn && m_btn_BlendBtn.gameObject.activeSelf != cansee) { m_btn_BlendBtn.gameObject.SetActive(cansee); } if (null != m_trans_OPCost) { UICurrencyGrid currencyGrid = m_trans_OPCost.GetComponent <UICurrencyGrid>(); if (null == currencyGrid) { currencyGrid = m_trans_OPCost.gameObject.AddComponent <UICurrencyGrid>(); } currencyGrid.SetGridData(new UICurrencyGrid.UICurrencyGridData( MallDefine.GetCurrencyIconNameByType(GameCmd.MoneyType.MoneyType_Gold), growCost)); } }
/// <summary> /// 根据货币类型获取图标 /// </summary> /// <param name="cType"></param> /// <returns></returns> public static string GetCurrencyIconNameByType(GameCmd.MoneyType cType) { string iconName = ""; CurrencyIconData data = CurrencyIconData.GetCurrencyIconByMoneyType((ClientMoneyType)cType); if (data != null) { iconName = data.smallIconName; } return(iconName); }
/// <summary> /// 价格 /// </summary> /// <param name="moneyType"></param> /// <param name="price"></param> private void SetPrice(GameCmd.MoneyType moneyType, string priceTxt) { if (null != this.costIcon && null != this.cost) { string currencyIcon = MallDefine.GetCurrencyIconNameByType(moneyType); UIManager.GetAtlasAsyn(currencyIcon, ref m_priceAsynSeed, () => { if (null != costIcon) { costIcon.atlas = null; } }, costIcon); this.cost.text = priceTxt; } }
/// <summary> /// 获取货币名称 /// </summary> /// <param name="mType"></param> /// <returns></returns> public string GetCurrencyNameByType(GameCmd.MoneyType mType) { LocalTextType key = LocalTextType.LocalText_None; switch (mType) { case GameCmd.MoneyType.MoneyType_Coin: key = LocalTextType.Local_TXT_YuanBao; break; case GameCmd.MoneyType.MoneyType_MoneyTicket: key = LocalTextType.Local_TXT_Penney; break; case GameCmd.MoneyType.MoneyType_Gold: key = LocalTextType.Local_TXT_Gold; break; case GameCmd.MoneyType.MoneyType_Reputation: key = LocalTextType.Local_TXT_Rep; break; case GameCmd.MoneyType.MoneyType_Score: key = LocalTextType.Local_TXT_JiFen; break; case GameCmd.MoneyType.MoneyType_AchievePoint: key = LocalTextType.Local_TXT_ChengJiuDian; break; case GameCmd.MoneyType.MoneyType_CampCoin: key = LocalTextType.Local_TXT_ZhanXun; break; case GameCmd.MoneyType.MoneyType_HuntingCoin: key = LocalTextType.Local_TXT_LieHun; break; case GameCmd.MoneyType.MoneyType_FishingMoney: key = LocalTextType.Local_TXT_YuBi; break; case GameCmd.MoneyType.MoneyType_TradeGold: key = LocalTextType.Local_TXT_YinLiang; break; } return(GetLocalText(key)); }
/// <summary> /// 价格 /// </summary> /// <param name="moneyType"></param> /// <param name="price"></param> public void SetPrice(GameCmd.MoneyType moneyType, uint price) { if (null != this.costIcon && null != this.cost) { string currencyIcon = MallDefine.GetCurrencyIconNameByType(moneyType); UIManager.GetAtlasAsyn(currencyIcon, ref m_BgaCASD, () => { if (null != costIcon) { costIcon.atlas = null; } }, costIcon); this.cost.text = "" + price; } }
/// <summary> /// 更新价格 /// </summary> private void UpdateCost() { MallDefine.MallLocalData current = CurrentMallData; if (null != m_trans_PurchaseCostGrid) { UICurrencyGrid currencyGrid = m_trans_PurchaseCostGrid.GetComponent <UICurrencyGrid>(); if (null != currencyGrid) { GameCmd.MoneyType moneyType = GameCmd.MoneyType.MoneyType_Coin; uint totalCost = 0; if (null != current) { moneyType = (GameCmd.MoneyType)current.LocalMall.moneyType; totalCost = (uint)((current.IsInDiscount) ? current.LocalMall.offPrice * purchaseNum : current.LocalMall.buyPrice * purchaseNum); } currencyGrid.SetGridData(new UICurrencyGrid.UICurrencyGridData( MallDefine.GetCurrencyIconNameByType((GameCmd.MoneyType)moneyType), totalCost)); } } }
public CurrencyData(GameCmd.MoneyType cType, uint num, ColorType clType = ColorType.JZRY_Txt_White) { this.num = num; this.cType = cType; this.colorType = clType; }
/// <summary> /// 设置辅助道具数据 /// </summary> /// <param name="baseId"></param> /// <param name="select"></param> /// <param name="num"></param> /// <param name="useDQ"></param> /// <param name="costNum"></param> /// <param name="mType"></param> public void SetGridData(uint baseId, bool select , uint num = 1, bool useDQ = false , uint costNum = 0, GameCmd.MoneyType mType = GameCmd.MoneyType.MoneyType_Gold) { bool cansee = false; this.m_uint_baseId = baseId; BaseItem baseItem = DataManager.Manager <ItemManager>().GetTempBaseItemByBaseID <BaseItem>(baseId); if (null != m_lab_name) { m_lab_name.text = baseItem.Name; } if (null != m_lab_des) { m_lab_des.text = DataManager.Manager <EquipManager>().GetEquipAssistMaterialDes(baseItem.BaseId); } int holdNum = DataManager.Manager <ItemManager>().GetItemNumByBaseId(baseId); if (null != m_lab_num) { cansee = !useDQ || !select; if (m_lab_num.gameObject.activeSelf != cansee) { m_lab_num.gameObject.SetActive(cansee); } if (cansee) { m_lab_num.text = ItemDefine.BuilderStringByHoldAndNeedNum((uint)holdNum, num); } } ResetInfoGrid(); SetIcon(true, baseItem.Icon); SetBorder(true, baseItem.BorderIcon); bool fightPowerUp = false; if (baseItem.IsEquip && DataManager.Manager <EquipManager>().IsEquipNeedFightPowerMask(baseItem.BaseId, out fightPowerUp)) { SetFightPower(true, fightPowerUp); } if (baseItem.IsMuhon) { SetMuhonMask(true, Muhon.GetMuhonStarLevel(baseItem.BaseId)); SetMuhonLv(true, Muhon.GetMuhonLv(baseItem)); } else if (baseItem.IsRuneStone) { SetRuneStoneMask(true, (uint)baseItem.Grade); } cansee = num > holdNum; SetNotEnoughGet(cansee); if (null != m_tg_select && m_tg_select.value != select) { m_tg_select.value = select; } if (null != m_ts_costDQ) { cansee = useDQ && select; if (m_ts_costDQ.gameObject.activeSelf != cansee) { m_ts_costDQ.gameObject.SetActive(cansee); } if (cansee) { UICurrencyGrid costGrid = m_ts_costDQ.GetComponent <UICurrencyGrid>(); if (null == costGrid) { costGrid = m_ts_costDQ.gameObject.AddComponent <UICurrencyGrid>(); } costGrid.SetGridData( new UICurrencyGrid.UICurrencyGridData(MallDefine.GetCurrencyIconNameByType(mType), costNum)); } } }
/// <summary> /// 设置格子数据 /// </summary> /// <param name="baseId">消耗材料id</param> /// <param name="num">(useDq为true代表替代点券数量,反之消耗数量)</param> /// <param name="useDq">是否使用货币代替</param> /// <param name="mType">useDq 为true 有效</param> public void SetGridData(uint baseId, uint num , bool useDq = false, uint costNum = 0 , GameCmd.MoneyType mType = GameCmd.MoneyType.MoneyType_Gold) { bool cansee = false; this.m_uint_baseId = baseId; BaseItem baseItem = DataManager.Manager <ItemManager>().GetTempBaseItemByBaseID <BaseItem>(baseId); if (null != mlabName) { mlabName.text = baseItem.Name; } int holdNum = 0; if (null != mlabNum) { holdNum = DataManager.Manager <ItemManager>().GetItemNumByBaseId(baseId); cansee = !useDq; if (mlabNum.gameObject.activeSelf != cansee) { mlabNum.gameObject.SetActive(cansee); } if (cansee) { if (num != 0) { mlabNum.text = ItemDefine.BuilderStringByHoldAndNeedNum( (uint)holdNum, num); } else { mlabNum.text = "0/0"; } } } ResetInfoGrid(); SetIcon(true, baseItem.Icon); SetBorder(true, baseItem.BorderIcon); SetBindMask(baseItem.IsBind); cansee = (holdNum < num || (num == 0 && holdNum == num)); SetNotEnoughGet(cansee); bool fightPowerUp = false; if (baseItem.IsEquip && DataManager.Manager <EquipManager>().IsEquipNeedFightPowerMask(baseItem.BaseId, out fightPowerUp)) { SetFightPower(true, fightPowerUp); } if (baseItem.IsMuhon) { SetMuhonMask(true, Muhon.GetMuhonStarLevel(baseItem.BaseId)); SetMuhonLv(true, Muhon.GetMuhonLv(baseItem)); } else if (baseItem.IsRuneStone) { SetRuneStoneMask(true, (uint)baseItem.Grade); } if (null != m_ts_costDQ) { cansee = useDq; if (m_ts_costDQ.gameObject.activeSelf != cansee) { m_ts_costDQ.gameObject.SetActive(cansee); } if (cansee) { UICurrencyGrid costGrid = m_ts_costDQ.GetComponent <UICurrencyGrid>(); if (null == costGrid) { costGrid = m_ts_costDQ.gameObject.AddComponent <UICurrencyGrid>(); } costGrid.SetGridData( new UICurrencyGrid.UICurrencyGridData(MallDefine.GetCurrencyIconNameByType(mType), costNum)); } } }