public override bool Uninit(bool bBack) { heroItemPrefabManager.Clear(); EnchantMaterialPrefabManager.Clear(); EnchantHeroPrefabManager.Clear(); DungeonHeroPrefabmanager.Clear(); return(true); }
void EnchantInit() { m_Hero = EnchantHeroPrefabManager.GetNewObject <EnchantHero>(m_EnchantHeroIndicator.transform, Vector3.zero); m_Hero.Init(m_Creature, null, null); m_SortInfo.Init(OnSorted, eCreatureSort.Grade, true); m_EnchantGold = m_Creature.EnchantGold; var event_info = EventHottimeManager.Instance.GetInfoByID("hero_enchant_discount"); if (event_info != null) { m_EnchantGold = (int)(m_EnchantGold * event_info.Percent); } var material_creatures = m_MaterialCreatures != null?m_MaterialCreatures.ToList() : null; InitHeroItem(); if (material_creatures != null && material_creatures.Count > 0) { for (int i = 0; i < m_Materials.Count; ++i) { if (i < material_creatures.Count) { Creature material_creature = material_creatures[i]; m_Heroes.Find(h => h.Creature == material_creature).m_toggle.value = true; m_Materials[i].Init(material_creature, material_creature.CalculateEnchantPoint(m_Creature), new System.Action <Creature>(OnClickEnchantMaterial)); } else { m_Materials[i].Init(null); } } } m_HelpTitle.gameObject.SetActive(false); m_HelpDesc.gameObject.SetActive(false); InitInfo(); }
void OverEnchantInit() { if (m_Hero == null) { m_Hero = EnchantHeroPrefabManager.GetNewObject <EnchantHero>(m_EnchantHeroIndicator.transform, Vector3.zero); } m_Hero.Init(m_Creature, null, null); EnchantHeroPrefabManager.Clear(); DungeonHeroPrefabmanager.Clear(); m_OverEnchantBase = EnchantHeroPrefabManager.GetNewObject <EnchantHero>(m_OverEnchanteHeroIndicator.transform, Vector3.zero); m_OverEnchantBase.Init(m_Creature); m_OverEnchantMaterial = EnchantHeroPrefabManager.GetNewObject <EnchantHero>(m_OverEnchantMaterialIndicator.transform, Vector3.zero); m_OverEnchantMaterial.InitDummy(null, m_Creature.Grade, 1, m_Creature.Enchant); m_OverEnchantResult = DungeonHeroPrefabmanager.GetNewObject <DungeonHero>(m_OverEnchantResultIndicator.transform, Vector3.zero); m_OverEnchantPrice.text = "0"; heroItemPrefabManager.Clear(); if (IsPossibleOverEnchant() == true && m_Creature.Enchant < 10) { m_Heroes = new List <EnchantHero>(); var materials = m_SortInfo.GetFilteredCreatures(c => c.Idx != m_Creature.Idx).Where(c => c.Grade >= 6 && c.Enchant >= m_Creature.Enchant); if (materials.Count() > 0) { foreach (Creature creature in materials) { if (creature.Grade == 0) { continue; } EnchantHero item = heroItemPrefabManager.GetNewObject <EnchantHero>(m_HeroGrid.transform, Vector3.zero); item.Init(creature, OnToggleOverEnchantMaterials, null); m_Heroes.Add(item); } for (int i = 0; i < 5; ++i) { EnchantHero item = heroItemPrefabManager.GetNewObject <EnchantHero>(m_HeroGrid.transform, Vector3.zero); item.Init(null); } m_HeroGrid.Reposition(); m_HeroScroll.ResetPosition(); RefreshInfo(); m_HelpTitle.gameObject.SetActive(false); m_HelpDesc.gameObject.SetActive(false); m_OverEnchantResult.InitDummy(m_Creature.Info, m_Creature.Grade, m_Creature.Level, (short)(m_Creature.Enchant + 1), m_Creature.Info.ShowAttackType); return; } else { m_HelpTitle.gameObject.SetActive(true); m_HelpDesc.gameObject.SetActive(true); m_HelpTitle.text = Localization.Get("OverEnchant_NoMatarials"); m_HelpDesc.text = Localization.Get("Help_OverEnchant"); } } else { m_HelpTitle.gameObject.SetActive(true); m_HelpDesc.gameObject.SetActive(true); m_HelpTitle.text = Localization.Get("OverEnchant_NotPrepare"); m_HelpDesc.text = Localization.Get("Help_OverEnchant"); } if (m_Creature.Enchant >= 10) { m_OverEnchantResult.InitDummy(m_Creature.Info, m_Creature.Grade, m_Creature.Level, 10, m_Creature.Info.ShowAttackType); } else { m_OverEnchantResult.InitDummy(m_Creature.Info, m_Creature.Grade, m_Creature.Level, (short)(m_Creature.Enchant + 1), m_Creature.Info.ShowAttackType); } }