summaryrefslogtreecommitdiff
path: root/Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs
diff options
context:
space:
mode:
authorchai <215380520@qq.com>2024-05-19 17:03:57 +0800
committerchai <215380520@qq.com>2024-05-19 17:03:57 +0800
commitcf58771365b5953c6eac548b172aae880d1f0acd (patch)
treea49757a4b5c447cbf877584d482367a6bfe33b10 /Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs
parenteed315deae356ddfb17f28305e7cde6cdfc43313 (diff)
* rename
Diffstat (limited to 'Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs')
-rw-r--r--Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs225
1 files changed, 0 insertions, 225 deletions
diff --git a/Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs b/Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs
deleted file mode 100644
index 3a2544b..0000000
--- a/Thronefall_1_57/Decompile/Rewired.Demos/SimpleCombinedKeyboardMouseRemapping.cs
+++ /dev/null
@@ -1,225 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-
-namespace Rewired.Demos;
-
-[AddComponentMenu("")]
-public class SimpleCombinedKeyboardMouseRemapping : MonoBehaviour
-{
- private class Row
- {
- public InputAction action;
-
- public AxisRange actionRange;
-
- public Button button;
-
- public Text text;
- }
-
- private struct TargetMapping
- {
- public ControllerMap controllerMap;
-
- public int actionElementMapId;
- }
-
- private const string category = "Default";
-
- private const string layout = "Default";
-
- private const string uiCategory = "UI";
-
- private InputMapper inputMapper_keyboard = new InputMapper();
-
- private InputMapper inputMapper_mouse = new InputMapper();
-
- public GameObject buttonPrefab;
-
- public GameObject textPrefab;
-
- public RectTransform fieldGroupTransform;
-
- public RectTransform actionGroupTransform;
-
- public Text controllerNameUIText;
-
- public Text statusUIText;
-
- private List<Row> rows = new List<Row>();
-
- private TargetMapping _replaceTargetMapping;
-
- private Player player => ReInput.players.GetPlayer(0);
-
- private void OnEnable()
- {
- if (ReInput.isReady)
- {
- inputMapper_keyboard.options.timeout = 5f;
- inputMapper_mouse.options.timeout = 5f;
- inputMapper_mouse.options.ignoreMouseXAxis = true;
- inputMapper_mouse.options.ignoreMouseYAxis = true;
- inputMapper_keyboard.options.allowButtonsOnFullAxisAssignment = false;
- inputMapper_mouse.options.allowButtonsOnFullAxisAssignment = false;
- inputMapper_keyboard.InputMappedEvent += OnInputMapped;
- inputMapper_keyboard.StoppedEvent += OnStopped;
- inputMapper_mouse.InputMappedEvent += OnInputMapped;
- inputMapper_mouse.StoppedEvent += OnStopped;
- InitializeUI();
- }
- }
-
- private void OnDisable()
- {
- inputMapper_keyboard.Stop();
- inputMapper_mouse.Stop();
- inputMapper_keyboard.RemoveAllEventListeners();
- inputMapper_mouse.RemoveAllEventListeners();
- }
-
- private void RedrawUI()
- {
- controllerNameUIText.text = "Keyboard/Mouse";
- for (int i = 0; i < rows.Count; i++)
- {
- Row row = rows[i];
- InputAction action = rows[i].action;
- string text = string.Empty;
- int actionElementMapId = -1;
- for (int j = 0; j < 2; j++)
- {
- ControllerType controllerType = ((j != 0) ? ControllerType.Mouse : ControllerType.Keyboard);
- foreach (ActionElementMap item in player.controllers.maps.GetMap(controllerType, 0, "Default", "Default").ElementMapsWithAction(action.id))
- {
- if (item.ShowInField(row.actionRange))
- {
- text = item.elementIdentifierName;
- actionElementMapId = item.id;
- break;
- }
- }
- if (actionElementMapId >= 0)
- {
- break;
- }
- }
- row.text.text = text;
- row.button.onClick.RemoveAllListeners();
- int index = i;
- row.button.onClick.AddListener(delegate
- {
- OnInputFieldClicked(index, actionElementMapId);
- });
- }
- }
-
- private void ClearUI()
- {
- controllerNameUIText.text = string.Empty;
- for (int i = 0; i < rows.Count; i++)
- {
- rows[i].text.text = string.Empty;
- }
- }
-
- private void InitializeUI()
- {
- foreach (Transform item in actionGroupTransform)
- {
- Object.Destroy(item.gameObject);
- }
- foreach (Transform item2 in fieldGroupTransform)
- {
- Object.Destroy(item2.gameObject);
- }
- foreach (InputAction item3 in ReInput.mapping.ActionsInCategory("Default"))
- {
- if (item3.type == InputActionType.Axis)
- {
- CreateUIRow(item3, AxisRange.Full, item3.descriptiveName);
- CreateUIRow(item3, AxisRange.Positive, (!string.IsNullOrEmpty(item3.positiveDescriptiveName)) ? item3.positiveDescriptiveName : (item3.descriptiveName + " +"));
- CreateUIRow(item3, AxisRange.Negative, (!string.IsNullOrEmpty(item3.negativeDescriptiveName)) ? item3.negativeDescriptiveName : (item3.descriptiveName + " -"));
- }
- else if (item3.type == InputActionType.Button)
- {
- CreateUIRow(item3, AxisRange.Positive, item3.descriptiveName);
- }
- }
- RedrawUI();
- }
-
- private void CreateUIRow(InputAction action, AxisRange actionRange, string label)
- {
- GameObject obj = Object.Instantiate(textPrefab);
- obj.transform.SetParent(actionGroupTransform);
- obj.transform.SetAsLastSibling();
- obj.GetComponent<Text>().text = label;
- GameObject gameObject = Object.Instantiate(buttonPrefab);
- gameObject.transform.SetParent(fieldGroupTransform);
- gameObject.transform.SetAsLastSibling();
- rows.Add(new Row
- {
- action = action,
- actionRange = actionRange,
- button = gameObject.GetComponent<Button>(),
- text = gameObject.GetComponentInChildren<Text>()
- });
- }
-
- private void OnInputFieldClicked(int index, int actionElementMapToReplaceId)
- {
- if (index >= 0 && index < rows.Count)
- {
- ControllerMap map = player.controllers.maps.GetMap(ControllerType.Keyboard, 0, "Default", "Default");
- ControllerMap map2 = player.controllers.maps.GetMap(ControllerType.Mouse, 0, "Default", "Default");
- ControllerMap controllerMap = (map.ContainsElementMap(actionElementMapToReplaceId) ? map : ((!map2.ContainsElementMap(actionElementMapToReplaceId)) ? null : map2));
- _replaceTargetMapping = new TargetMapping
- {
- actionElementMapId = actionElementMapToReplaceId,
- controllerMap = controllerMap
- };
- StartCoroutine(StartListeningDelayed(index, map, map2, actionElementMapToReplaceId));
- }
- }
-
- private IEnumerator StartListeningDelayed(int index, ControllerMap keyboardMap, ControllerMap mouseMap, int actionElementMapToReplaceId)
- {
- yield return new WaitForSeconds(0.1f);
- inputMapper_keyboard.Start(new InputMapper.Context
- {
- actionId = rows[index].action.id,
- controllerMap = keyboardMap,
- actionRange = rows[index].actionRange,
- actionElementMapToReplace = keyboardMap.GetElementMap(actionElementMapToReplaceId)
- });
- inputMapper_mouse.Start(new InputMapper.Context
- {
- actionId = rows[index].action.id,
- controllerMap = mouseMap,
- actionRange = rows[index].actionRange,
- actionElementMapToReplace = mouseMap.GetElementMap(actionElementMapToReplaceId)
- });
- player.controllers.maps.SetMapsEnabled(state: false, "UI");
- statusUIText.text = "Listening...";
- }
-
- private void OnInputMapped(InputMapper.InputMappedEventData data)
- {
- inputMapper_keyboard.Stop();
- inputMapper_mouse.Stop();
- if (_replaceTargetMapping.controllerMap != null && data.actionElementMap.controllerMap != _replaceTargetMapping.controllerMap)
- {
- _replaceTargetMapping.controllerMap.DeleteElementMap(_replaceTargetMapping.actionElementMapId);
- }
- RedrawUI();
- }
-
- private void OnStopped(InputMapper.StoppedEventData data)
- {
- statusUIText.text = string.Empty;
- player.controllers.maps.SetMapsEnabled(state: true, "UI");
- }
-}