/// <summary> /// 軸を追加します。 /// </summary> /// <param name="serializedObject">Serialized object.</param> /// <param name="data">Axis.</param> void AddAxis(InputSettingData data) { // if (axis.axis < 1) Debug.LogError("Axisは1以上に設定してください。"); SerializedProperty axesProperty = serializedObject.FindProperty("m_Axes"); axesProperty.arraySize++; serializedObject.ApplyModifiedProperties(); SerializedProperty axisProperty = axesProperty.GetArrayElementAtIndex(axesProperty.arraySize - 1); GetChildProperty(axisProperty, "m_Name").stringValue = data.name; GetChildProperty(axisProperty, "descriptiveName").stringValue = data.descriptive; GetChildProperty(axisProperty, "descriptiveNegativeName").stringValue = data.negativeDescriptive; GetChildProperty(axisProperty, "negativeButton").stringValue = data.negativeButton; GetChildProperty(axisProperty, "positiveButton").stringValue = data.positiveButton; GetChildProperty(axisProperty, "altNegativeButton").stringValue = data.altNegativeButton; GetChildProperty(axisProperty, "altPositiveButton").stringValue = data.altPositiveButton; GetChildProperty(axisProperty, "gravity").floatValue = data.gravity; GetChildProperty(axisProperty, "dead").floatValue = data.dead; GetChildProperty(axisProperty, "sensitivity").floatValue = data.sensitivity; GetChildProperty(axisProperty, "snap").boolValue = data.snap; GetChildProperty(axisProperty, "invert").boolValue = data.invert; GetChildProperty(axisProperty, "type").intValue = (int)data.inputType; GetChildProperty(axisProperty, "axis").intValue = (int)data.axisType; GetChildProperty(axisProperty, "joyNum").intValue = (int)data.joystickNum; serializedObject.ApplyModifiedProperties(); }
/// <summary> /// ゲームパッド用の軸の設定データを作成する /// </summary> /// <returns>The joy axis.</returns> /// <param name="name">Name.</param> /// <param name="joystickNum">Joystick number.</param> /// <param name="axisType">Axis number.</param> public static InputSettingData CreatePadAxis(string name, JoystickNum joystickNum, AxisType axisType) { var axis = new InputSettingData(name); axis.name = name; axis.dead = 0.2f; axis.sensitivity = 1; axis.inputType = InputType.JoystickAxis; axis.axisType = axisType; axis.joystickNum = joystickNum; return(axis); }
public void SetInputSettingData(List <InputSettingData> dataList) { if (dataList == null) { return; } Clear(); for (int iInput = 0; iInput < dataList.Count; iInput++) { InputSettingData data = dataList[iInput]; AddAxis(data); } }
/// <summary> /// 押すと1になるキーの設定データを作成する /// </summary> /// <returns>The button.</returns> /// <param name="name">Name.</param> /// <param name="positiveButton">Positive button.</param> /// <param name="altPositiveButton">Alternate positive button.</param> public static InputSettingData CreateButton(string name, string positiveButton, string altPositiveButton) { var axis = new InputSettingData(name); axis.name = name; axis.positiveButton = positiveButton; axis.altPositiveButton = altPositiveButton; axis.gravity = 1000; axis.dead = 0.001f; axis.sensitivity = 1000; axis.inputType = InputType.KeyOrMouseButton; return(axis); }
InputSettingData GetInputSettingData(SerializedProperty property) { InputSettingData data = new InputSettingData(GetChildProperty(property, "m_Name").stringValue, false); data.descriptive = GetChildProperty(property, "descriptiveName").stringValue; data.negativeDescriptive = GetChildProperty(property, "descriptiveNegativeName").stringValue; data.negativeButton = GetChildProperty(property, "negativeButton").stringValue; data.positiveButton = GetChildProperty(property, "positiveButton").stringValue; data.altNegativeButton = GetChildProperty(property, "altNegativeButton").stringValue; data.altPositiveButton = GetChildProperty(property, "altPositiveButton").stringValue; data.gravity = GetChildProperty(property, "gravity").floatValue; data.dead = GetChildProperty(property, "dead").floatValue; data.sensitivity = GetChildProperty(property, "sensitivity").floatValue; data.snap = GetChildProperty(property, "snap").boolValue; data.invert = GetChildProperty(property, "invert").boolValue; data.inputType = (InputType)GetChildProperty(property, "type").intValue; data.axisType = (AxisType)GetChildProperty(property, "axis").intValue; data.joystickNum = (JoystickNum)GetChildProperty(property, "joyNum").intValue; return(data); }
static void AddMyXBoxControllerDefinition() { Debug.Log("hello"); InputManagerAccessor accessor = new InputManagerAccessor(); _inputSettingList = accessor.GetInputSettingDataList(); //Aボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxA)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 0" }; _inputSettingList.Add(data); } //Bボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxB)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 1" }; _inputSettingList.Add(data); } //Xボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxX)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 2" }; _inputSettingList.Add(data); } //Yボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxY)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 3" }; _inputSettingList.Add(data); } //Lボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxL)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 4" }; _inputSettingList.Add(data); } //Rボタン { var data = new InputSettingData(nameof(XBoxButtons.XboxR)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 5" }; _inputSettingList.Add(data); } //Backボタン { var data = new InputSettingData(nameof(XBoxButtons.XBoxBack)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 6" }; _inputSettingList.Add(data); } //Startボタン { var data = new InputSettingData(nameof(XBoxButtons.XBoxStart)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 7" }; _inputSettingList.Add(data); } //左スティック押し込み { var data = new InputSettingData(nameof(XBoxButtons.XBoxLeftStickClick)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 8" }; _inputSettingList.Add(data); } //右スティック押し込み { var data = new InputSettingData(nameof(XBoxButtons.XBoxRightStickClick)) { joystickNum = (int)JoystickNum.All, inputType = InputType.KeyOrMouseButton, positiveButton = "joystick button 9" }; _inputSettingList.Add(data); } //スティック入力 //左スティックX軸 { var data = new InputSettingData(nameof(XBoxAxis.XboxLeftStickX)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType.XAxis, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } //スティック入力 //左スティックY軸 { var data = new InputSettingData(nameof(XBoxAxis.XboxLeftStickY)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType.YAxis, invert = true, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } //スティック入力 //右スティックX軸 { var data = new InputSettingData(nameof(XBoxAxis.XboxRightStickX)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType._4thAxis, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } //スティック入力 //右スティックY軸 { var data = new InputSettingData(nameof(XBoxAxis.XboxRightStickY)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType._5thAxis, invert = true, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } //左トリガー,0から1の値 { var data = new InputSettingData(nameof(XBoxAxis.XBoxLeftTrigger)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType._9thAxis, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } //右トリガー,0から1の値 { var data = new InputSettingData(nameof(XBoxAxis.XBoxRightTrigger)) { joystickNum = (int)JoystickNum.All, inputType = InputType.JoystickAxis, axisType = AxisType._10thAxis, dead = 0.001f, gravity = 3f, sensitivity = 3f }; _inputSettingList.Add(data); } accessor.SetInputSettingData(_inputSettingList); }