diff --git a/code/__DEFINES/MC.dm b/code/__DEFINES/MC.dm index c1c62bc2bb3..932805089e0 100644 --- a/code/__DEFINES/MC.dm +++ b/code/__DEFINES/MC.dm @@ -44,3 +44,6 @@ // This flag overrides SS_KEEP_TIMING #define SS_POST_FIRE_TIMING 128 + +//Timing subsystem +#define GLOBAL_PROC "some_magic_bullshit" \ No newline at end of file diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index 7b7b37eca21..9b154a56bd2 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -36,7 +36,10 @@ var/datum/subsystem/timer/SStimer /datum/subsystem/timer/proc/runevent(datum/timedevent/event) set waitfor = 0 - call(event.thingToCall, event.procToCall)(arglist(event.argList)) + if(event.thingToCall == GLOBAL_PROC && istext(event.procToCall)) + call("/proc/[event.procToCall]")(arglist(event.argList)) + else + call(event.thingToCall, event.procToCall)(arglist(event.argList)) /datum/subsystem/timer/Recover() processing |= SStimer.processing