I have this piece of code here that increases and decreases the gliding speed of the player when they’re flying based on how much they’re going up and down. The problem with this is, if you glide upwards at the right angle, the player can just keep gliding upwards for as long as they want; that doesn’t happen, realistically, with a glider.
local perDown = direction.Unit.Y velocity.Force += direction * 100 * (1 - perDown) * HRP.AssemblyMass
What I’m aiming for is allowing players to speed up as they dive down, but then slow back down once they go against gravity, like if they go up or are no longer diving down.
For example, if a player dives down and then quickly glides up, they’ll retain that speed going up but they’ll slow down until they can no longer go upwards (cuz gravity big and speed too small), so they’re forced to glide back down. This mechanic can be seen in Bird Simulator - Roblox and Glider Simulator [WORLD 2] - Roblox
How can I do this?