diff --git a/vmf/scripts/mods/vmf/modules/core/hooks.lua b/vmf/scripts/mods/vmf/modules/core/hooks.lua index 82fb224..3df68ba 100644 --- a/vmf/scripts/mods/vmf/modules/core/hooks.lua +++ b/vmf/scripts/mods/vmf/modules/core/hooks.lua @@ -86,6 +86,16 @@ local function can_rehook(mod, hook_data, obj, hook_type) end end +-- Search global table for an object that matches to get a readable string. +local function print_obj(obj) + for k, v in pairs(_G) do + if v == obj then + return k + end + end + return obj +end + -- #################################################################################################################### -- ##### Hook Creation ################################################################################################ -- #################################################################################################################### @@ -193,7 +203,7 @@ local function create_hook(mod, orig, obj, method, handler, func_name, hook_type else unique_id = obj[method] end - mod:info("(%s): Hooking '%s' from [%s] (Origin: %s) (UniqueID: %s)", func_name, method, obj, orig, unique_id) + mod:info("(%s): Hooking '%s' from [%s] (Origin: %s)", func_name, method, print_obj(obj), orig) -- Check to make sure this mod hasn't hooked it before local hook_data = _registry[mod][unique_id] @@ -218,8 +228,8 @@ local function create_hook(mod, orig, obj, method, handler, func_name, hook_type hook_data.handler = handler elseif mod:get_internal_data("allow_rehooking") then -- If we can't rehook but rehooking is enabled, send a warning that something went wrong - mod:warning("(%s): Attempting to rehook active hook [%s] with different obj or hook_type.", func_name, - method) + mod:warning("(%s): Attempting to rehook active hook [%s] with different obj or hook_type.", + func_name, method) else mod:warning("(%s): Attempting to rehook active hook [%s].", func_name, method) end @@ -281,7 +291,8 @@ local function generic_hook(mod, obj, method, handler, func_name) -- Quick check to make sure the target exists if not obj[method] then - mod:error("(%s): trying to hook function or method that doesn't exist: [%s.%s]", func_name, obj, method) + mod:error("(%s): trying to hook function or method that doesn't exist: [%s.%s]", + func_name, print_obj(obj), method) return end