Move event-checking logic inside run_event

This commit is contained in:
FireSiku 2018-06-09 14:32:48 -04:00
parent c4d5890f7e
commit 5f5ef1d317

View file

@ -7,8 +7,11 @@ local _mods_unloading_order = vmf.mods_unloading_order
-- ##### Local functions ############################################################################################### -- ##### Local functions ###############################################################################################
-- ##################################################################################################################### -- #####################################################################################################################
local function run_event(mod, event_name, event, ...) local function run_event(mod, event_name, ...)
vmf.xpcall_no_return_values(mod, "(event) " .. event_name, event, ...) local event = mod[event_name]
if event then
vmf.xpcall_no_return_values(mod, "(event) " .. event_name, event, ...)
end
end end
-- ##################################################################################################################### -- #####################################################################################################################
@ -27,10 +30,7 @@ function vmf.mods_unload_event(exit_game)
for _, mod_name in ipairs(_mods_unloading_order) do for _, mod_name in ipairs(_mods_unloading_order) do
local mod = _mods[mod_name] local mod = _mods[mod_name]
local event = mod[event_name] run_event(mod, event_name, exit_game)
if event then
run_event(mod, event_name, event, exit_game)
end
end end
end end
@ -46,10 +46,7 @@ function vmf.mods_update_event(dt)
local event_name = "update" local event_name = "update"
for _, mod in pairs(_mods) do for _, mod in pairs(_mods) do
local event = mod[event_name] run_event(mod, event_name, dt)
if event then
run_event(mod, event_name, event, dt)
end
end end
end end
@ -67,10 +64,7 @@ function vmf.mods_game_state_changed_event(status, state_name)
local event_name = "on_game_state_changed" local event_name = "on_game_state_changed"
for _, mod in pairs(_mods) do for _, mod in pairs(_mods) do
local event = mod[event_name] run_event(mod, event_name, status, state_name)
if event then
run_event(mod, event_name, event, status, state_name)
end
end end
end end
@ -86,10 +80,7 @@ function vmf.mod_setting_changed_event(mod, setting_name)
local event_name = "on_setting_changed" local event_name = "on_setting_changed"
local event = mod[event_name] run_event(mod, event_name, setting_name)
if event then
run_event(mod, event_name, event, setting_name)
end
end end
@ -104,10 +95,7 @@ function vmf.mod_enabled_event(mod, initial_call)
local event_name = "on_enabled" local event_name = "on_enabled"
local event = mod[event_name] run_event(mod, event_name, initial_call)
if event then
run_event(mod, event_name, event, initial_call)
end
end end
@ -122,10 +110,7 @@ function vmf.mod_disabled_event(mod, initial_call)
local event_name = "on_disabled" local event_name = "on_disabled"
local event = mod[event_name] run_event(mod, event_name, initial_call)
if event then
run_event(mod, event_name, event, initial_call)
end
end end
@ -140,10 +125,7 @@ function vmf.mod_user_joined_the_game(mod, player)
local event_name = "on_user_joined" local event_name = "on_user_joined"
local event = mod[event_name] run_event(mod, event_name, player)
if event then
run_event(mod, event_name, event, player)
end
end end
@ -158,10 +140,7 @@ function vmf.mod_user_left_the_game(mod, player)
local event_name = "on_user_left" local event_name = "on_user_left"
local event = mod[event_name] run_event(mod, event_name, player)
if event then
run_event(mod, event_name, event, player)
end
end end
@ -176,9 +155,6 @@ function vmf.all_mods_loaded_event()
for _, mod_name in ipairs(_mods_unloading_order) do for _, mod_name in ipairs(_mods_unloading_order) do
local mod = _mods[mod_name] local mod = _mods[mod_name]
local event = mod[event_name] run_event(mod, event_name)
if event then
run_event(mod, event_name, event)
end
end end
end end