Beispiel #1
0
        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--;
        }
Beispiel #2
0
 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;
 }
Beispiel #3
0
        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);
        }
Beispiel #4
0
        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"));
        }