Rotate only the Floor, not Character

Hello, I’m trying to rotate the floor when the character is on top of it, but the character is moving with it.
Is there a way to block the character location/rotation while the floor is rotating?

To test, simply add a Cube and put your PlayerStart on it.
Then, add an event to make it rotating.

Do you want to do it once or maybe floor will keep rotating infinitely? If it will happen only once and instantly then you can always store player’s transform before the rotation and update it after floor will rotate.

The other way would be to create new actor’s blueprint, BP_RotatingFloor where you have two components: StaticMesh (visual representation of your floor without any collision) and Plane (invisible component with collision turned on).

Thanks to that you can rotate floor (static mesh component, visible to the player) and it will not impact your player’s actor because there is no collision between them. You need invisible plane with collision turned on to make sure your player (and other objects with enabled physics) don’t fell down through rotating floor.

Separating visual and collision and only moving the visual part seems a working solution in my case.
I couldn’t set back the previous transform because for some reasons the character move only after a few frames.

Thanks for your time!