// Update is called once per frame void Update() { if (!GameManager.rewind) { age += Time.deltaTime * GameManager.timeSpeed; } else { age -= Time.deltaTime * GameManager.timeSpeed; } Vector3 offset = AnimMath.revolve(radius, age, speed); transform.position = target.position + offset; rotY += Time.deltaTime * speed * GameManager.timeSpeed; transform.rotation = Quaternion.Euler(0, rotY, 0); }