Advertisement
AMisspelledUsernaem

InputService

Feb 21st, 2025 (edited)
431
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.25 KB | None | 0 0
  1. ---@class InputService
  2. local InputService = {}
  3. local Signal = require("Signal")
  4.  
  5.  
  6. ---KeyCode <number>
  7. ---IsHeld <boolean>
  8. InputService.KeyDown = Signal.new()
  9.  
  10. ---KeyCode <number>
  11. InputService.KeyUp = Signal.new()
  12.  
  13. ---Character <string>
  14. InputService.Writing = Signal.new()
  15.  
  16. ---MouseButton <number>
  17. ---X <number>
  18. ---Y <number>
  19. InputService.MouseDown = Signal.new()
  20.  
  21. ---MouseButton <number>
  22. ---X <number>
  23. ---Y <number>
  24. InputService.MouseUp = Signal.new()
  25.  
  26. ---MouseButton <number>
  27. ---X <number>
  28. ---Y <number>
  29. InputService.MouseDrag = Signal.new()
  30.  
  31. ---Direction <-1|1>
  32. ---X <number>
  33. ---Y <number>
  34. InputService.MouseScroll = Signal.new()
  35.  
  36. ---Text <string>
  37. InputService.Paste = Signal.new()
  38.  
  39. InputService.EventSignals = {
  40.     key = InputService.KeyDown,
  41.     key_up = InputService.KeyUp,
  42.  
  43.     char = InputService.Writing,
  44.  
  45.     mouse_click = InputService.MouseDown,
  46.     mouse_up = InputService.MouseUp,
  47.     mouse_drag = InputService.MouseDrag,
  48.     mouse_scroll = InputService.MouseScroll,
  49.  
  50.     paste = InputService.Paste,
  51. }
  52.  
  53. InputService = setmetatable(InputService, {
  54.     __newindex = function() end,
  55.     __metatable = "Metatable is locked",
  56.     __tostring = function ()
  57.         return "InputService"
  58.     end
  59. })
  60.  
  61. return InputService
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement