Esempio n. 1
0
    public void Init(Item soul_stone)
    {
        if (soul_stone == null)
        {
            System.Array.ForEach(gameObject.GetComponentsInChildren(typeof(UIWidget), true), o => o.GetComponent <UIWidget>().enabled = false);
            gameObject.name = "dummy";
            return;
        }
        else
        {
            System.Array.ForEach(gameObject.GetComponentsInChildren(typeof(UIWidget), true), o => o.GetComponent <UIWidget>().enabled = true);
        }

        m_SoulStone = soul_stone;
        m_Info      = m_SoulStone.SoulStoneInfo;

        gameObject.name = m_Info.ID;

        if (m_Hero == null)
        {
            m_Hero = NGUITools.AddChild(gameObject, EnchantHeroPrefab).GetComponent <EnchantHero>();
            m_Hero.GetComponent <BoxCollider2D>().enabled = false;
        }

        m_Hero.InitSoulStone(m_Info);
        m_HeroName.text = m_Info.Creature.Name;

        m_Progress.value  = (float)m_SoulStone.Count / m_Info.LootCount;
        m_PieceCount.text = string.Format("{0}/{1}", m_SoulStone.Count, m_Info.LootCount);
        m_Notify.gameObject.SetActive(false);
    }
Esempio n. 2
0
    void InitSoulStoneInternal(SoulStoneInfo soulstone_info, int count)
    {
        Info = soulstone_info;
        InitCreatureInternal(soulstone_info.Creature, soulstone_info.Grade);

        m_Puzzle.SetActive(true);

        m_count.text = count.ToString();
        m_count.gameObject.SetActive(true);
    }
Esempio n. 3
0
    public void InitSoulStone(SoulStoneInfo info)
    {
        m_toggle.value       = false;
        m_toggle_dummy.value = false;
        Creature             = null;

        System.Array.ForEach(gameObject.GetComponentsInChildren(typeof(UIWidget), true), o => o.GetComponent <UIWidget>().enabled = true);

        gameObject.SetActive(true);
        InitInternal(info.Creature, info.Grade, "", "", info.Creature.ShowAttackType, true);

        OnToggleCharacter    = null;
        OnDeepTouchCharacter = null;

        var collider = GetComponent <BoxCollider2D>();

        collider.enabled = false;
    }
Esempio n. 4
0
 public void InitSoulStone(SoulStoneInfo soulstone_info, int count)
 {
     Clear();
     InitSoulStoneInternal(soulstone_info, count);
 }
Esempio n. 5
0
    override public void SetParams(bool is_new, object[] parms)
    {
        base.SetParams(is_new, parms);
        string creature_id = (string)parms[0];

        creature_grade = (short)parms[1];

        if (parms.Length > 2)
        {
            m_SoulStone     = parms[2] as Item;
            m_SoulStoneInfo = m_SoulStone.SoulStoneInfo;

            m_PieceProgress.gameObject.SetActive(true);

            m_PieceProgress.value = (float)m_SoulStone.Count / m_SoulStoneInfo.LootCount;
            m_PieceCount.text     = string.Format("{0}/{1}", m_SoulStone.Count, m_SoulStoneInfo.LootCount);
            m_ParticleCreatureSummon.gameObject.SetActive(m_SoulStone.Count > m_SoulStoneInfo.LootCount);
        }
        else
        {
            m_SoulStone     = null;
            m_SoulStoneInfo = null;
            m_PieceProgress.gameObject.SetActive(false);
            m_ParticleCreatureSummon.gameObject.SetActive(false);
        }
        m_btnSummon.gameObject.SetActive(m_SoulStone != null);

        string    spriteName = "000_hero_book";
        Texture2D sp         = AssetManager.LoadBG(spriteName);

        m_BG.material.mainTexture = sp;

        m_CreatureInfo = CreatureInfoManager.Instance.GetInfoByID(creature_id);
        m_CharacterContainer.Init(AssetManager.GetCharacterAsset(m_CreatureInfo.ID, "default"), UICharacterContainer.Mode.UI_Normal, "win");
        m_CharacterContainer.SetPlay(UICharacterContainer.ePlayType.Social);
        m_CharacterContainer.transform.localRotation = Quaternion.Euler(0f, 0f, 0f);
        m_LabelTitle.text         = m_CreatureInfo.Name;
        m_LabelDescription.text   = m_CreatureInfo.Desc;
        m_CreatureType.spriteName = string.Format("New_hero_info_type_{0}", m_CreatureInfo.ShowAttackType);
        //m_CreatureType.spriteName = string.Format("hero_info_type_{0}", m_CreatureInfo.ShowAttackType);

        if (m_CreatureInfo.TeamSkill != null)
        {
            if (m_TeamSkill.atlas.Contains(m_CreatureInfo.TeamSkill.ID) == true)
            {
                m_TeamSkill.spriteName = m_CreatureInfo.TeamSkill.ID;
            }
            else
            {
                m_TeamSkill.spriteName = "skill_default";
            }
        }
        m_TeamSkill.transform.parent.parent.gameObject.SetActive(m_CreatureInfo.TeamSkill != null);

        for (int i = 1; i <= m_Skills.Length; ++i)
        {
            SkillItem skill;

            if (m_ListSkill.Count > i - 1)
            {
                skill = m_ListSkill[i - 1];
            }
            else
            {
                skill = NGUITools.AddChild(m_Skills[i - 1], SkillItemPrefab).GetComponent <SkillItem>();
                m_ListSkill.Add(skill);
            }

            if (m_CreatureInfo.Skills.Count > i)
            {
                skill.Init(m_CreatureInfo.Skills[i]);
            }
            else
            {
                skill.gameObject.SetActive(false);
            }
        }

        for (int i = 0; i < m_Stars.Length; ++i)
        {
            m_Stars[i].SetSpriteActive(creature_grade > i);
            m_Stars[i].gameObject.SetActive(creature_grade > i);
        }
        m_GridStars.gameObject.SetActive(true);
        m_GridStars.Reposition();

        m_CharacterContainer.gameObject.SetActive(true);

        m_TagLabel.text = string.Empty;
        var tags = m_CreatureInfo.CreatureTags;

        foreach (string tag in tags)
        {
            m_TagLabel.text += string.Format("[url={0}]{1}[/url] ", "Tag_" + tag, Localization.Get("Tag_" + tag));
        }
    }