Example #1
0
    void Start()
    {
        KBind keyMap = new KBind(KCode.F, () => { Debug.Log("RESPECT"); return(true); }, "pay respects");

        AppInput.AddListener(keyMap);
        AppInput.AddListener(this.keyMap);
    }
Example #2
0
        public void CreateDefaultUserControls()
        {
            GameObject userInput = new GameObject(name + " input");
            Transform  t         = userInput.transform;

            t.SetParent(transform);
            t.localPosition = Vector3.zero;
            CharacterCamera camera = GetComponentInChildren <CharacterCamera>();

            if (camera == null)
            {
                camera = GetComponentInParent <CharacterCamera>();
            }
            UserInput mouseLook = userInput.AddComponent <UserInput>();

            if (camera != null)
            {
                mouseLook.axisBinds.Add(new AxBind(new Axis("Mouse X", 5), "mouselook X",
                                                   camera, "set_HorizontalRotateInput"));
                mouseLook.axisBinds.Add(new AxBind(new Axis("Mouse Y", 5), "mouselook Y",
                                                   camera, "set_VerticalRotateInput"));
            }
            mouseLook.enabled = false;
            UserInput userMoves  = userInput.AddComponent <UserInput>();
            KBind     rightClick = new KBind(KCode.Mouse1, "use mouselook",
                                             pressFunc: KBind.Func(mouseLook, "set_enabled", true),
                                             releaseFunc: KBind.Func(mouseLook, "set_enabled", false));

            rightClick.keyEvent.AddPress(camera, "SetMouseCursorLock", true);
            rightClick.keyEvent.AddRelease(camera, "SetMouseCursorLock", false);
            userMoves.keyBinds.Add(rightClick);
            userMoves.keyBinds.Add(new KBind(KCode.PageUp, "zoom in",
                                             pressFunc: KBind.Func(camera, "set_ZoomInput", -5f),
                                             releaseFunc: KBind.Func(camera, "set_ZoomInput", 0f)));
            userMoves.keyBinds.Add(new KBind(KCode.PageDown, "zoom out",
                                             pressFunc: KBind.Func(camera, "set_ZoomInput", 5f),
                                             releaseFunc: KBind.Func(camera, "set_ZoomInput", 0f)));
            userMoves.keyBinds.Add(new KBind(KCode.Space, "jump",
                                             pressFunc: KBind.Func(this, "set_Jump", 1f),
                                             releaseFunc: KBind.Func(this, "set_Jump", 0f)));
            userMoves.axisBinds.Add(new AxBind(new Axis("Horizontal"), "strafe right/left",
                                               this, "set_StrafeRightMovement"));
            userMoves.axisBinds.Add(new AxBind(new Axis("Vertical"), "move forward/backward",
                                               this, "set_MoveForwardMovement"));
            userMoves.axisBinds.Add(new AxBind(new Axis("Mouse ScrollWheel", -4), "zoom in/out",
                                               camera, "AddToTargetDistance"));
        }