diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 6a7e3b3b2e..ab8fcb7d70 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -4,6 +4,19 @@ // #define EAST 4 // #define WEST 8 +//These get to go at the top, because they're special +//You can use these defines to get the typepath of the currently running proc/verb (yes procs + verbs are objects) +/* eg: +/mob/living/carbon/human/death() + world << THIS_PROC_TYPE_STR //You can only output the string versions +Will print: "/mob/living/carbon/human/death" (you can optionally embed it in a string with () (eg: the _WITH_ARGS defines) to make it look nicer) +*/ +#define THIS_PROC_TYPE ..... +#define THIS_PROC_TYPE_STR "[THIS_PROC_TYPE]" //Because you can only obtain a string of THIS_PROC_TYPE using "[]", and it's nice to just +/+= strings +#define THIS_PROC_TYPE_STR_WITH_ARGS "[THIS_PROC_TYPE]([args.Join(",")])" +#define THIS_PROC_TYPE_WEIRD ...... //This one is WEIRD, in some cases (When used in certain defines? (eg: ASSERT)) THIS_PROC_TYPE will fail to work, but THIS_PROC_TYPE_WEIRD will work instead +#define THIS_PROC_TYPE_WEIRD_STR "[THIS_PROC_TYPE_WEIRD]" //Included for completeness +#define THIS_PROC_TYPE_WEIRD_STR_WITH_ARGS "[THIS_PROC_TYPE_WEIRD]([args.Join(",")])" //Ditto #define MIDNIGHT_ROLLOVER 864000 //number of deciseconds in a day