using System.Collections; using System.Collections.Generic; using UnityEngine; public class BabyController : MonoBehaviour { private Vector3 currentVector; [HideInInspector] public Vector3 targetVector; private Rigidbody rb; private YeetHandle yeetHandle; public float speed; private float timer = 0; public float minRandTimer; public float maxRandTimer; public float randTimer; void Start() { rb = GetComponent(); yeetHandle = GetComponent(); currentVector = RandomNormVector(); targetVector = RandomNormVector(); randTimer = Random.Range(minRandTimer, maxRandTimer); } void FixedUpdate() { if(!yeetHandle.held) { currentVector = Vector3.Slerp(currentVector, targetVector, Time.deltaTime); rb.MovePosition(transform.position + (currentVector * speed)); } timer += Time.deltaTime; if (timer > randTimer) { targetVector = RandomNormVector(); timer = 0; randTimer = Random.Range(minRandTimer, maxRandTimer); } } public Vector3 RandomNormVector() { float _x = Random.Range(-1f, 1f); float _z = Random.Range(-1f, 1f); return new Vector3(_x, 0, _z).normalized; } private void OnDrawGizmos() { Gizmos.DrawLine(transform.position, transform.position + currentVector); } }