using UnityEngine; public class PlayerWobblePosition : MonoBehaviour { private Vector3 physicsPos; public float drag = 15f; public float spring = 1000f; public float multiplier = 1f; public float prediction; private Vector3 velocity; private Player player; private void Start() { physicsPos = base.transform.position; player = GetComponentInParent(); } private void Update() { float num = Mathf.Clamp(TimeHandler.deltaTime, 0f, 0.03f); Vector3 position = player.transform.position; if (prediction > 0f) { position += (Vector3)player.data.playerVel.velocity * prediction; } velocity += (position - physicsPos) * num * spring; velocity -= velocity * drag * num; physicsPos += num * multiplier * velocity; base.transform.position = physicsPos; } }