Ejemplo n.º 1
0
    void OnCollisionEnter2D(Collision2D col)
    {
        switch (col.gameObject.tag)
        {
        case "FloorEnemy":
            // Quitar vida al enemigo.
            FloorEnemy c = (FloorEnemy)col.gameObject.GetComponent("FloorEnemy");
            if (c == null)
            {
                // Si no se trata del FloorEnemy, con toda seguridad se trata del FloorEnemyType2.
                FloorEnemyType2 ct2 = (FloorEnemyType2)col.gameObject.GetComponent("FloorEnemyType2");
                ct2.damage(power);
                resistanceAgainstBulletImpulse(ct2.gameObject);
            }
            else
            {
                c.damage(power);
                resistanceAgainstBulletImpulse(c.gameObject);
            }
            // Eliminar bala.
            Destroy(this.gameObject);
            break;

        case "Enemy":
            AirEnemy c1 = (AirEnemy)col.gameObject.GetComponent("AirEnemy");
            if (c1 == null)
            {
                // Si no se trata del AirEnemy, con toda seguridad se trata del AirEnemyType2.
                AirEnemyType2 c1t2 = (AirEnemyType2)col.gameObject.GetComponent("AirEnemyType2");
                c1t2.damage(power);
            }
            else
            {
                c1.damage(power);
            }
            Destroy(this.gameObject);
            break;

        case "Boss":
            BossGiantRobot b = (BossGiantRobot)col.gameObject.GetComponent("BossGiantRobot");
            b.damage(power);
            Destroy(this.gameObject);
            break;
        }
    }
Ejemplo n.º 2
0
        void markAsFromBoss(GameObject enemy)
        {
            FloorEnemy floor = (FloorEnemy)enemy.GetComponent("FloorEnemy");

            if (floor != null)
            {
                floor.createdFromBoss(boss);
            }
            else
            {
                AirEnemyType2 airType2 = (AirEnemyType2)enemy.GetComponent("AirEnemyType2");
                if (airType2 != null)
                {
                    airType2.createdFromBoss(boss);
                }
                else
                {
                    AirEnemy air = (AirEnemy)enemy.GetComponent("AirEnemy");
                    air.createdFromBoss(boss);
                }
            }
        }