I'm working on a key-bind mapper and I have a function that's supposed to wait until the player presses any key and returns the key the player pressed.
module.Input = function()
frame.Visible = true
local key = UserInputService.InputEnded:Wait()
frame.Visible = false
print(key.KeyCode)
return key.KeyCode
end
this does not wait for keypress and instantly returns the Unknown Keycode. so i modified it:
module.Input = function()
frame.Visible = true
local key = nil
repeat key = UserInputService.InputEnded:Wait() until UserInputService.InputEnded:Wait() ~= Enum.KeyCode.Unknown
frame.Visible = false
print(key.KeyCode)
return key.KeyCode
end
this actually waits for the keypress but still returns unknown Keycode

2 comments
Unless I’m missing something here the second one isn’t actually assigning your key variable to the KeyCode.
i forgot to put that in the question. Updated