A game about forced loneliness, made by TACStudios
1#if UNITY_EDITOR
2using UnityEngine.InputSystem.Editor;
3
4namespace UnityEngine.InputSystem
5{
6 /// <summary>
7 /// A hidden, internal object we put in the editor to bundle input system state
8 /// and help us survive domain reloads.
9 /// </summary>
10 /// <remarks>
11 /// Player doesn't need this stuff because there's no domain reloads to survive.
12 /// </remarks>
13 internal class InputSystemObject : ScriptableObject, ISerializationCallbackReceiver
14 {
15 [SerializeField] public InputSystem.State systemState;
16 [SerializeField] public bool newInputBackendsCheckedAsEnabled;
17 [SerializeField] public string settings;
18 [SerializeField] public double exitEditModeTime;
19 [SerializeField] public double enterPlayModeTime;
20
21 public void OnBeforeSerialize()
22 {
23 // Save current system state.
24 systemState.manager = InputSystem.s_Manager;
25 systemState.remote = InputSystem.s_Remote;
26 systemState.remoteConnection = InputSystem.s_RemoteConnection;
27 systemState.managerState = InputSystem.s_Manager.SaveState();
28 systemState.remotingState = InputSystem.s_Remote.SaveState();
29 systemState.userSettings = InputEditorUserSettings.s_Settings;
30 }
31
32 public void OnAfterDeserialize()
33 {
34 }
35 }
36}
37#endif // UNITY_EDITOR