void Idle() { interval += Time.deltaTime; //시간누적 if (interval > 3) { state = Alstate.Walk; ani.SetTrigger("Walk"); // walk호출 interval = 0; //walk ani 호출 } }
void Walk() { Vector3 dir = soldier.transform.position - transform.position; //dir = 타겟 -내위치 = 방향값 +,- dir.Normalize();//방향값 계산해주는 함수 // 방향값 -1~1 transform.position += dir * 1 * Time.deltaTime; transform.rotation = Quaternion.LookRotation(dir); Vector3 soldierPos = soldier.transform.position; Vector3 alloPos = transform.position; float distance = Vector3.Distance(soldierPos, alloPos); if (distance < 1.6f) { state = Alstate.Attack; interval = 5; } }