Esempio n. 1
0
    public void DoAttack()
    {
        if (!_move)
        {
            _move = GetComponent <AIMovementComp>();
        }

        Vector2 castDir = _move.GetVectorDirection();

        RaycastHit2D[] hits = Physics2D.BoxCastAll(transform.position, new Vector2(1.2f, 1.2f), 0f, castDir, 2f);

        for (int i = 0; i < hits.Length; i++)
        {
            if (hits[i].transform.CompareTag("Player"))
            {
                hits[i].transform.GetComponent <GayatriCharacter>().ApplyDamage(attackDamage, this.gameObject);
                break;
            }
        }

        if (Task.isInspected)
        {
            Task.current.Succeed();
        }
    }
Esempio n. 2
0
    public void doAttack()
    {
        isAttacking = true;
        //TODO set anim attack

        RaycastHit2D[] hits = Physics2D.BoxCastAll(transform.position, _boxColl2D.size, 0f, _movementComp.GetVectorDirection(), attackRange);
        for (int i = 0; i < hits.Length; i++)
        {
            if (hits[i].collider.CompareTag("Player"))
            {
                Debug.Log("Apply Damage to Player");
            }
        }
        //Delay until anim done
        StartCoroutine(StopAttack(0.1f));
        Panda.Task.current.Succeed();
    }