Пример #1
0
    void Init(bool bBack)
    {
        m_Materials = new List <EnchantMaterial>();
        for (int i = 0; i < 5; ++i)
        {
            EnchantMaterial material = EnchantMaterialPrefabManager.GetNewObject <EnchantMaterial>(m_MaterialGrid.transform, Vector3.zero);
            m_Materials.Add(material);

            material.Init(null);
        }
        m_MaterialGrid.Reposition();

        if (bBack == false && (m_Creature.Grade >= 6 && m_Creature.Enchant >= 5))
        {
            m_ToggleEnchant.Set(false);
            m_ToggleOverEnchant.Set(true);
            OverEnchantInit();
        }
        else if (bBack == true && m_ToggleOverEnchant.value == true)
        {
            OverEnchantInit();
        }
        else
        {
            EnchantInit();
        }
    }
Пример #2
0
    bool OnToggleCharacter(EnchantHero hero, bool bSelected)
    {
        EnchantMaterial material = m_Materials.Find(m => m.Creature == hero.Creature);

        if (material != null)
        {
            // exists
            material.Init(null);
            ReorderMaterials();
            RefreshInfo();
            return(true);
        }

        if (hero.Creature.IsLock == true)
        {
            Popup.Instance.ShowMessageKey("HeroEnchantConfirmLocked");
            return(false);
        }


        if (GetTotalEnchantPoint() >= 500)
        {
            Tooltip.Instance.ShowMessageKey("HeroEnchantLimit");
            return(false);
        }

        material = m_Materials.Find(m => m.Creature == null);
        if (material == null)
        {
            Tooltip.Instance.ShowMessageKey("HeroEnchantMaterialLimit");
            return(false);
        }

        PacketEnums.pe_Team team_type = TeamDataManager.Instance.CheckTeam(hero.Creature.Idx);
        if (team_type != PacketEnums.pe_Team.Invalid)
        {
            if (TeamDataManager.Instance.CheckTeam(hero.Creature.Idx, PacketEnums.pe_Team.PVP_Defense) == true)
            {
                Popup.Instance.ShowMessageKey("HeroEnchantConfirmTeamPVPDefense");
                return(false);
            }
            if (TeamDataManager.Instance.CheckAdventureTeam(hero.Creature.Idx) == true)
            {
                Popup.Instance.ShowMessageKey("HeroEnchantConfirmTeamInAdventure");
                return(false);
            }
            m_SelectEnchantHero = hero;
            Popup.Instance.ShowConfirmKey(TeamConfirm, "HeroEnchantConfirmTeam");
            return(false);
        }

        material.Init(hero.Creature, hero.Creature.CalculateEnchantPoint(m_Creature), new System.Action <Creature>(OnClickEnchantMaterial));
        RefreshInfo();

        return(true);
    }