3 Years Ago
Landing effects can show when mounting something from the water due to the following scenario: - Player is moved to the new mounted position via a ForcePositionTo RPC from the server. - ClientInput sees that they're now grounded and changes IsGrounded to true. - FootstepEffects' Update tick sees the grounded change and plays DoLandingEffect(). - Separately, Client gets a Load with the updated mount data and sets isMounted to true, too late to stop the landing effect. ForcePositionTo is called after SendNetworkUpdate on the server, but sometimes arrives before. I couldn't work out an elegant fix for this. Instead I've added a RecentlyTeleported bool that goes true for one second after teleporting, and set FootstepEffects to not show a landing effect if RecentlyTeleported is true, which covers the gap between being teleported and being mounted.