Esempio n. 1
0
    public void EnemyHealthLoweredWhenBulletHitsEnemy_Test()
    {
        // Temporarily commented out because of code refactoring

        // Arrange
        var enemyTriangle = new EnemyTriangle();
        var bullet        = new Bullet();

        enemyTriangle.health = 4; //original health of enemy
        bullet.damage        = 2; //damage dealt per bullet

        //Act
        enemyTriangle.Hit(bullet.damage);

        // Assert
        //the health of enemy is expected to be deducted by 1 when hit by a bullet
        Assert.True(enemyTriangle.health == 2);

        //Arrange
        var enemyOctagon = new EnemyOctagonPurple();

        enemyOctagon.health = 5;

        //Act
        enemyOctagon.Hit(bullet.damage);

        // Assert
        //the health of enemy is expected to be deducted by 1 when hit by a bullet
        Assert.True(enemyOctagon.health == 3);
    }
Esempio n. 2
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        EnemyTriangle enemyTriangle = collision.GetComponent <EnemyTriangle>();

        if (enemyTriangle != null)
        {
            enemyTriangle.killEnemyTriangle();
            gameData.scoreUpdate(enemyTriangle.pointValue);
            enemyManagement.enemyTriangleCount--;
            return;
        }

        //Oxtagon doesn't exist

        /*
         * EnemyOctagonPurple enemyOxtagonPurple = collision.GetComponent<EnemyOctagonPurple>();
         * if (enemyOxtagonPurple != null)
         * {
         *  gameData.scoreUpdate(enemyOxtagonPurple.pointValue);
         *  enemyOxtagonPurple.killEnemyOxtagonPurple();
         *  enemyManagement.enemyOctagonPurpleCount--;
         *  return;
         * }
         */

        EnemyHeartPink enemyHeartPink = collision.GetComponent <EnemyHeartPink>();

        if (enemyHeartPink != null)
        {
            gameData.scoreUpdate(enemyHeartPink.pointValue);
            enemyHeartPink.killEnemy();
            enemyManagement.enemyHeartPinkCount--;
            return;
        }

        EnemyCircleMaroon enemyCircleMaroon = collision.GetComponent <EnemyCircleMaroon>();

        if (enemyCircleMaroon != null)
        {
            gameData.scoreUpdate(enemyCircleMaroon.pointValue);
            enemyCircleMaroon.killEnemy();
            enemyManagement.enemyCircleMaroonCount--;
            return;
        }

        EnemyOctagonPurple enemyOctagonPurple = collision.GetComponent <EnemyOctagonPurple>();

        if (enemyOctagonPurple != null)
        {
            enemyOctagonPurple.killEnemy();
            gameData.scoreUpdate(2);
        }

        EnemyBullet enemyBullet = collision.GetComponent <EnemyBullet>();

        if (enemyBullet != null)
        {
            enemyBullet.DestroyBullet();
        }
    }
Esempio n. 3
0
    public void HitTriangleTest2()
    {
        // Arrange
        var enemyTriangle = new EnemyTriangle();
        var bullet        = new Bullet();

        enemyTriangle.health = 5;
        bullet.damage        = 2;

        // Act
        enemyTriangle.Hit(bullet.damage);

        // Assert
        Assert.True(enemyTriangle.health == 3);
    }
Esempio n. 4
0
 private void OnTriggerExit2D(Collider2D collision)
 {
     if (collision.gameObject.name == "EnemyTriangle(Clone)")
     {
         EnemyTriangle enemy = collision.GetComponent <EnemyTriangle>();
         enemy.isNearbyHeartPink = false;
     }
     else if (collision.gameObject.name == "EnemyOctagonPurple(Clone)")
     {
         EnemyOctagonPurple enemy = collision.GetComponent <EnemyOctagonPurple>();
         enemy.isNearbyHeartPink = false;
     }
     else if (collision.gameObject.name == "EnemyCircleMaroon(Clone)")
     {
         EnemyCircleMaroon enemy = collision.GetComponent <EnemyCircleMaroon>();
         enemy.isNearbyHeartPink = false;
     }
 }
Esempio n. 5
0
    IEnumerator EnemyTriangleProducer()
    {
        while (true)
        {
            int direction = rand.Next(1, 3);    //Enemy will be spawned in the left or the right of the screen
            yield return(new WaitForSeconds(spawnTime));

            if (direction == 1 && enemyTriangleCount < enemyTriangleLimit)
            {
                EnemyTriangle newEnemy = Instantiate(enemyTriangle, new Vector3(10, 7 - rand.Next(0, 14), 0), Quaternion.identity);
                newEnemy.endingPosition = energyCore.transform.position;
                enemyTriangleCount++;
            }
            else if (enemyTriangleCount < enemyTriangleLimit)
            {
                EnemyTriangle newEnemy = Instantiate(enemyTriangle, new Vector3(-10, 7 - rand.Next(0, 14), 0), Quaternion.identity);
                newEnemy.endingPosition = energyCore.transform.position;
                enemyTriangleCount++;
            }
        }
    }
Esempio n. 6
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        //Shield shield = collision.GetComponent<Shield>();
        //if () 
        EnemyTriangle enemyTriangle = collision.GetComponent<EnemyTriangle>();
        if (enemyTriangle != null)
        {
            AudioSource.PlayClipAtPoint(hitSound, new Vector3(0, 0, -5));
            enemyTriangle.Hit(damage);
            Destroy(gameObject);
            return;
        }

        EnemyOctagonPurple enemyOctagonPurple = collision.GetComponent<EnemyOctagonPurple>();
        if (enemyOctagonPurple != null)
        {
            AudioSource.PlayClipAtPoint(hitSound, new Vector3(0, 0, -5));
            enemyOctagonPurple.Hit(damage);
            Destroy(gameObject);
            return;
        }

        EnemyHeartPink enemyHeartPink = collision.GetComponent<EnemyHeartPink>();
        if (enemyHeartPink != null)
        {
            AudioSource.PlayClipAtPoint(hitSound, new Vector3(0, 0, -5));
            enemyHeartPink.Hit(damage);
            Destroy(gameObject);
            return;
        }

        EnemyCircleMaroon enemyCircleMaroon = collision.GetComponent<EnemyCircleMaroon>();
        if (enemyCircleMaroon != null)
        {
            AudioSource.PlayClipAtPoint(hitSound, new Vector3(0, 0, -5));
            enemyCircleMaroon.Hit(damage);
            Destroy(gameObject);
            return;
        }
    }