예제 #1
0
    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);
            }
        }
    }
예제 #2
0
    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);
        }
    }