Since the PlayerModule update today, ControlModule::Disable locks in the player’s inputs (such as holding W or spacebar at the time of the call), causing movement to continue, whereas the old ControlScript would stop all movement at the time of disabling it.
Repro:
- Paste this code into a LocalScript
local player = game.Players.LocalPlayer
local PlayerScripts = player:WaitForChild("PlayerScripts")
local ControlModule = require(PlayerScripts:WaitForChild("PlayerModule"):WaitForChild("ControlModule"))
print("Disabling controls in 3 seconds")
wait(3)
ControlModule:Disable()
print("Disabled, let go of your movement or jump input, and notice it is locked in.")
wait(.5)
print("Enabling controls in 3 seconds")
wait(3)
ControlModule:Enable()
print("Enabled, notice that you can now un-lock the controls by inputting them again.")
- Press play and hold down W to move forward.
- Observe comments being printed, once disabled, release the W key; you will continue to move forward with no way top stop it, once re-enabled, you will still be moving forward until you press W again.
This is undesired behaviour and was not the case with the previous version of the ControlScript.
This has been fixed with Part 2 of the PlayerModule release.