예제 #1
0
 public void HeavyMachineGunPowerUpMethod(DamageDealer damageDealer)
 {
     Debug.Log("Touched HeavyMachineGUn");
     PlayHeavyMachineGunSound();
     ActivateHeavyMachineGun();
     damageDealer.OnHitDestroyOtherObject();
 }
예제 #2
0
 public void PowerUpMethod(DamageDealer damageDealer)
 {
     Debug.Log("Touched Power Up");
     PlayPowerUpSound();
     health = Mathf.Clamp(health + 500, 0, 1000);
     damageDealer.OnHitDestroyOtherObject();
 }
예제 #3
0
 public void SheildPowerUpmethod(DamageDealer damageDealer)
 {
     Debug.Log("Touched Sheild");
     PlayPowerUpSound();
     sheildOn = true;
     damageDealer.OnHitDestroyOtherObject();
 }
예제 #4
0
 public void ExtraLifePowerUpMethod(DamageDealer damageDealer)
 {
     Debug.Log("Touched Extralife");
     PlayPowerUpSound();
     gameSessionScript.Addlives();
     gameSessionScript.CheckNumberOfLivesAndUpdate();
     damageDealer.OnHitDestroyOtherObject();
 }
예제 #5
0
 public void RocketLauncherPowerUPMethod(DamageDealer damageDealer)
 {
     Debug.Log("Touched RocketLauncher");
     PlayRocketLauncherSound();
     rocketHeadScript.SetActiveObject();
     damageDealer.OnHitDestroyOtherObject();
     StartCoroutine(gameSessionScript.ShowGuideforPressC());
     gameSessionScript.RPGUpdate3UI();
 }
예제 #6
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        //Gets the damage dealer of the thing it collided with
        DamageDealer damageDealer = other.gameObject.GetComponent <DamageDealer>();

        if (sheildOn == true || immunityOn == true)
        {
            //do nothing when hit OtherObjects but still get Powerups

            if (other.gameObject.tag == "PowerUP")
            {
                PowerUpMethod(damageDealer);
            }

            else if (other.gameObject.tag == "HeavyMachineGun")
            {
                HeavyMachineGunPowerUpMethod(damageDealer);
            }

            else if (other.gameObject.tag == "RocketLauncher")
            {
                RocketLauncherPowerUPMethod(damageDealer);
            }

            else if (other.gameObject.tag == "Sheild")
            {
                SheildPowerUpmethod(damageDealer);
                sheildHealthBarScript.SetActiveSheildHealthBar();
                sheildScript.SetActiveSheildMethod();
                bActivatedSheild = true;
            }
            else if (other.gameObject.tag == "ExtraLife")
            {
                ExtraLifePowerUpMethod(damageDealer);
            }
            else
            {
            }
        }
        else
        {
            //If collides with main player subtracts damage value from health
            //Depending on the Tag will Destroy other game object
            if (other.gameObject.tag == "EnemyLaser")
            {
                getHitSound = getHitLaserSound;
                hitVFX      = laserHitVFX;
                ProcessHit(damageDealer);
                //Debug.Log("1");
                damageDealer.OnHitDestroyOtherObject();
            }
            else if (other.gameObject.tag == "BEnemyBomb")
            {
                if (!isPlayerActive)
                {
                    Debug.Log("No bomb lerp Coroutine Will be played");
                }
                else if (isPlayerActive)
                {
                    getHitSound           = getHitBombSound;
                    hitVFX                = bombHitVFX;
                    myColor               = Color.red;
                    lerpToRedorWhiteCount = 0f;
                    ProcessHit(damageDealer);
                    //Debug.Log("2");
                    damageDealer.OnHitDestroyOtherObject();
                }
            }
            else if (other.gameObject.tag == "BEnemyLaserBomb")
            {
                if (!isPlayerActive)
                {
                    Debug.Log("No bomb lerp Coroutine Will be played");
                }
                else if (isPlayerActive)
                {
                    laserBomb             = true;
                    getHitSound           = getHitLaserBombSound;
                    hitVFX                = laserBombHitVFX;
                    myColor               = Color.green;
                    lerpToRedorWhiteCount = 0f;
                    ProcessHit(damageDealer);
                    //Debug.Log("2");
                    damageDealer.OnHitDestroyOtherObject();
                }
            }
            else if (other.gameObject.tag == "PowerUP")
            {
                PowerUpMethod(damageDealer);
            }

            else if (other.gameObject.tag == "HeavyMachineGun")
            {
                HeavyMachineGunPowerUpMethod(damageDealer);
            }

            else if (other.gameObject.tag == "RocketLauncher")
            {
                RocketLauncherPowerUPMethod(damageDealer);
            }

            else if (other.gameObject.tag == "Sheild")
            {
                SheildPowerUpmethod(damageDealer);
                sheildHealthBarScript.SetActiveSheildHealthBar();
                sheildScript.SetActiveSheildMethod();
            }
            else if (other.gameObject.tag == "ExtraLife")
            {
                ExtraLifePowerUpMethod(damageDealer);
            }
            else
            {
                getHitSound = getHitLaserSound;
                hitVFX      = laserHitVFX;
                ProcessHit(damageDealer);
            }
        }
    }
예제 #7
0
    private void OnTriggerEnter2D(Collider2D other)
    {
        //Gets the damage dealer of the thing it collided with
        DamageDealer damageDealer = other.gameObject.GetComponent <DamageDealer>();

        //If collides with main player subtracts damage value from health
        //Depending on the Tag will Destroy other game object
        if (other.gameObject.tag == "EnemyLaser")
        {
            otherObjTranPosX = other.gameObject.transform.position.x;
            getHitSound      = getHitLaserSound;
            hitVFX           = laserHitVFX;
            ProcessHit(damageDealer);
            //Debug.Log("1");
        }
        else if (other.gameObject.tag == "BEnemyBomb")
        {
            otherObjTranPosX = other.gameObject.transform.position.x;
            getHitSound      = getHitBombSound;
            hitVFX           = bombHitVFX;
            ProcessHit(damageDealer);
            //Debug.Log("2");
            damageDealer.OnHitDestroyOtherObject();
        }
        else if (other.gameObject.tag == "BEnemyLaserBomb")
        {
            laserBomb        = true;
            otherObjTranPosX = other.gameObject.transform.position.x;
            getHitSound      = getHitLaseBombSound;
            hitVFX           = LaserombHitVFX;
            ProcessHit(damageDealer);
            //Debug.Log("2");
            damageDealer.OnHitDestroyOtherObject();
        }
        else if (other.gameObject.tag == "PowerUP")
        {
            parentPlayer.PowerUpMethod(damageDealer);
        }

        else if (other.gameObject.tag == "HeavyMachineGun")
        {
            parentPlayer.HeavyMachineGunPowerUpMethod(damageDealer);
        }

        else if (other.gameObject.tag == "RocketLauncher")
        {
            parentPlayer.RocketLauncherPowerUPMethod(damageDealer);
        }

        else if (other.gameObject.tag == "Sheild")
        {
            parentPlayer.SheildPowerUpmethod(damageDealer); health = 1000;
        }

        else if (other.gameObject.tag == "ExtraLife")
        {
            parentPlayer.ExtraLifePowerUpMethod(damageDealer);
        }

        else
        {
            otherObjTranPosX = other.gameObject.transform.position.x;
            getHitSound      = getHitLaserSound;
            hitVFX           = laserHitVFX;
            ProcessHit(damageDealer);
            //Debug.Log("3");
        }
    }