private IEnumerator Attack_002Process() { mIsAttack002 = true; yield return(null); anim.SetTrigger("Attack_002"); Transform aAttackObject = (Transform)Instantiate(Attack_002, anim.bodyPosition + (transform.forward * 3.0f), Quaternion.identity) as Transform; AttackBase aAttack = aAttackObject.GetComponent <Attack_002>(); if (aAttack == null) { yield break; } Rigidbody aAttackBody = aAttack.GetComponent <Rigidbody>(); if (aAttackBody != null) { Vector3 aDirecrion = transform.forward; aAttackBody.transform.LookAt(aDirecrion); aAttackBody.AddForce(aDirecrion * aAttack.ShotSpeed, ForceMode.VelocityChange); Instantiate(SE_Attack_002); yield return(new WaitForSeconds(aAttack.CoolDown)); } mIsAttack002 = false; }