i have an system where a player can choose their own speed but I wanted to make it so you can make it so you can walk backwards how do I do that
1 Like
you could try flipping everything in the character except the HumanoidRootPart. I haven’t tested it but that is where I would start
1 Like
Invert players velocity i think its a humanoid property
1 Like
This should work (LocalScript in StarterCharacterScripts):
--!strict
local ContextActionService = game:GetService("ContextActionService")
local humanoid = script.Parent:WaitForChild("Humanoid"):: Humanoid
local function onS(_, state: Enum.UserInputState)
humanoid.AutoRotate = (state == Enum.UserInputState.End)
return Enum.ContextActionResult.Pass
end
ContextActionService:BindAction('S', onS, false, Enum.KeyCode.S, Enum.KeyCode.Down)
Although I admit it has two drawbacks, which are:
- It works with keyboard input only
- If the player’s character is facing left or right and they press S or ↓ to move backwards, their character will stay facing towards the left/right, so they’ll end up walking sideways instead