コード例 #1
0
    private void OnTriggerEnter2D(Collider2D col)
    {
        if (col.tag == "Enemy")
        {
            //爆発エフェクト
            Effect.EfectCreate(this.transform.position, "Bomb", base.GetExplosionPower());
            //Enemyのタグを持っているオブジェクトをすべて取得
            GameObject[] Enemys = GameObject.FindGameObjectsWithTag("Enemy");

            for (int i = 0; i < Enemys.Length; i++)
            {
                EnemyController e = Enemys[i].gameObject.GetComponent <EnemyController>();
                //プレイヤーと敵の距離をそれぞれ取得
                float distance = (this.transform.position - e.transform.position).sqrMagnitude;
                Debug.Log(distance);

                //距離 < 爆発力
                if (distance < base.GetExplosionPower() * 3f)
                {
                    //ランダム方向に回転しながら吹っ飛ぶ
                    e.SmashEnemy();
                }
            }


            Destroy(this.gameObject);
        }

        if (col.tag == "Bomb")
        {
            base.SetExplosionPower(base.GetExplosionPower() + 0.5f);
        }
    }
コード例 #2
0
    private void OnTriggerEnter2D(Collider2D col)
    {
        //敵に当たったとき爆発する
        if (col.tag == "Enemy")
        {
            Effect.EfectCreate(this.transform.position, "Bomb", base.GetExplosionPower()); //爆発エフェクト

            GameObject[] Enemys = GameObject.FindGameObjectsWithTag("Enemy");              //Enemyのタグを持っているオブジェクトをすべて取得
            //敵の数だけまわす
            for (int i = 0; i < Enemys.Length; i++)
            {
                EnemyController e = Enemys[i].gameObject.GetComponent <EnemyController>();

                float distance = (this.transform.position - e.transform.position).sqrMagnitude;//プレイヤーと敵の距離をそれぞれ取得
                //Debug.Log(distance);

                //距離 < 爆発力の場合
                if (distance < base.GetExplosionPower() * 3f)
                {
                    e.SmashEnemy();                      //ランダム方向に回転しながら吹っ飛ぶ

                    ResultManagerScript.SmashEnemyNum++; //倒した敵の数をプラス
                }
            }

            ResultManagerScript.IsResultFlg = true; //リザルト画面を表示

            Destroy(this.gameObject);               //自身をデストロイ
        }
        //ひっつき虫取得による爆発力増加
        if (col.tag == "Bomb")
        {
            base.SetExplosionPower(base.GetExplosionPower() + 0.5f);
        }
    }