- Home /
How to set Input Buttons
Hey everyone,
I've created a Javascript script where I want to have input, I know how to do Input.GetAxis, because they are already mapped in edit>project settings>input. But I want to do something like Input.GetButtonDown("BUTTON"); but it never seems to recognize the button that I put in there.
Can someone please tell me how to map the normal keyboard keys, or how to get this to work....
Thanks
-Grady
Answer by save · Jun 27, 2011 at 11:01 PM
There are, as you mention, several ways to get keyboard inputs recognized by Unity.
You can for instance create an Axis by first increasing the Size in the Input Manager and then under Name name it to something that you reference to by code. The code is case-sensitive so you'd have to reference the exact name. The console will tell you if the input isn't catching an Axis by the name you call from your code.
//Calling GetButtonDown requires the exact name as Axis Name in the Input Manager
if (Input.GetButtonDown("Enter") {}
//Calling GetKeyDown or GetKeyUp lets you set keys via code directly
if (Input.GetKeyDown("a")) {}
You could also do this one layer down and look for the triggering event of a key being pressed for more advanced usage:
function OnGUI () {
var e : Event = Event.current;
if (e.isKey && Input.anyKeyDown && e.keyCode.ToString()!="None") {
onKeyDown (e.keyCode);
}
}
function onKeyDown (incomingKey) {
var incomingKeyString = incomingKey.ToString();
print("You pressed: "+incomingKeyString);
}
(Hardcoding keys is not a user-friendly approach as the end-user will not be able to alter them.)
Answer by DaveA · Jun 27, 2011 at 11:01 PM
Maybe you want Input.GetKeyDown? Or did you check your settings in the IM for 'type' (Key or Mouse Button' etc)?
Your answer
Follow this Question
Related Questions
Action executed with more than one key? 1 Answer
Why does the keyboard control what button is selected? 2 Answers
How do i make a character move up and down with touch button 0 Answers
How to have multiple types of controller input using the input manager 0 Answers
Any way to detect if a button is held down when the scene loads? 1 Answer