void Update()
    {
        if (networkObject == null || networkObject.IsServer || !_isOwner)
        {
            return;
        }

        // We record the controlling players directional input.
        _listener.RecordMovement(Input.GetAxis("Horizontal"), Input.GetAxis("Vertical"));

        // Record any action the controlling player might take!
        if (Input.GetKeyDown(KeyCode.Space))
        {
            _listener.RecordAction(1, 0); // 1 = Jump;
        }

        // Press 'X' during simulation to test Server-Reconciliation!
        if (Input.GetKeyDown(KeyCode.X))
        {
            transform.Translate((Vector3.forward + Vector3.left) * 3f);
        }

        // If our position is too far from the server-position we correct it here.
        CorrectError();
    }