Circuitry code improvements (#18822)

* Remove unncessary spawn from smoke circuit.

* Update to use untyped_list_add for primary circuitry lists

* Add a timer and callback to replace the spawn(0).

* Removed more spawn(0) and not needed callback
This commit is contained in:
Aura Dusklight
2025-11-24 21:31:49 +01:00
committed by GitHub
parent 85902a3e30
commit 048e8d5676
3 changed files with 10 additions and 13 deletions
@@ -105,13 +105,13 @@ a creative player the means to solve many problems. Circuits are held inside an
var/list/outputs_list = list()
var/list/activators_list = list()
for(var/datum/integrated_io/io in inputs)
inputs_list.Add(list(tgui_pin_data(io)))
UNTYPED_LIST_ADD(inputs_list, tgui_pin_data(io))
for(var/datum/integrated_io/io in outputs)
outputs_list.Add(list(tgui_pin_data(io)))
UNTYPED_LIST_ADD(outputs_list, tgui_pin_data(io))
for(var/datum/integrated_io/io in activators)
activators_list.Add(list(tgui_pin_data(io)))
UNTYPED_LIST_ADD(activators_list, tgui_pin_data(io))
data["inputs"] = inputs_list
data["outputs"] = outputs_list
@@ -130,12 +130,12 @@ a creative player the means to solve many problems. Circuits are held inside an
pindata["ref"] = REF(io)
var/list/linked_list = list()
for(var/datum/integrated_io/linked in io.linked)
linked_list.Add(list(list(
UNTYPED_LIST_ADD(linked_list, list(
"ref" = REF(linked),
"name" = linked.name,
"holder_ref" = REF(linked.holder),
"holder_name" = linked.holder.displayed_name,
)))
))
pindata["linked"] = linked_list
return pindata
@@ -53,10 +53,9 @@
playsound(src, 'sound/effects/smoke.ogg', 50, 1, -3)
var/datum/effect/effect/system/smoke_spread/chem/smoke_system = new()
smoke_system.set_up(reagents, 10, 0, get_turf(src))
spawn(0)
for(var/i = 1 to 8)
smoke_system.start()
reagents.clear_reagents()
for(var/i = 1 to 8)
smoke_system.start()
reagents.clear_reagents()
activate_pin(2)
/obj/item/integrated_circuit/reagent/injector