Autolathe and wires panel TGUI, autolathe queueing. (#17978)

* autolathe 1

* FUCK MY LIFE

* more fixes

* autolathe queueing

* cl

* garbage collection

* wire fixes

* some final tweaks

* on second thought this might be annoying

* fix that

* whoopsies

* that didn't work for shit

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
This commit is contained in:
Matt Atlas
2023-12-21 11:40:49 +00:00
committed by GitHub
co-authored by Matt Atlas
parent 8b48ee0be2
commit 23c0fd7b4f
64 changed files with 1839 additions and 1184 deletions
+5 -5
View File
@@ -18,10 +18,10 @@
var/list/attached_overlays = null
var/obj/item/device/assembly_holder/holder = null
var/cooldown = 0 //To prevent spam
var/wires = WIRE_RECEIVE | WIRE_PULSE
var/wires = WIRE_RECEIVE_ASSEMBLY | WIRE_PULSE_ASSEMBLY
var/const/WIRE_RECEIVE = 1 //Allows Pulsed(0) to call Activate()
var/const/WIRE_PULSE = 2 //Allows Pulse(0) to act on the holder
var/const/WIRE_RECEIVE_ASSEMBLY = 1 //Allows Pulsed(0) to call Activate()
var/const/WIRE_PULSE_ASSEMBLY = 2 //Allows Pulse(0) to act on the holder
var/const/WIRE_PULSE_SPECIAL = 4 //Allows Pulse(0) to act on the holders special assembly
var/const/WIRE_RADIO_RECEIVE = 8 //Allows Pulsed(1) to call Activate()
var/const/WIRE_RADIO_PULSE = 16 //Allows Pulse(1) to send a radio message
@@ -39,7 +39,7 @@
// Called when another assembly acts on this one, var/radio will determine where it came from for wire calcs
/obj/item/device/assembly/proc/pulsed(var/radio = 0)
if(holder && (wires & WIRE_RECEIVE))
if(holder && (wires & WIRE_RECEIVE_ASSEMBLY))
activate()
if(radio && (wires & WIRE_RADIO_RECEIVE))
activate()
@@ -47,7 +47,7 @@
// Called when this device attempts to act on another device, var/radio determines if it was sent via radio or direct
/obj/item/device/assembly/proc/pulse(var/radio = 0)
if(holder && (wires & WIRE_PULSE))
if(holder && (wires & WIRE_PULSE_ASSEMBLY))
holder.process_activation(src, TRUE, FALSE)
if(holder && (wires & WIRE_PULSE_SPECIAL))
holder.process_activation(src, FALSE, TRUE)
+1 -1
View File
@@ -7,7 +7,7 @@
origin_tech = list(TECH_MAGNET = 1)
matter = list(DEFAULT_WALL_MATERIAL = 800, MATERIAL_GLASS = 200)
movable_flags = MOVABLE_FLAG_PROXMOVE
wires = WIRE_PULSE
wires = WIRE_PULSE_ASSEMBLY
secured = FALSE
+2 -2
View File
@@ -7,7 +7,7 @@
pickup_sound = 'sound/items/pickup/component.ogg'
origin_tech = list(TECH_MAGNET = 1)
matter = list(DEFAULT_WALL_MATERIAL = 1000, MATERIAL_GLASS = 200)
wires = WIRE_RECEIVE | WIRE_PULSE | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
wires = WIRE_RECEIVE_ASSEMBLY | WIRE_PULSE_ASSEMBLY | WIRE_RADIO_PULSE | WIRE_RADIO_RECEIVE
secured = TRUE
@@ -92,7 +92,7 @@
/obj/item/device/assembly/signaler/pulse(var/radio = FALSE)
if(connected && wires)
connected.Pulse(src)
connected.pulse_assembly(src)
else if(holder)
holder.process_activation(src, 1, 0)
else if(machine)
+1 -1
View File
@@ -7,7 +7,7 @@
origin_tech = list(TECH_MAGNET = 1)
matter = list(DEFAULT_WALL_MATERIAL = 500, MATERIAL_GLASS = 50)
wires = WIRE_PULSE
wires = WIRE_PULSE_ASSEMBLY
secured = FALSE
var/timing = FALSE