Advertisement
Eonirr

Untitled

Jan 22nd, 2024
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. using UnityEngine;
  2. using UnityEngine.InputSystem;
  3.  
  4.  
  5. public class InputAsset : MonoBehaviour
  6. {
  7. [Header("Character Input Values")]
  8. public Vector2 move;
  9. public Vector2 look;
  10. public bool jump;
  11. public bool sprint;
  12.  
  13. [Header("Movement Settings")]
  14. public bool analogMovement;
  15.  
  16. [Header("Mouse Cursor Settings")]
  17. public bool cursorLocked = true;
  18. public bool cursorInputForLook = true;
  19.  
  20.  
  21. public void OnMove(InputValue value)
  22. {
  23. MoveInput(value.Get<Vector2>());
  24. }
  25.  
  26. public void OnLook(InputValue value)
  27. {
  28. if(cursorInputForLook)
  29. {
  30. LookInput(value.Get<Vector2>());
  31. }
  32. }
  33.  
  34. public void OnJump(InputValue value)
  35. {
  36. JumpInput(value.isPressed);
  37. }
  38.  
  39. public void OnSprint(InputValue value)
  40. {
  41. SprintInput(value.isPressed);
  42. }
  43.  
  44.  
  45. public void MoveInput(Vector2 newMoveDirection)
  46. {
  47. move = newMoveDirection;
  48. }
  49.  
  50. public void LookInput(Vector2 newLookDirection)
  51. {
  52. look = newLookDirection;
  53. }
  54.  
  55. public void JumpInput(bool newJumpState)
  56. {
  57. jump = newJumpState;
  58. }
  59.  
  60. public void SprintInput(bool newSprintState)
  61. {
  62. sprint = newSprintState;
  63. }
  64.  
  65. private void OnApplicationFocus(bool hasFocus)
  66. {
  67. SetCursorState(cursorLocked);
  68. }
  69.  
  70. private void SetCursorState(bool newState)
  71. {
  72. Cursor.lockState = newState ? CursorLockMode.Locked : CursorLockMode.None;
  73. }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement