[MIRROR] makes LoadComponent() a macro like AddComponent() is so it supports named arguments (#5802)

* makes LoadComponent() a macro like AddComponent() is so it supports named arguments

* Update miscellaneous.dm

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
This commit is contained in:
SkyratBot
2021-05-20 23:27:18 +01:00
committed by GitHub
co-authored by Kylerace Gandalf
parent 224a549da4
commit 2e473b758e
4 changed files with 8 additions and 5 deletions
+3 -3
View File
@@ -473,10 +473,10 @@
* * component_type The typepath of the component to create or return
* * ... additional arguments to be passed when creating the component if it does not exist
*/
/datum/proc/LoadComponent(component_type, ...)
. = GetComponent(component_type)
/datum/proc/_LoadComponent(list/arguments)
. = GetComponent(arguments[1])
if(!.)
return _AddComponent(args)
return _AddComponent(arguments)
/**
* Removes the component from parent, ends up with a null parent
+1 -1
View File
@@ -161,7 +161,7 @@ Unless you know what you're doing, only use the first three numbers. They're in
/datum/material/bananium/on_applied(atom/source, amount, material_flags)
. = ..()
source.LoadComponent(/datum/component/squeak, list('sound/items/bikehorn.ogg'=1), 50, 0, 0, 0, 0, 20, 0)
source.LoadComponent(/datum/component/squeak, list('sound/items/bikehorn.ogg'=1), 50, falloff_exponent = 20)
source.AddComponent(/datum/component/slippery, min(amount / 10, 80))
/datum/material/bananium/on_removed(atom/source, amount, material_flags)