Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace NSNagasaki
- {
- using System.Collections.Generic;
- using InControl;
- using NSEipix.Base;
- using UnityEngine;
- public class InputManager : Singleton<InputManager>
- {
- private PlayerControls controls;
- private PlayerMenuControls menuControls;
- private Dictionary<InputType, PlayerAction> inputControls;
- private Dictionary<InputType, PlayerTwoAxisAction> twoAxisInputControls;
- private Dictionary<InputType, PlayerAction> inputControlsUi;
- private InputManager()
- {
- this.controls = new PlayerControls();
- this.inputControls = new Dictionary<InputType, PlayerAction>();
- this.twoAxisInputControls = new Dictionary<InputType, PlayerTwoAxisAction>();
- this.inputControls.Add(InputType.Left, this.controls.MoveLeft);
- this.inputControls.Add(InputType.Right, this.controls.MoveRight);
- this.inputControls.Add(InputType.Up, this.controls.MoveUp);
- this.inputControls.Add(InputType.Down, this.controls.MoveDown);
- this.inputControls.Add(InputType.Jump, this.controls.Jump);
- this.inputControls.Add(InputType.Crouch, this.controls.Crouch);
- this.inputControls.Add(InputType.ZoomIn, this.controls.ZoomIn);
- this.inputControls.Add(InputType.ZoomOut, this.controls.ZoomOut);
- this.inputControls.Add(InputType.Run, this.controls.Run);
- this.inputControls.Add(InputType.MouseXPositive, this.controls.MouseMovementXpositive);
- this.inputControls.Add(InputType.MouseYPositive, this.controls.MouseMovementYpositive);
- this.inputControls.Add(InputType.MouseXNegative, this.controls.MouseMovementXnegative);
- this.inputControls.Add(InputType.MouseYNegative, this.controls.MouseMovementYnegative);
- this.twoAxisInputControls.Add(InputType.MouseMove, this.controls.MouseMovement);
- this.menuControls = new PlayerMenuControls();
- this.inputControlsUi = new Dictionary<InputType, PlayerAction>();
- this.inputControlsUi.Add(InputType.Menu, this.menuControls.MenuOpen);
- GameManager.Instance.TickFixedUpdate += this.GetInput;
- }
- public bool WasButtonPressed(InputType inputType)
- {
- return this.inputControls[inputType].WasPressed;
- }
- public bool WasButtonReleased(InputType inputType)
- {
- return this.inputControls[inputType].WasReleased;
- }
- public bool IsButtonPressed(InputType inputType)
- {
- return this.inputControls[inputType].IsPressed;
- }
- public Vector2 IsControllMovedTwoAxis(InputType inputType)
- {
- return this.twoAxisInputControls[inputType].Value;
- }
- public bool WasUiButtonPressed(InputType inputType)
- {
- return this.inputControlsUi[inputType].WasPressed;
- }
- public void GetInput(float deltaTime)
- {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement