using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SturmVirusRotateScript : MonoBehaviour
{
Vector3 StartPos;
Vector3 CharacterPos;
Vector3 TargetPos;
Quaternion Rotation;
float Angle;
[SerializeField] float Offset;
[SerializeField] float RotSpeed;
GameObject character;
private void Start()
{
character = GameObject.Find("Character");
StartPos = this.transform.position;
CharacterPos = character.transform.position;
TargetPos = CharacterPos - StartPos;
}
private void FixedUpdate()
{
if (transform.position.y >= CharacterPos.y)
{
CharacterPos = character.transform.position;
TargetPos = CharacterPos - transform.position;
Angle = Mathf.Atan2(TargetPos.x, TargetPos.y) * Mathf.Rad2Deg;
Rotation = new Quaternion(0, 0, -Angle - Offset, transform.rotation.w);
transform.rotation = Quaternion.Slerp(transform.rotation, Rotation, RotSpeed);
}
if (transform.position.y < CharacterPos.y) // не доделано
{
CharacterPos = character.transform.position;
TargetPos = CharacterPos - StartPos;
Angle = Mathf.Atan2(TargetPos.x, TargetPos.y) * Mathf.Rad2Deg;
transform.rotation = Quaternion.Euler(0, 0, -Angle - Offset);
}
}
}