private Vector3 targetShot() { Vector3 rotationShot = new Vector3(); EnemyMoving enemyScript = _target.GetComponent <EnemyMoving>(); if (Vector3.Distance(enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position, _target.position) < 10 && enemyScript.GetNumberPoint() + 1 < enemyScript.FindTargetTransform.TargetEnemyPoint.Count) { Vector3 vecotrNextPoint = enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint() + 1].position - enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position; rotationShot = enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position + vecotrNextPoint.normalized * (10 - Vector3.Distance(enemyScript.FindTargetTransform.TargetEnemyPoint[enemyScript.GetNumberPoint()].position, _target.position)); } else { rotationShot = _target.position + _target.forward * 10; } return(rotationShot); }