Beispiel #1
0
 private void ClearChara()
 {
     //显示清除
     if (null != _charaViewDic)
     {
         foreach (uint key in _charaViewDic.Keys)
         {
             GameObject.Destroy(_charaViewDic[key]);
         }
         _charaViewDic.Clear();
         _charaViewDic = null;
     }
     if (_charaDic != null)
     {
         _charaDic.Clear();
         _charaDic = null;
     }
     //数据清除
     if (_charaList != null)
     {
         for (int i = 0; i < _charaList.Count; i++)
         {
             CharaActorInfo actorInfo = _charaList[i] as CharaActorInfo;
             if (null != actorInfo)
             {
                 actorInfo.Destroy();
             }
         }
         _charaList.Clear();
         _charaList = null;
     }
 }
Beispiel #2
0
    //草丛刷新
    private void OnUpdateGrassId(Notification data)
    {
        uint           battleId   = (uint)data.param;
        CharaActorInfo info       = ZTBattleSceneManager.GetInstance().GetCharaById(battleId);
        ICharaBattle   battleInfo = info as ICharaBattle;

        if (null == info || null == battleInfo)
        {
            return;
        }
        int GrassId = MyPlayer.GrassId;

        if (battleInfo.GrassId > 0)
        {
            if (battleInfo.Camp == MyPlayer.Camp || GrassId == battleInfo.GrassId)
            {
                //半透明
                info.ChangeOpacity(0.5f);
            }
            else
            {
                info.ChangeOpacity(0);
                //透明
            }
            return;
        }
        info.ChangeOpacity(1.0f);
    }
Beispiel #3
0
 public override bool SetInfo(CharaActorInfo info)
 {
     if (base.SetInfo(info))
     {
         _playerInfo = info as CharaPlayerInfo;
         return(true);
     }
     return(false);
 }
Beispiel #4
0
 void OnDestroy()
 {
     if (null != _charaActor)
     {
         RemoveEvent();
         _charaActor = null;
         _fightInfo  = null;
         _battleInfo = null;
     }
 }
Beispiel #5
0
    public override bool SetInfo(CharaActorInfo info)
    {
        if (base.SetInfo(info))
        {
            _battleInfo = info as PlayerBattleInfo;
#if UNITY_EDITOR
            UpdateColliderView();
#endif
            return(true);
        }
        return(false);
    }
Beispiel #6
0
 //地图中心刷新
 public void OnUpdateCamera(Notification data)
 {
     //血条ui刷新
     for (int i = 0; i < _charaList.Count; i++)
     {
         CharaActorInfo info  = _charaList[i];
         ICharaBattle   bInfo = info as ICharaBattle;
         if (null != bInfo)
         {
             info.UpdatePos(bInfo.MovePos);
         }
     }
 }
Beispiel #7
0
    public virtual bool SetInfo(CharaActorInfo info)
    {
        if (null != _charaInfo && null != info && _charaInfo.AnimaId == info.AnimaId) return false;
        RemoveEvent();
        this.ClearEffect();
        _charaInfo = info;

        if (null == _charaInfo) return true;

        _effectCounter = new EffectCounter();
        InitEvent();
        return true;
    }
Beispiel #8
0
    private void CreateBattleHead(CharaActorInfo info)
    {
        ICharaBattle battleInfo = info as ICharaBattle;

        if (null == battleInfo)
        {
            return;
        }

        GameObject go = GameObject.Instantiate(_battleHeadGo);

        go.transform.SetParent(_hpTransform, false);
        go.transform.localScale = new Vector3(1, 1, 1);
        go.GetComponent <BattleHead>().SetInfo(info);
    }
Beispiel #9
0
    private void OnAddUIHead(Notification data)
    {
        CharaActorInfo info = (CharaActorInfo)data.param;

        if (null != info)
        {
            if (null != _battleHeadGo)
            {
                CreateBattleHead(info);
            }
            else
            {
                AssetManager.LoadAsset(PathManager.GetFullPathByName("BattleUIPrefab", "BattleHead.prefab"), (Object target, string path) =>
                {
                    _battleHeadGo = target as GameObject;
                    if (null != _battleHeadGo)
                    {
                        CreateBattleHead(info);
                    }
                });
            }
        }
    }
Beispiel #10
0
    public void SetInfo(CharaActorInfo info)
    {
        if (null == _slider)
        {
            return;
        }
        if (null != _charaActor)
        {
            RemoveEvent();
        }
        _charaActor = info;
        _fightInfo  = info as ICharaFight;
        _battleInfo = info as ICharaBattle;
        if (null == _charaActor || null == _fightInfo || null == _battleInfo)
        {
            return;
        }

        _slider.maxValue = _fightInfo.MaxHp;
        _slider.value    = _fightInfo.Hp;
        _hpText.TextStr  = _fightInfo.Hp.ToString() + "/" + _fightInfo.MaxHp.ToString();
        _name.TextStr    = "测试";
        InitEvent();
    }