Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Simple Event handler, written by Averice
- event = {}
- event.inputBinds = {}
- event.mouseBinds = {}
- function event.CheckInput()
- for key,tab in pairs(event.inputBinds) do
- if( App.window:KeyHit(key) ) then
- for k, v in pairs(tab) do
- if( not v.Held ) then
- v.Func(unpack(v.Args));
- end
- end
- end
- if( App.window:KeyDown(key) ) then
- for k, v in pairs(tab) do
- if( v.Held ) then
- v.Func(unpack(v.Args));
- end
- end
- end
- end
- for but, tab in pairs(event.mouseBinds) do
- if( App.window:MouseDown(but) ) then
- for k, v in pairs(tab) do
- v.Func(unpack(v.Args));
- end
- end
- end
- end
- function event.AddInputBind(key, name, held, func, ...)
- local newInput = {
- Func = func,
- Args = {...},
- Held = held or false
- }
- event.inputBinds[key] = event.inputBinds[key] or {};
- event.inputBinds[key][name] = newInput;
- end
- function event.AddMouseBind(but, name, func, ...)
- local newInput = {
- Func = func,
- Args = {...}
- }
- event.mouseBinds[but] = event.mouseBinds[but] or {}
- event.mouseBinds[but][name] = newInput;
- end
- function event.RemoveInputBind(key, name)
- if( event.inputBinds[key] and event.inputBinds[key][name] ) then
- event.inputBinds[key][name] = nil;
- end
- end
- function event.RemoveMouseBinds(but, name)
- if( event.mouseBinds[but] and event.mouseBinds[but][name] ) then
- event.mouseBinds[but][name] = nil;
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement