diff a/code/datums/components/component.dm b/code/datums/components/component.dm (rejected hunks) @@ -47,12 +47,14 @@ procs[sig_type] = CALLBACK(src, proc_on_self) -/datum/component/proc/ReceiveSignal(sigtype, list/sig_args) +/datum/component/proc/ReceiveSignal(sigtype, ...) var/list/sps = signal_procs var/datum/callback/CB = LAZYACCESS(sps, sigtype) if(!CB) return FALSE - return CB.InvokeAsync(arglist(sig_args)) + var/list/arguments = args.Copy() + arguments.Cut(1, 2) + return CB.InvokeAsync(arglist(arguments)) /datum/component/proc/InheritComponent(datum/component/C, i_am_original) return @@ -62,14 +64,14 @@ /datum/var/list/datum_components //list of /datum/component -/datum/proc/SendSignal(sigtype, list/sig_args) +/datum/proc/SendSignal(sigtype, ...) var/list/comps = datum_components . = FALSE for(var/I in comps) var/datum/component/C = I if(!C.enabled) continue - if(C.ReceiveSignal(sigtype, sig_args)) + if(C.ReceiveSignal(arglist(args))) ComponentActivated(C) . = TRUE