//================================================= //캔슬되었을 때 실행할 초기화 함수 public void NoneAttack() { // 모션 변수 전체 초기화 m_holdingTime = 0f; m_target = null; m_animator.SetBool(m_animHashKeyIsReloading, false); m_animator.SetFloat(m_animHashKeyOverdrawSpeed, 1f); m_arrow.SetActive(false); EventBowActionOff?.Invoke(); //이펙트 초기화... 투사체는 제외 EffectManager.instance.CutEffect("PowerDraw"); EffectManager.instance.CutEffect("AimLine"); }
//============================================= //오른손 화살 오브젝트 비활성화 public void ReleaseArrow() { //화살 비활성 m_arrow.SetActive(false); //조준선 비활성 EffectManager.instance.CutEffect("AimLine"); //히트 판정 if (m_target) { // 방향 벡터 Vector3 dirToTarget = (m_target.transform.position - m_aim.transform.position).normalized; //타겟을 향해 날아가는 이펙트 활성 EffectManager.instance.CallEffect("ArrowEffect", m_aim.transform.position, Quaternion.LookRotation(dirToTarget)); } else { //에임의 정면으로 날아가는 이펙트 활성 EffectManager.instance.CallEffect("ArrowEffect", m_aim.transform.position, Quaternion.LookRotation(m_aim.transform.forward)); } //활시위 초기화 EventBowActionOff?.Invoke(); //타겟 초기화 m_target = null; }