public override void EntityUpdate() { if ((CacheEntity.MovementSecure == MovementSecure.ServerAuthoritative && !IsServer) || (CacheEntity.MovementSecure == MovementSecure.NotSecure && !IsOwnerClient)) { return; } UpdateMovement(Time.deltaTime); tempMovementState = tempMoveDirection.sqrMagnitude > 0f ? tempMovementState : MovementState.None; if (isUnderWater) { tempMovementState |= MovementState.IsUnderWater; } if (CacheOpenCharacterController.isGrounded || airborneElapsed < airborneDelay) { tempMovementState |= MovementState.IsGrounded; } CacheEntity.SetMovement(tempMovementState); }