Advertisement
Guest User

Custom Signal Module

a guest
Dec 31st, 2020
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.49 KB | None | 0 0
  1. local Signal = {}
  2. Signal.__index = Signal
  3.  
  4. function Signal.new()
  5.     return setmetatable({
  6.         BindableEvent = Instance.new("BindableEvent")
  7.     }, Signal)
  8. end
  9.  
  10. function Signal:Fire(...)
  11.     self.Arguments = {...}
  12.     self.BindableEvent:Fire()
  13. end
  14.  
  15. function Signal:Wait()
  16.     self.BindableEvent.Event:Wait()
  17.    
  18.     return unpack(self.Arguments)  
  19. end
  20.  
  21. function Signal:Connect(callback)
  22.     return self.BindableEvent.Event:Connect(function()
  23.         callback(unpack(self.Arguments))
  24.     end)
  25. end
  26.  
  27. return Signal
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement