//handle collision public void OnCollisionEnter2D(Collision2D collision) { //get healthbar in case event is a damaging collision PlayerHP hpScript = healthBar.GetComponent <PlayerHP>(); if (collision.gameObject.tag == "Wall" || collision.gameObject.tag == "Player") { Instantiate(impactEffect, collision.contacts[0].point, new Quaternion()); hpScript.Damage(1); onHit.Invoke(); } }
public void OnTriggerEnter2D(Collider2D collision) { //get healthbar in case event is a damaging collision PlayerHP hpScript = healthBar.GetComponent <PlayerHP>(); if (collision.gameObject.tag == "Bullet") { //handle bullet collision Projectile projectile = collision.gameObject.GetComponent <Projectile>(); Instantiate(impactEffect, gameObject.transform); hpScript.Damage(projectile.damage); } }
// Update is called once per frame void Update() { Vector3 playerDirection = (player.transform.position - transform.position).normalized; playerDirection.y = 0; transform.rotation = Quaternion.LookRotation(playerDirection); rigid.AddForce(playerDirection * acelleration); if ((player.transform.position - transform.position).magnitude < attackRange) { PlayerHP playerHealth = player.GetComponent <PlayerHP>(); playerHealth.Damage(damage * Time.deltaTime); } }
void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag == "Wall") { Destroy(gameObject); } if (col.gameObject.tag == "Player") { CompletePlayerController player = col.gameObject.GetComponent <CompletePlayerController>(); if ((int)player.index == 1 && gameObject.tag == "Beam2") { PlayerHP hp = col.gameObject.GetComponent <PlayerHP>(); hp.Damage(1); Destroy(gameObject); } if ((int)player.index == 2 && gameObject.tag == "Beam1") { PlayerHP hp = col.gameObject.GetComponent <PlayerHP>(); hp.Damage(1); Destroy(gameObject); } } if (col.gameObject.tag == ("Guard")) { if (!isReflect) { Instantiate(guardEffect); if (rig != null) { rig.velocity *= -1; } isReflect = true; if (gameObject.tag == "Beam1") { gameObject.tag = "Beam2"; } else if (gameObject.tag == "Beam2") { gameObject.tag = "Beam1"; } } else { Instantiate(breakEffect, transform.position, Quaternion.identity); } } }