public override void TriggerAttack() { base.TriggerAttack(); Collider2D[] hittedEnemies = Physics2D.OverlapCircleAll(playerData.attack1Position.position, playerController.meleeAttack1.radiusRange, playerData.whatIsEnemy); foreach (Collider2D enemy in hittedEnemies) { EnemyStatsController enemyStatsController = enemy.gameObject.GetComponent <EnemyStatsController>(); EnemyAttackController enemyAttackHandler = enemy.gameObject.GetComponent <EnemyAttackController>(); if (enemyAttackHandler != null && enemyStatsController != null) { Attack attack = playerController.meleeAttack1.PlayerCreateAttack(playerController.statsController, enemyStatsController, playerController.meleeAttack1.hitBackForce); enemyAttackHandler.OnAttacked(playerController.gameObject, attack); } } }
public override void TriggerAttack() { base.TriggerAttack(); Collider2D[] hittedEnemies = Physics2D.OverlapBoxAll(playerData.attack2Position.position, new Vector2(playerController.meleeAttack2.rangeX, playerController.meleeAttack2.rangeX), 0, playerData.whatIsEnemy); foreach (Collider2D enemy in hittedEnemies) { EnemyStatsController enemyStatsController = enemy.gameObject.GetComponent <EnemyStatsController>(); EnemyAttackController enemyAttackController = enemy.gameObject.GetComponent <EnemyAttackController>(); if (enemyAttackController != null && enemyStatsController != null) { Attack attack = playerController.meleeAttack2.PlayerCreateAttack(playerController.statsController, enemyStatsController, playerController.meleeAttack2.hitBackForce); enemyAttackController.OnAttacked(playerController.gameObject, attack); } //Attack attack = playerController.meleeAttack2.CreateAttack(playerController.statsController, // enemy.gameObject.GetComponent<CharacterStatsController>(), playerController.meleeAttack2.hitBackForce); //enemy.gameObject.GetComponent<AttackHandler>().OnAttacked(playerController.gameObject, attack); } }