// Get Key Up public bool GetKeyUp(string name) { // Avoids actions when binding if (binding) { return(false); } RebindKey key = new RebindKey(); //key = FindKey(name); key = rebindKeys[name]; if (key.type == RebindKey.Type.Button) { return(Input.GetKeyUp(key.keyCode)); } else { if (!key.keyDown && key.keyDownOld) { return(true); } else { return(false); } } }
bool GetAxis(RebindKey key) { float value = Input.GetAxis(key.axisName); if (Mathf.Abs(value) <= axesDeadZone) { return(false); } else if (key.axisPositive == (value > axesDeadZone)) { return(true); //XNOR } else { return(false); } }
// Since user must do an input to bind be successful // the program must repeat the binding until user inputs something bool TryToBindKey(string name) { RebindKey newkey = new RebindKey(); newkey.name = name; bool keyAssigned = false; // Keyboard/Mouse foreach (KeyCode key in keys) { if (Input.GetKeyDown(key)) { newkey.type = RebindKey.Type.Button; newkey.keyCode = key; keyAssigned = true; break; } } // Axes (Joystick axis!) if (!keyAssigned) { foreach (string joy in axes) { float value = Input.GetAxis(joy); if (Mathf.Abs(value) > 0.5f) { newkey.type = RebindKey.Type.Axis; newkey.axisName = joy; newkey.axisPositive = (value > 0); keyAssigned = true; break; } } } // Assign new key to rebindKey with same name if (keyAssigned) { rebindKeys[name] = newkey; } return(keyAssigned); }
// Get Key public bool GetKey(string name) { // Avoids actions when binding if (binding) return false; RebindKey key = new RebindKey(); //key = FindKey(name); key = rebindKeys[name]; if (key.type == RebindKey.Type.Button) { return Input.GetKey(key.keyCode); } else { return GetAxis(key); } }
// Get Key public bool GetKey(string name) { // Avoids actions when binding if (binding) { return(false); } RebindKey key = new RebindKey(); //key = FindKey(name); key = rebindKeys[name]; if (key.type == RebindKey.Type.Button) { return(Input.GetKey(key.keyCode)); } else { return(GetAxis(key)); } }
// Get Key Down public bool GetKeyDown(string name) { // Avoids actions when binding if (binding) return false; RebindKey key = new RebindKey(); //key = FindKey(name); key = rebindKeys[name]; if (key.type == RebindKey.Type.Button) { return Input.GetKeyDown(key.keyCode); } else { if (key.keyDown && !key.keyDownOld) return true; else return false; } }
// Since user must do an input to bind be successful // the program must repeat the binding until user inputs something bool TryToBindKey(string name) { RebindKey newkey = new RebindKey(); newkey.name = name; bool keyAssigned = false; // Keyboard/Mouse foreach (KeyCode key in keys) { if (Input.GetKeyDown(key)) { newkey.type = RebindKey.Type.Button; newkey.keyCode = key; keyAssigned = true; break; } } // Axes (Joystick axis!) if (!keyAssigned) { foreach (string joy in axes) { float value = Input.GetAxis(joy); if (Mathf.Abs(value) > 0.5f) { newkey.type = RebindKey.Type.Axis; newkey.axisName = joy; newkey.axisPositive = (value > 0); keyAssigned = true; break; } } } // Assign new key to rebindKey with same name if (keyAssigned) { rebindKeys[name] = newkey; } return keyAssigned; }
bool GetAxis(RebindKey key) { float value = Input.GetAxis(key.axisName); if (Mathf.Abs(value) <= axesDeadZone) return false; else if (key.axisPositive == (value > axesDeadZone)) return true; //XNOR else return false; }