private void DoLoadListData(cmd_Crown_Gemstone_Product_Info data) { if (m_GenstoneChestFlopList == null) { return; } if (data.cobblestonGemstoneIDList.Length != data.windowGemstoneIDList.Length) { return; } int nGradeMax = 0; for (int i = 0; i < data.cobblestonGemstoneIDList.Length; ++i) { bool bWin = false; int nCobGemstoneID = data.cobblestonGemstoneIDList[i]; if (nCobGemstoneID <= 0) { continue; } SSchemeCrownGemstoneConfig config = CrownPageConfigPage.Instance.GetCrownPageGemstoneConfig(nCobGemstoneID); if (config == null) { continue; } nGradeMax = config.nGradeUpper > nGradeMax ? config.nGradeUpper : nGradeMax; for (int j = 0; j < data.windowGemstoneIDList.Length; ++j) { if (data.windowGemstoneIDList[i] == nCobGemstoneID) { bWin = true; break; } } m_GenstoneChestFlopList[i].UpdateItem(nCobGemstoneID, bWin, data.bOpenWinEnd > 0, data.cobStoneIDList[i], config); } OperationStateText.text = data.bOpenWinEnd > 0 ? "点击抽取其中一颗宝石" : "请选择开窗宝石"; if (nGradeMax >= 0 && nGradeMax < UDefines.sGemstoneGradeDesc.Length) { BestGemstoneTipText.text = "最高品级 : " + UDefines.sGemstoneGradeDesc[nGradeMax]; } int nOpenChestID = LogicDataCenter.prizeChestDataManager.OpenChestID; SSchemePrizeChestConfig chestConfig = ActorPrizeConfig.Instance.GetPrizeChestConfig(nOpenChestID); if (chestConfig != null) { ChestDescText.text = chestConfig.strChestName; } }
public Sprite GetCrownGemStoneSpriteByID(int nGemstoneID, int nSizeType = 1) { SSchemeCrownGemstoneConfig config = CrownPageConfigPage.Instance.GetCrownPageGemstoneConfig(nGemstoneID); if (config == null) { return(null); } return(GetCrownGemStoneSpriteByIconID(config.nGemstoneIconID)); }
public bool IsAppraisalSlotCanUse(int nSlotID, int nGemstoneDBID, bool bAppriasalDrag) { if (nSlotID < 0 || nSlotID >= m_appraisalData.gemStoneAppraisalSlotList.Length) { return(false); } if (m_appraisalData.gemStoneAppraisalSlotList[nSlotID] == nGemstoneDBID) { return(false); } if (m_gemStoneDic.ContainsKey(nGemstoneDBID)) { if (nSlotID == 0) { if (m_gemStoneDic[nGemstoneDBID].byGrade != (byte)EGEMSTONE_GRADE_TYPE.EGGT_OBSOLETEGRADE) { UIUtil.ShowSystemMessage(EMChatTipID.CHAT_TIP_CROWNS_GEMSTONE_APPRAISAL_MAIN_GRADE); return(false); } } else { int nMainGemstoneDBID = m_appraisalData.gemStoneAppraisalSlotList[0]; if (m_gemStoneDic.ContainsKey(nMainGemstoneDBID) && m_gemStoneDic[nMainGemstoneDBID].byGrade != (byte)EGEMSTONE_GRADE_TYPE.EGGT_OBSOLETEGRADE) { UIUtil.ShowSystemMessage(EMChatTipID.CHAT_TIP_CROWNS_GEMSTONE_APPRAISAL_MAIN_GRADE); return(false); } int curGemstoneDBID = m_appraisalData.gemStoneAppraisalSlotList[nSlotID]; if (bAppriasalDrag && !m_gemStoneDic.ContainsKey(curGemstoneDBID)) { UIUtil.ShowSystemMessage(EMChatTipID.CHAT_TIP_CROWNS_GEMSTONE_APPRAISAL_NOT_MAIN); return(false); } nMainGemstoneDBID = (bAppriasalDrag ? curGemstoneDBID : m_appraisalData.gemStoneAppraisalSlotList[0]); if (nMainGemstoneDBID == 0) { UIUtil.ShowSystemMessage(EMChatTipID.CHAT_TIP_CROWNS_GEMSTONE_APPRAISAL_NOT_MAIN); return(false); } SSchemeCrownGemstoneConfig mainStoneCfg = CrownPageConfigPage.Instance.GetCrownPageGemstoneConfig(m_gemStoneDic[nMainGemstoneDBID].nGemstoneID); if (mainStoneCfg == null) { return(false); } SSchemeCrownGemstoneConfig curStoneCfg = CrownPageConfigPage.Instance.GetCrownPageGemstoneConfig(m_gemStoneDic[nGemstoneDBID].nGemstoneID); if (curStoneCfg == null) { return(false); } if (curStoneCfg.nGradeUpper > mainStoneCfg.nGradeUpper) { UIUtil.ShowSystemMessage(EMChatTipID.CHAT_TIP_CROWNS_GEMSTONE_APPRAISAL_ASS_GRADE); return(false); } } } return(true); }
public void SetGemstoneToolTip() { if (m_tooltip) { this.gameObject.RemoveComponent <UTooltipTrigger>(); m_tooltip = null; } if (m_tooltip == null) { m_tooltip = this.gameObject.AddComponent <UTooltipTrigger>(ETooltipStyle.ETS_GemstoneItem); } if (m_tooltip == null) { return; } m_tooltip.backgroundTint = Color.grey; SSchemeCrownGemstoneConfig config = CrownPageConfigPage.Instance.GetCrownPageGemstoneConfig(m_nGemstoneID); if (config == null) { return; } int m_nGemstoneGrade = 1; if (m_nGemstoneGrade < 0 || m_nGemstoneGrade >= UDefines.sGemstoneGradeDesc.Length) { return; } m_tooltip.SetText("GemstoneName", config.sGemstoneName); m_tooltip.SetText("GemstoneGrade", UDefines.sGemstoneGradeDesc[m_nGemstoneGrade]); Sprite gemstoneSprite = LogicDataCenter.crownPageDataManager.GetCrownGemStoneSpriteByIconID(config.nGemstoneIconID); m_tooltip.SetImage("GemstoneIcon", gemstoneSprite); string sGemstonePropertyHeadText = ""; string sGemstonePropertyDescText = ""; if (m_nGemstoneGrade > 0 && m_nGemstoneGrade < config.szPropertyDescArray.Length) { string[] sCrownPropertyIDArray = ((string)(config.szPropertyArray[m_nGemstoneGrade])).Split(';'); int nPropertyID = 0; string sPropertyDesc = ""; int nTotalPower = 0; foreach (string sPropertyID in sCrownPropertyIDArray) { int.TryParse(sPropertyID, out nPropertyID); SSchemeCrownEffectConfig effectConfig = CrownPageConfigPage.Instance.GetCrownPageEffectConfig(nPropertyID); if (effectConfig == null) { continue; } sPropertyDesc += effectConfig.sGemstoneDesc + "\n"; nTotalPower += effectConfig.nPropertyValue; } sGemstonePropertyHeadText = "威力 :" + nTotalPower; sGemstonePropertyDescText = sPropertyDesc; } m_tooltip.SetText("GemstonePropertyDesc", sGemstonePropertyDescText); m_tooltip.SetText("GemstonePropertyHead", sGemstonePropertyHeadText); if (m_nGemstoneGrade == (int)EGEMSTONE_GRADE_TYPE.EGGT_OBSOLETEGRADE) { //GemstoneExpImage.fillAmount = 1; m_tooltip.SetText("GemstoneExp", config.nExpUpper + "/" + config.nExpUpper); } else { string[] expArray = config.szExpArray.Split(';'); int nNextExp = 0; int nGrade = m_nGemstoneGrade; if (nGrade - 1 >= 0 && nGrade - 1 < expArray.Length) { int.TryParse(expArray[nGrade - 1], out nNextExp); nNextExp = nNextExp <= 0 ? 1 : nNextExp; // GemstoneExpImage.fillAmount = ((float)data.nExp / nNextExp); } m_tooltip.SetText("GemstoneExp", 0 + "/" + nNextExp); } int nExteriorID = 0; if (m_nGemstoneGrade >= 0 && m_nGemstoneGrade < config.nExteriorIDArray.Length) { nExteriorID = config.nExteriorIDArray[m_nGemstoneGrade]; } string sGemstoneExteriorHeadText = ""; string sGemstoneExteriorDescText = ""; SSchemeCrownGemstoneExteriorConfig exteriorConfig = CrownPageConfigPage.Instance.GetCrownPageExteriorConfig(nExteriorID); if (exteriorConfig != null) { string sSymbols = "\n"; sGemstoneExteriorHeadText = "颜值 :" + exteriorConfig.nFacescore; string sExteriorDesc = "色泽 :" + exteriorConfig.nColours + sSymbols + "透光 :" + exteriorConfig.nLight + sSymbols + "重量 :" + exteriorConfig.nWeight; sGemstoneExteriorDescText = sExteriorDesc; } m_tooltip.SetText("GemstoneExteriorDesc", sGemstoneExteriorDescText); m_tooltip.SetText("GemstoneExteriorHead", sGemstoneExteriorHeadText); }
public void UpdateItem(int nCobGemstoneID, bool bWin, bool bWinEnd, int cobStoneID, SSchemeCrownGemstoneConfig config) { SSchemeCrownCobstoneExteriorConfig cobConfig = CrownPageConfigPage.Instance.GetCrownPageCobConfig(cobStoneID); if (cobConfig == null) { return; } this.FlopToggle.interactable = true; EndFrameObj.SetActive(false); m_nGemstoneID = nCobGemstoneID; m_nCobstoneID = cobStoneID; CobGemstoneImage.sprite = LogicDataCenter.crownPageDataManager.GetCrownGemStoneSpriteByIconID(cobConfig.nCobIconID, 2); WinGensoneImage.sprite = LogicDataCenter.crownPageDataManager.GetCrownGemStoneSpriteByIconID(config.nGemstoneIconID, 1); SeletedGemsotneImage.sprite = LogicDataCenter.crownPageDataManager.GetCrownGemStoneSpriteByIconID(config.nGemstoneIconID, 1); if (bWin) { WinGensoneImage.gameObject.SetActive(true); } if (bWinEnd) { EnterCobModel(); } else { EnterWinModel(); } SetCobstoneToolTip(); }