Big Fat Emission PR (#18124)

* amogus

* Revert "amogus"

This reverts commit ebaa99c77b.

* Part 1

* rest of the airlocks

holy shit that took a long time

* part 2

* part 3

finale

* conflict resolution

* fixes warnings

* fixes paneloen airlock emissives

* adds back changes from #18145

* #18085 sprites

* SteelSlayer Review

readded process in status_display, idk why I removed it, it broke some functionality

* future proofing firedoors

Talked with the contributor who added emissive appearances to the codebase. As of now they wont block them unless they spawn as closed, but with future PR merges this code will work.

* solar panel PR conflict resolve

* pain

* small fix

* farie82 suggestions

Co-authored-by: Farie82 <farie82@users.noreply.github.com>

* farie82 suggestions part 2

* farie82 suggestions part 3

* finalle

pog champ ers 2000

* farie82 suggestions the sequel

Co-authored-by: Farie82 <farie82@users.noreply.github.com>

* SteelSlayer Suggestions

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

Co-authored-by: Farie82 <farie82@users.noreply.github.com>
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
Kugamo
2022-07-23 11:31:20 -05:00
committed by GitHub
parent ad7d3b443f
commit 38f335e8b9
58 changed files with 622 additions and 199 deletions
@@ -25,6 +25,22 @@
req_access = list(ACCESS_KEYCARD_AUTH)
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
/obj/machinery/keycard_auth/update_icon_state()
. = ..()
if(event_triggered_by || event_source)
icon_state = "auth_on"
else
icon_state = "auth_off"
/obj/machinery/keycard_auth/update_overlays()
. = ..()
underlays.Cut()
if(event_triggered_by || event_source)
underlays += emissive_appearance(icon, "auth_lightmask")
/obj/machinery/keycard_auth/attack_ai(mob/user as mob)
to_chat(user, "<span class='warning'>The station AI is not to interact with these devices.</span>")
return
@@ -57,9 +73,9 @@
/obj/machinery/keycard_auth/power_change()
if(powered(ENVIRON))
stat &= ~NOPOWER
icon_state = "auth_off"
else
stat |= NOPOWER
update_icon()
/obj/machinery/keycard_auth/attack_ghost(mob/user)
ui_interact(user)
@@ -115,12 +131,14 @@
swiping = FALSE
confirmed = FALSE
event_source = null
icon_state = "auth_off"
event_triggered_by = null
event_confirmed_by = null
set_light(0)
update_icon()
/obj/machinery/keycard_auth/proc/broadcast_request()
icon_state = "auth_on"
update_icon()
set_light(1, LIGHTING_MINIMUM_POWER)
for(var/obj/machinery/keycard_auth/KA in GLOB.machines)
if(KA == src) continue
KA.reset()
@@ -138,19 +156,24 @@
/obj/machinery/keycard_auth/proc/receive_request(obj/machinery/keycard_auth/source)
if(stat & (BROKEN|NOPOWER))
return
set_light(1, LIGHTING_MINIMUM_POWER)
event_source = source
busy = TRUE
active = TRUE
SStgui.update_uis(src)
icon_state = "auth_on"
update_icon()
sleep(confirm_delay)
event_source = null
icon_state = "auth_off"
update_icon()
active = FALSE
busy = FALSE
set_light(0)
/obj/machinery/keycard_auth/proc/trigger_event()
switch(event)
if("Red Alert")
@@ -123,6 +123,7 @@ GLOBAL_DATUM_INIT(security_announcement_down, /datum/announcement/priority/secur
for(var/obj/machinery/firealarm/FA in GLOB.machines)
if(is_station_contact(FA.z))
FA.update_icon()
FA.update_fire_light()
/proc/num2seclevel(num)
switch(num)