public override void OnInspectorGUI() { var so = serializedObject; so.Update(); InputActuatorComponent o = so.targetObject as InputActuatorComponent; _ = o.ActionSpec; EditorGUI.indentLevel++; EditorGUI.BeginDisabledGroup(true); EditorGUILayout.PropertyField(so.FindProperty(k_ActionSpecName)); EditorGUI.EndDisabledGroup(); EditorGUI.indentLevel--; }
public override void Setup() { base.Setup(); m_Actions = new TestPushBlockActions(); m_Asset = m_Actions.asset; m_GameObject = new GameObject(); m_PlayerInput = m_GameObject.AddComponent <PlayerInput>(); m_Provider = m_GameObject.AddComponent <TestProvider>(); m_Provider.asset = m_Asset; m_Provider.collection = m_Actions; m_ActuatorComponent = m_GameObject.AddComponent <InputActuatorComponent>(); m_BehaviorParameters = m_GameObject.AddComponent <BehaviorParameters>(); m_BehaviorParameters.BehaviorName = "InputTest"; m_BehaviorParameters.BehaviorType = BehaviorType.Default; }
public void InputActuatorComponentTestGenerateActuatorsFromAsset() { // Use the Assert class to test conditions. m_PlayerInput.actions = m_Asset; m_PlayerInput.defaultActionMap = m_Asset.actionMaps[0].name; var inputActionMap = m_Asset.FindActionMap(m_PlayerInput.defaultActionMap); InputActuatorComponent.RegisterLayoutBuilder( inputActionMap, "TestLayout"); var device = InputSystem.AddDevice("TestLayout"); var actuators = InputActuatorComponent.CreateActuatorsFromMap(inputActionMap, m_BehaviorParameters, device, new InputActuatorEventContext()); Assert.IsTrue(actuators.Length == 2); Assert.IsTrue(actuators[0].ActionSpec.Equals(ActionSpec.MakeContinuous(2))); Assert.IsTrue(actuators[1].ActionSpec.NumDiscreteActions == 1); }
public void InputActuatorComponentTestCreateDevice() { // Use the Assert class to test conditions. m_PlayerInput.actions = m_Asset; m_PlayerInput.defaultActionMap = m_Asset.actionMaps[0].name; // need to call this to load the layout in the input system InputActuatorComponent.RegisterLayoutBuilder( m_Asset.FindActionMap(m_PlayerInput.defaultActionMap), "TestLayout"); InputSystem.LoadLayout("TestLayout"); var device = InputSystem.AddDevice("TestLayout"); Assert.AreEqual("TestLayout", device.layout); Assert.IsTrue(device.children.Count == 2); Assert.AreEqual(device.children[0].path, $"{device.path}{InputControlPath.Separator}movement"); Assert.AreEqual(device.children[1].path, $"{device.path}{InputControlPath.Separator}jump"); Assert.NotNull(InputSystem.LoadLayout("TestLayout")); }