Пример #1
0
    IEnumerator deal(RaycastHit2D[] targets)
    {
        while (ani.GetFloat("attackTime") <= 0.5f)
        {
            yield return(new WaitForEndOfFrame());
        }

        if (targets.Length > 0)
        {
            cam.shakeCamera(0.4f, 0.5f);
            foreach (RaycastHit2D rayhit in targets)
            {
                if (rayhit.transform.tag != "Enemy")
                {
                    continue;
                }
                Debug.Log(rayhit.transform);
                rayhit.transform.GetComponent <Rigidbody2D>().AddForce(transform.right * 200);
            }
        }
        else
        {
            Debug.Log("miss!");
        }

        while (ani.GetFloat("attackTime") < 1)
        {
            yield return(new WaitForEndOfFrame());
        }

        yield return(new WaitForEndOfFrame());

        atkFlag = true;
    }