Ejemplo n.º 1
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        PlayerController player = collision.GetComponent <PlayerController>();

        if (player)
        {
            if (isDead)
            {
                return;
            }
            if (player.isInvulnerable)
            {
                return;
            }
            if (isInvulnerable)
            {
                return;
            }

            HealthSystem hs = player.GetComponent <HealthSystem>();

            if (hs.DealDamage(baseDamage))
            {
                freezeTimer = freezeAfterDamage;

                DealtDamage(player);
            }
        }
    }
Ejemplo n.º 2
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (treatAsSolidMask.HasLayer(collision.gameObject.layer))
        {
            HealthSystem healthSystem = collision.GetComponent <HealthSystem>();
            if (healthSystem)
            {
                if (healthSystem.faction != faction)
                {
                    healthSystem.DealDamage(damage);
                }
                else
                {
                    return;
                }
            }

            Destroy(gameObject);

            if (explosionPrefab)
            {
                Vector3 dir = transform.position - prevPos;

                RaycastHit2D rayHit = Physics2D.Raycast(prevPos, dir.normalized, dir.magnitude * 1.5f, layerMask);
                if (rayHit)
                {
                    Instantiate(explosionPrefab, rayHit.point, transform.rotation);
                }
            }
        }
    }
Ejemplo n.º 3
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (treatAsSolidMask.HasLayer(collision.gameObject.layer))
        {
            HealthSystem healthSystem = collision.GetComponent <HealthSystem>();
            if (healthSystem)
            {
                if (healthSystem.faction != faction)
                {
                    healthSystem.DealDamage(damage);
                }
                else
                {
                    return;
                }
            }

            Destroy(gameObject);

            if (explosionPrefab)
            {
                Instantiate(explosionPrefab, transform.position, transform.rotation);
            }
        }
    }
Ejemplo n.º 4
0
 public void OnPlayerHit()
 {
     if (!_isActive)
     {
         return;
     }
     healthSystem.DealDamage(LevelManager.manager.player.playerDamage);
 }
Ejemplo n.º 5
0
    void OnTriggerEnter2D(Collider2D collider)
    {
        Attackers    attackers    = collider.gameObject.GetComponent <Attackers>();
        HealthSystem healthsystem = collider.gameObject.GetComponent <HealthSystem>();

        if (attackers && healthsystem)
        {
            healthsystem.DealDamage(damage);
            Destroy(gameObject);
        }
    }
Ejemplo n.º 6
0
 public void StrikeCurrentTarget(float damage)
 {
     Debug.Log(name + " caused damage : " + damage);
     if (currentTarget)
     {
         HealthSystem health = currentTarget.GetComponent <HealthSystem>();
         if (health)
         {
             health.DealDamage(damage);
         }
     }
 }
Ejemplo n.º 7
0
    void UpdateATTACK()
    {
        transform.LookAt(target.transform);
        if (timeToAttack <= 0)
        {
            timeToAttack = attackRate;
            HealthSystem healthBar = target.GetComponent <HealthSystem>();
            if (healthBar != null)
            {
                healthBar.DealDamage();
            }
        }
        else
        {
            timeToAttack -= Time.deltaTime;
        }

        if ((transform.position - target.transform.position).magnitude > maxAttackDistance)
        {
            SetState(EnemyStates.CHASE);
        }
    }
Ejemplo n.º 8
0
 public void OnPlayerHit()
 {
     myHealth.DealDamage(LevelManager.manager.player.playerDamage);
 }
Ejemplo n.º 9
0
        public override void Tick()
        {
            base.Tick();

            damageable?.DealDamage(damagePerTick);
        }
Ejemplo n.º 10
0
 void OnCollisionEnter2D(Collision2D col)
 {
     if (col.gameObject.tag == "Missile")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(1);
         if (hs.health <= 0)
         {
             if (this.gameObject.tag == "repuloCucc")
             {
                 ps.AddPoints(2);
             }
             else if (this.gameObject.tag == "sarga")
             {
                 ps.AddPoints(4);
             }
             else if (this.gameObject.tag == "piros")
             {
                 ps.AddPoints(5);
             }
             else if (this.gameObject.tag == "Enemy")
             {
                 ps.AddPoints(1);
             }
             else if (this.gameObject.tag == "Boss")
             {
                 ps.AddPoints(25);
             }
             this.gameObject.SetActive(false);
         }
     }
     else if (col.gameObject.tag == "Missile2")
     {
         col.gameObject.GetComponent <Renderer>().enabled = false;
         hs.DealDamage(2);
         if (hs.health <= 0)
         {
             if (this.gameObject.tag == "repuloCucc")
             {
                 ps.AddPoints(2);
             }
             else if (this.gameObject.tag == "sarga")
             {
                 ps.AddPoints(4);
             }
             else if (this.gameObject.tag == "piros")
             {
                 ps.AddPoints(5);
             }
             else if (this.gameObject.tag == "Enemy")
             {
                 ps.AddPoints(1);
             }
             else if (this.gameObject.tag == "Boss")
             {
                 ps.AddPoints(25);
                 PlayerPrefs.SetString("Boss", "Killed");
             }
             this.gameObject.SetActive(false);
         }
     }
 }
Ejemplo n.º 11
0
 public void TakeDamage(ValueType amount)
 {
     _healthSystem.DealDamage((int)amount);
 }
Ejemplo n.º 12
0
 void OnCollisionEnter2D(Collision2D col)
 {
     if (col.gameObject.tag == "Enemy")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(1);
         if (hs.health <= 0)
         {
             if (!isDead)
             {
                 isDead = true;
                 this.gameObject.GetComponent <Renderer>().enabled = false;
                 cmc.enabled = !cmc.enabled;
                 ps.Play();
                 StartCoroutine(respawnAfter2Sec());
             }
         }
     }
     else if (col.gameObject.tag == "repuloCucc")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(1);
         if (hs.health <= 0)
         {
             if (!isDead)
             {
                 isDead = true;
                 this.gameObject.GetComponent <Renderer>().enabled = false;
                 cmc.enabled = !cmc.enabled;
                 ps.Play();
                 StartCoroutine(respawnAfter2Sec());
             }
         }
     }
     else if (col.gameObject.tag == "sarga")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(2);
         if (hs.health <= 0)
         {
             if (!isDead)
             {
                 isDead = true;
                 this.gameObject.GetComponent <Renderer>().enabled = false;
                 cmc.enabled = !cmc.enabled;
                 ps.Play();
                 StartCoroutine(respawnAfter2Sec());
             }
         }
     }
     else if (col.gameObject.tag == "piros")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(2);
         if (hs.health <= 0)
         {
             if (!isDead)
             {
                 isDead = true;
                 this.gameObject.GetComponent <Renderer>().enabled = false;
                 cmc.enabled = !cmc.enabled;
                 ps.Play();
                 StartCoroutine(respawnAfter2Sec());
             }
         }
     }
     else if (col.gameObject.tag == "spikyObj" || col.gameObject.tag == "Boss")
     {
         if (!isDead)
         {
             isDead = true;
             this.gameObject.GetComponent <Renderer>().enabled = false;
             cmc.enabled = !cmc.enabled;
             ps.Play();
             StartCoroutine(respawnAfter2Sec());
         }
     }
     else if (col.gameObject.tag == "EnemyMissile")
     {
         col.gameObject.SetActive(false);
         hs.DealDamage(1);
         if (hs.health <= 0)
         {
             if (!isDead)
             {
                 isDead = true;
                 this.gameObject.GetComponent <Renderer>().enabled = false;
                 cmc.enabled = !cmc.enabled;
                 ps.Play();
                 StartCoroutine(respawnAfter2Sec());
             }
         }
     }
 }