Синтаксис:
Используется csharp
void FixedUpdate () {
float DistanceToPlayer = Vector3.Distance(enemy.position, player.position); // Дистанция до цели
if(DistanceToPlayer <= 500){
Vector3 enemyDirection = transform.TransformDirection(Vector3.forward);
Vector3 DirectionToPlayer = player.position - enemy.position;
float EnemyPlayerAngle = Vector3.Angle(DirectionToPlayer, enemyDirection);
Quaternion rot = Quaternion.LookRotation(player.position - enemy.position);
enemy.rotation = Quaternion.Slerp(enemy.rotation, rot, rotationSpeed * Time.deltaTime);
if(DistanceToPlayer <= 200){
// Если получили нужный угол прицела, то стреляем!
if (EnemyPlayerAngle < 10.0f){
// Стреляем
}
}
}
}
float DistanceToPlayer = Vector3.Distance(enemy.position, player.position); // Дистанция до цели
if(DistanceToPlayer <= 500){
Vector3 enemyDirection = transform.TransformDirection(Vector3.forward);
Vector3 DirectionToPlayer = player.position - enemy.position;
float EnemyPlayerAngle = Vector3.Angle(DirectionToPlayer, enemyDirection);
Quaternion rot = Quaternion.LookRotation(player.position - enemy.position);
enemy.rotation = Quaternion.Slerp(enemy.rotation, rot, rotationSpeed * Time.deltaTime);
if(DistanceToPlayer <= 200){
// Если получили нужный угол прицела, то стреляем!
if (EnemyPlayerAngle < 10.0f){
// Стреляем
}
}
}
}