public static void OpenForm(GameObject form) { CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .instance.GetMasterRoleInfo(); int amount = GameDataMgr.addedSkiilDatabin.Count(); CUIToggleListScript component = form.transform.Find("Panel_Grid/ToggleList").GetComponent <CUIToggleListScript>(); component.SetElementAmount(amount); CUIListElementScript elemenet = null; CUIEventScript script3 = null; ResSkillUnlock dataByIndex = null; ResSkillCfgInfo dataByKey = null; uint key = 0; bool bActive = true; form.transform.Find("Panel_TopBg/LevelText").GetComponent <Text>().text = (masterRoleInfo == null) ? Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_2", new string[] { "1" }) : Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_2", new string[] { masterRoleInfo.PvpLevel.ToString() }); for (int i = 0; i < amount; i++) { elemenet = component.GetElemenet(i); script3 = elemenet.GetComponent <CUIEventScript>(); dataByIndex = GameDataMgr.addedSkiilDatabin.GetDataByIndex(i); key = dataByIndex.dwUnlockSkillID; dataByKey = GameDataMgr.skillDatabin.GetDataByKey(key); bActive = (masterRoleInfo == null) || (masterRoleInfo.PvpLevel < dataByIndex.wAcntLevel); if (dataByKey != null) { string prefabPath = string.Format("{0}{1}", CUIUtility.s_Sprite_Dynamic_Skill_Dir, Utility.UTF8Convert(dataByKey.szIconPath)); Image image = elemenet.transform.Find("Icon").GetComponent <Image>(); image.SetSprite(prefabPath, form.GetComponent <CUIFormScript>(), true, false, false); script3.m_onClickEventID = enUIEventID.AddedSkill_GetDetail; script3.m_onClickEventParams.tag = dataByIndex.wAcntLevel; elemenet.transform.Find("SkillNameTxt").GetComponent <Text>().text = Utility.UTF8Convert(dataByKey.szSkillName); elemenet.transform.Find("Lock").gameObject.CustomSetActive(bActive); image.color = !bActive ? Color.white : CUIUtility.s_Color_GrayShader; if (bActive) { string[] args = new string[] { dataByIndex.wAcntLevel.ToString() }; Utility.GetComponetInChild <Text>(elemenet.gameObject, "Lock/Text").text = Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_3", args); } } else { DebugHelper.Assert(false, string.Format("ResSkillCfgInfo[{0}] can not be found!", key)); } } dataByIndex = GameDataMgr.addedSkiilDatabin.GetDataByIndex(0); if (dataByIndex != null) { component.SelectElement(0, true); OnRefresh(form, dataByIndex.wAcntLevel); } }
public static void OpenForm(GameObject form) { CRoleInfo masterRoleInfo = Singleton <CRoleInfoManager> .instance.GetMasterRoleInfo(); int num = GameDataMgr.addedSkiilDatabin.Count(); CUIToggleListScript component = form.transform.Find("Panel_Grid/ToggleList").GetComponent <CUIToggleListScript>(); component.SetElementAmount(num); form.transform.Find("Panel_TopBg/LevelText").GetComponent <Text>().set_text((masterRoleInfo != null) ? Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_2", new string[] { masterRoleInfo.PvpLevel.ToString() }) : Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_2", new string[] { "1" })); ResSkillUnlock dataByIndex; for (int i = 0; i < num; i++) { CUIListElementScript elemenet = component.GetElemenet(i); CUIEventScript component2 = elemenet.GetComponent <CUIEventScript>(); dataByIndex = GameDataMgr.addedSkiilDatabin.GetDataByIndex(i); uint dwUnlockSkillID = dataByIndex.dwUnlockSkillID; ResSkillCfgInfo dataByKey = GameDataMgr.skillDatabin.GetDataByKey(dwUnlockSkillID); bool flag = masterRoleInfo == null || masterRoleInfo.PvpLevel < (uint)dataByIndex.wAcntLevel; if (dataByKey != null) { string prefabPath = string.Format("{0}{1}", CUIUtility.s_Sprite_Dynamic_Skill_Dir, Utility.UTF8Convert(dataByKey.szIconPath)); Image component3 = elemenet.transform.Find("Icon").GetComponent <Image>(); component3.SetSprite(prefabPath, form.GetComponent <CUIFormScript>(), true, false, false, false); component2.m_onClickEventID = enUIEventID.AddedSkill_GetDetail; component2.m_onClickEventParams.tag = (int)dataByIndex.wAcntLevel; elemenet.transform.Find("SkillNameTxt").GetComponent <Text>().set_text(Utility.UTF8Convert(dataByKey.szSkillName)); elemenet.transform.Find("Lock").gameObject.CustomSetActive(flag); component3.set_color(flag ? CUIUtility.s_Color_GrayShader : Color.white); if (flag) { Utility.GetComponetInChild <Text>(elemenet.gameObject, "Lock/Text").set_text(Singleton <CTextManager> .instance.GetText("Added_Skill_Common_Tips_3", new string[] { dataByIndex.wAcntLevel.ToString() })); } if ((ulong)dwUnlockSkillID == (ulong)((long)CAddSkillSys.SendSkillId)) { CUICommonSystem.SetObjActive(elemenet.transform.FindChild("HelpBtn"), true); if (masterRoleInfo.PvpLevel >= (uint)dataByIndex.wAcntLevel) { Singleton <CUINewFlagSystem> .GetInstance().AddNewFlag(elemenet.gameObject, enNewFlagKey.New_SendSkill_V14, enNewFlagPos.enTopRight, 1f, 0f, 0f, enNewFlagType.enNewFlag); } } } else { DebugHelper.Assert(false, string.Format("ResSkillCfgInfo[{0}] can not be found!", dwUnlockSkillID)); } } dataByIndex = GameDataMgr.addedSkiilDatabin.GetDataByIndex(0); if (dataByIndex != null) { component.SelectElement(0, true); CAddSkillView.OnRefresh(form, dataByIndex.wAcntLevel); } if (CSysDynamicBlock.bLobbyEntryBlocked) { CUIToggleListScript component4 = form.transform.FindChild("Panel_Grid/ToggleList").GetComponent <CUIToggleListScript>(); CUIListElementScript elemenet2 = component4.GetElemenet(10); if (elemenet2) { elemenet2.gameObject.CustomSetActive(false); } Transform transform = form.transform.FindChild("Skill-Send-Test"); if (transform != null) { transform.gameObject.CustomSetActive(false); } } }