// Update is called once per frame void Update() { if (timeBtwAttack <= 0) { if (Input.GetButtonDown("Attack")) { animator.SetBool("Sword", true); audioSource.PlayOneShot(collisionSoundClip); StartCoroutine(attacking()); Collider2D[] enemiesToDamage = Physics2D.OverlapCircleAll(attackPos.position, attackRange, WhatIsEnemies); for (int i = 0; i < enemiesToDamage.Length; i++) { WallEnemyAI e = enemiesToDamage[i].GetComponent <WallEnemyAI>(); NEnemy e2 = enemiesToDamage[i].GetComponent <NEnemy>(); FlyEnemy e3 = enemiesToDamage[i].GetComponent <FlyEnemy>(); Enemy_Boss eb = enemiesToDamage[i].GetComponent <Enemy_Boss>(); if (e) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e.TakeDamage(damage); } if (e2) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e2.TakeDamage(damage); } if (e3) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e3.TakeDamage(damage); } if (eb) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); eb.TakeDamage(damage); } } timeBtwAttack = startTimeBtwAttack; } } else { timeBtwAttack -= Time.deltaTime; } }
private void OnTriggerEnter2D(Collider2D hitinfo) { Enemy enemy = hitinfo.GetComponent <Enemy>(); if (enemy != null) { enemy.TakeDamage(damage); } Destroy(gameObject); FlyEnemy flyEnemy = hitinfo.GetComponent <FlyEnemy>(); if (flyEnemy != null) { flyEnemy.TakeDamage(damage); } }
private void OnTriggerEnter2D(Collider2D other) { GameObject boss = GameObject.Find("Boss"); GameObject boss2 = GameObject.Find("Boss2"); if (boss || boss2) { if (other.gameObject.tag == "Player") { CharacterHealth player = other.GetComponent <CharacterHealth>(); if (player) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); player.TakeDamage(1, transform.position); DestroyProjectile(); } } } if (other.gameObject.tag == "Enemy") { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); WallEnemyAI e = other.GetComponent <WallEnemyAI>(); NEnemy e2 = other.GetComponent <NEnemy>(); FlyEnemy e3 = other.GetComponent <FlyEnemy>(); if (e) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e.TakeDamage(1); } if (e2) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e2.TakeDamage(1); } if (e3) { CameraShaker.Instance.ShakeOnce(1f, 4f, 0.1f, 0.1f); e3.TakeDamage(1); } } if (other.gameObject.tag != "Player" && other.gameObject.tag != "Boss") { DestroyProjectile(); } }