コード例 #1
0
    public void InitData(EnemyNode enemy)
    {
        this.enemy = enemy;
        TweenMove move = gameObject.AddComponent<TweenMove>();
        move.from = transform.position;
        move.to = enemy.transform;
        move.duration = 0.5f;
        move.PlayForward();

        mSprite = GetComponent<UISprite>();
    }
コード例 #2
0
ファイル: EnemyWave.cs プロジェクト: dafei2015/2DTowerDefence
 /// <summary>
 ///     死亡回调
 /// </summary>
 /// <param name="node"></param>
 private void OnDeathCallBack(EnemyNode node)
 {
     Destroy(node.gameObject);
     GameMgr.instance.enemyList.Remove(node);
     mRemainingEnemyNums--;
     if (GameMgr.instance.enemyList.Count <= 0)
     {
         mWaveIndex++;
         if (mWaveIndex > DataMgr.instance.WaveList.Count)
         {
             //TODO: 怪物死光游戏结束
         }
         else
         {
             StartCoroutine(LoadWaveEnemy());
         }
     }
 }
コード例 #3
0
ファイル: Weapons.cs プロジェクト: dafei2015/2DTowerDefence
    /// <summary>
    /// 查找敌人
    /// </summary>
    private void FindEnemy()
    {
        ArrayList list = GameMgr.instance.GetEnemyList();
        mTrg = null;
        foreach (EnemyNode enemy in list)
        {
            Vector3 pos1 = transform.position;
            Vector3 pos2 = enemy.transform.position;

            float dis = Vector2.Distance(new Vector2(pos1.x, pos1.y), new Vector2(pos2.x, pos2.y));

            if (dis > attackRange)
            {
//                Debug.Log(string.Format("敌人{0} 未进入攻击范围,距离:{1}", enemy.name, dis));
            }
            else
            {
                if (enemy != mTrg) mTrg = enemy;
//                Debug.LogError(string.Format("敌人{0} 进入攻击范围,距离:{1}", enemy.name, dis));
            }
        }
    }