示例#1
0
    public void HideUiWhenGameOver()
    {
        GameObject go = null;
        Transform  ts = this.transform.Find("HeroPanel(Clone)");

        if (ts != null)
        {
            go = ts.gameObject;
        }
        if (go != null)
        {
            HeroPanel heroPanel = go.GetComponent <HeroPanel>();
            heroPanel.Hide();
        }
        ts = null;
        go = null;
        ts = this.transform.Find("SkillBar(Clone)");
        if (ts != null)
        {
            go = ts.gameObject;
            SkillBar skillBar = go.GetComponent <SkillBar>();
            if (skillBar != null)
            {
                skillBar.Hide();
            }
        }
        ts = null;
        go = null;
        ts = this.transform.Find("HeroChange(Clone)");
        if (ts != null)
        {
            go = ts.gameObject;
            NGUITools.SetActive(go, false);
        }
    }
示例#2
0
    private GameObject GetHeroPanelById(string id)
    {
        GameObject go    = null;
        Transform  trans = null;

        if (this.transform.parent == null)
        {
            return(go);
        }
        for (int index = 0; index < this.transform.parent.childCount; ++index)
        {
            trans = this.transform.parent.GetChild(index);
            if (trans == null)
            {
                continue;
            }
            go = trans.gameObject;
            HeroPanel panel = go.GetComponent <HeroPanel>();
            if (panel != null && go.name == "HeroPanel(Clone)")
            {
                if (id == panel.GetId())
                {
                    return(go);
                }
            }
        }
        return(null);
    }
示例#3
0
 public void SelectHeroUnit(FormationUnit heroUnit)
 {
     SelectedUnit = heroUnit;
     SelectedHero = heroUnit.Character as Hero;
     BannerPanel.UpdateHero();
     HeroPanel.UpdateHero();
 }
示例#4
0
 public void Replace(PlayerUnit unit, HeroPanel heropanel)
 {
     Deselect();
     this.unit   = unit;
     heroRef     = heropanel;
     icon.sprite = unit.GetComponent <CharacterStats>().unitClass.icon;
 }
 public void PlayerPanelUpdate()
 {
     foreach (var v in PlayerPanels.Values)
     {
         v.PanelUpdate(Game);
     }
     HeroPanel.UpdateItems();
 }
示例#6
0
 public void RemoveUnit()
 {
     Deselect();
     unit = null;
     PlayerController.instance.RemoveFromParty(partyIndex);
     heroRef     = null;
     icon.sprite = null;
 }
    private void CreateHeroPanel()
    {
        heroPanel      = Instantiate(heroPanel) as GameObject;
        heroPanelStats = heroPanel.GetComponent <HeroPanel>();
        heroPanelStats.heroName.text = hero.stats.myName;
        heroPanelStats.heroHp.text   = "HP: " + hero.stats.actualHealth + "/" + hero.stats.maxHealth;
        heroPanelStats.heroMp.text   = "MP: " + hero.stats.actualMana + "/" + hero.stats.maxMana;

        heroPanel.transform.SetParent(heroPanelSpacer, false);
    }
示例#8
0
 public Hero(int index)
 {
     _core         = Camera.main.GetComponent <MainCore>();
     _battleCon    = _core._battleCon;
     _heroCom      = _core._heroCom;
     _buffCon      = _core._buffCon;
     _selectATKCon = _core._selectATKCon;
     _avatar       = _heroCom._heroAvatarList[index];
     _anim         = _avatar.GetComponent <Animator>();
     slotId        = index;
 }
示例#9
0
    public void RemoveHeroFromParty(PlayerUnit unit)
    {
        HeroPanel panel = FindHeroPanel(unit);

        if (panel == null)
        {
            return;
        }

        panel.RemoveFromParty();
    }
示例#10
0
    public void AddHeroToParty(PlayerUnit unit, PartyFrames frame)
    {
        HeroPanel panel = FindHeroPanel(unit);

        if (panel == null)
        {
            return;
        }

        panel.AddToParty(frame);
    }
 private void Awake()
 {
     _core                     = Camera.main.GetComponent <MainCore>();
     _cal                      = _core._cal;
     _mapCon                   = _core._mapCon;
     _monCom                   = _core._monCom;
     _heroCom                  = _core._heroCom;
     _buffCon                  = _core._buffCon;
     _selectATKCon             = _core._selectATKCon;
     _buffCon._buffListPlayer  = new List <Buff>();
     _buffCon._buffListMonster = new List <Buff>();
 }
示例#12
0
    public void AddUnit(PlayerUnit unit, HeroPanel heropanel)
    {
        if (this.unit != null)
        {
            Debug.Log("There's already a unit in this slot(" + partyIndex + ")");
            RemoveUnit();
        }
        this.unit = unit;
        heroRef   = heropanel;
        PlayerController.instance.AddToParty(unit, partyIndex);
        icon.sprite = unit.GetComponent <CharacterStats>().unitClass.icon;
//        Debug.Log("Unit added to party");
    }
    public void Open(HeroPanel hero)
    {
        if (isOpen && this.hero != null)
        {
            this.hero.Deselect();
        }

        this.hero                  = hero;
        unit                       = hero.unit;
        canvasGroup.alpha          = 1;
        isOpen                     = true;
        canvasGroup.interactable   = true;
        canvasGroup.blocksRaycasts = true;
        Setup();
    }
示例#14
0
    private void ChangeHeroPanel()
    {
        GameObject newHeroPanel = null;
        GameObject oldHeroPanel = null;

        oldHeroPanel = GetHeroPanelById("first");
        if (oldHeroPanel == null)
        {
            return;
        }
        if (!m_IsHeroPanelInitial)
        {
            m_HeroPanelOriginalPos = oldHeroPanel.transform.localPosition;
            m_IsHeroPanelInitial   = true;
        }
        if (this.transform.parent != null)
        {
            newHeroPanel = GetHeroPanelById("second");
            if (newHeroPanel == null)
            {
                newHeroPanel = DashFire.ResourceSystem.GetSharedResource("UI/HeroPanel") as GameObject;
                if (null == newHeroPanel)
                {
                    return;
                }
                if (this.transform.parent != null)
                {
                    newHeroPanel = NGUITools.AddChild(this.transform.parent.gameObject, newHeroPanel);
                    if (null != newHeroPanel)
                    {
                        newHeroPanel.transform.localPosition = oldHeroPanel.transform.localPosition;
                        HeroPanel panel = newHeroPanel.GetComponent <HeroPanel>();
                        if (null != panel)
                        {
                            panel.SetId("first");
                        }
                    }
                }
            }
        }
        if (null == newHeroPanel)
        {
            return;
        }
        SetPortrait(newHeroPanel);
        SetHeroPanelTween(oldHeroPanel, newHeroPanel);
        m_OldPanel = oldHeroPanel;
    }
示例#15
0
    public void RemoveHero(PlayerUnit unit)
    {
        if (currentUnits <= 0)
        {
            return;
        }

        HeroPanel panel = FindHeroPanel(unit);

        if (panel != null)
        {
            float heightToSubtract = HeroPanel.GetComponent <RectTransform>().rect.height;
            selfRect.sizeDelta = new Vector2(0, selfRect.rect.height - heightToSubtract);
            Destroy(panel.gameObject);
            currentUnits--;
        }
    }
示例#16
0
 public void UpdateSelection()
 {
     BannerPanel.UpdateHero();
     HeroPanel.UpdateHero();
 }
示例#17
0
        /// <summary>
        /// 处理消息
        /// </summary>
        /// <param name="notification"></param>
        public override void HandleNotification(Notification notification)
        {
            Debug.Log(NAME + " : HandleNotification :: " + notification.name);
            switch (notification.name)
            {
            case NotificationList.GET_USER_HERO_LIST:     // 获取用户英雄列表
                heroProxy.GetUserHeroList();
                break;

            case NotificationList.GET_USER_HERO_LIST + SUCCESS:    // 获取用户英雄列表成功
                // 如何找到heroPanel
                HeroPanel heroPanel = UIManager.GetPanel <HeroPanel>();
                // UpdateHeroList
                heroPanel.UpdateHeroList(notification.data as ArrayList);
                break;

            case NotificationList.UPDATE_HERO_DATA:    // 更新英雄数据
                HeroStatusBar statusBar = UIManager.GetPanel <HeroStatusBar>("MainPanel/HeroStatusBar");
                statusBar.UpdateData();
                break;

            case SHOW + NotificationList.HERO_STAGE:     // 显示HeroStage
                // 隐藏HeroPanel
                UIManager.TogglePanel(Panels.HeroPanel, false);
                // 隐藏MainObjects
                UIManager.ToggleObjects(Tags.MainObjects, false);
                // 显示HeroObjects
                UIManager.ToggleObjects(Tags.HeroObjects, true);
                heroStage.Show(notification.data + "");
                break;

            case HIDE + NotificationList.HERO_STAGE:     // 隐藏HeroStage
                // 显示MainObjects
                UIManager.ToggleObjects(Tags.MainObjects, true);
                //隐藏 HeroObjects
                UIManager.ToggleObjects(Tags.HeroObjects, false);
                break;

            case NotificationList.GET_HERO_LIST:     // 获取系统英雄列表
                heroProxy.GetHeroList();
                break;

            case NotificationList.GET_HERO_LIST + SUCCESS:     // 获取系统英雄列表成功
                Debug.Log("SwitchHero " + notification.data);
                heroStage.map = notification.data as Dictionary <string, HeroVO>;
                heroStage.SwitchHero("Wizard");
                break;

            case NotificationList.SWITCH_HERO:    // 切换英雄
                heroStage.SwitchHero(notification.data + "");
                break;

            case NotificationList.CREATE_HERO:     // 创建英雄
                heroProxy.CreateHero(notification.data as UserHeroVO);
                break;

            case NotificationList.CREATE_HERO + SUCCESS:     // 创建英雄成功
                SendNotification(HIDE + NotificationList.HERO_STAGE);
                break;

            case NotificationList.CREATE_HERO + FAILURE:     // 创建英雄失败
                Alert.Show("出错了", notification.data + "");
                break;

            default:
                Debug.LogError(NAME + "未处理的消息:" + notification.name);
                break;
            }
        }
示例#18
0
    public Character GetHeroFromCsvLine(String csvLine)
    {
        Character hero;

        String[] values;

        values = csvLine.Split(',');

        hero = new Character()
        {
            power           = Convert.ToInt32(values[0]),
            stamina         = Convert.ToInt32(values[1]),
            agility         = Convert.ToInt32(values[2]),
            critChance      = Convert.ToSingle(values[3]),
            critDamage      = Convert.ToSingle(values[4]),
            dsChance        = Convert.ToSingle(values[5]),
            empowerChance   = Convert.ToSingle(values[6]),
            blockChance     = Convert.ToSingle(values[7]),
            evadeChance     = Convert.ToSingle(values[8]),
            deflectChance   = Convert.ToSingle(values[9]),
            absorbChance    = Convert.ToSingle(values[10]),
            damageReduction = Convert.ToSingle(values[11]),
            powerRunes      = Convert.ToSingle(values[12]),
            staminaRunes    = Convert.ToSingle(values[13]),
            agilityRunes    = Convert.ToSingle(values[14]),
            metaRune        = HeroPanel.GetMetaRuneFromString(values[15]),
            weapon          = HeroPanel.GetWeaponFromString(values[16]),
            petName         = HeroPanel.GetPetFromString(values[17]),
            PetLevel        = HeroPanel.GetPetLevelFromString(values[18]),
            petProcType     = HeroPanel.GetProcTypeFromString(values[19]),
            //necrosisBonus = Convert.ToBoolean(values[20]),
            //hysteriaBonus = Convert.ToBoolean(values[21]),
            //nightVisageBonus = Convert.ToBoolean(values[22]),
            //consumptionBonus = Convert.ToBoolean(values[23]),
            //decayBonus = Convert.ToBoolean(values[24]),
            //aresBonus = Convert.ToBoolean(values[25]),
            //bushidoBonus = Convert.ToBoolean(values[26]),
            //lunarBonus = Convert.ToBoolean(values[27]),
            //unity = Convert.ToBoolean(values[28]),
            //divinityBonus = HeroPanel.GetDivinityBonusFromString(values[29]),
            //obliterationBonus = HeroPanel.GetOblitBonusFromString(values[30]),
            //maruBonus = HeroPanel.GetMarutBonusFromString(values[31]),
            //conductionBonus = HeroPanel.GetConducBonusFromString(values[32]),
            //illustriousBonus = HeroPanel.GetIllustBonusFromString(values[33]),
            setArray = new Set[]
            {
                new Set(HeroPanel.GetSetBonusFromString(values[20]), Convert.ToInt32(values[21])),
                new Set(HeroPanel.GetSetBonusFromString(values[22]), Convert.ToInt32(values[23])),
                new Set(HeroPanel.GetSetBonusFromString(values[24]), Convert.ToInt32(values[25]))
            },
            mythicArray = new MythicBonus[]
            {
                HeroPanel.GetMythicBonusFromString(values[26]),
                HeroPanel.GetMythicBonusFromString(values[27]),
                HeroPanel.GetMythicBonusFromString(values[28]),
                HeroPanel.GetMythicBonusFromString(values[29]),
                HeroPanel.GetMythicBonusFromString(values[30]),
                HeroPanel.GetMythicBonusFromString(values[31]),
            },
            gateKeeperBonus = Convert.ToBoolean(values[32])
        };


        return(hero);
    }