mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-26 21:48:21 +01:00
More GC and Performance Fixes (#7248)
This commit is contained in:
@@ -213,6 +213,10 @@
|
||||
radio_controller.remove_object(src, frequency)
|
||||
air_alarm_repository.update_cache(src)
|
||||
QDEL_NULL(wires)
|
||||
if(alarm_area && alarm_area.master_air_alarm == src)
|
||||
alarm_area.master_air_alarm = null
|
||||
elect_master(exclude_self = 1)
|
||||
alarm_area = null
|
||||
return ..()
|
||||
|
||||
/obj/machinery/alarm/proc/first_run()
|
||||
@@ -236,8 +240,10 @@
|
||||
return alarm_area.master_air_alarm && !(alarm_area.master_air_alarm.stat & (NOPOWER|BROKEN))
|
||||
|
||||
|
||||
/obj/machinery/alarm/proc/elect_master()
|
||||
/obj/machinery/alarm/proc/elect_master(exclude_self = 0) //Why is this an alarm and not area proc?
|
||||
for(var/obj/machinery/alarm/AA in alarm_area)
|
||||
if(exclude_self && AA == src)
|
||||
continue
|
||||
if(!(AA.stat & (NOPOWER|BROKEN)))
|
||||
alarm_area.master_air_alarm = AA
|
||||
return 1
|
||||
|
||||
@@ -19,13 +19,6 @@ FIRE ALARM
|
||||
var/last_process = 0
|
||||
var/wiresexposed = 0
|
||||
var/buildstage = 2 // 2 = complete, 1 = no wires, 0 = circuit gone
|
||||
var/area/master_area
|
||||
|
||||
/obj/machinery/firealarm/New()
|
||||
var/area/A = get_area_master(src)
|
||||
if(!istype(A, /area))
|
||||
return
|
||||
master_area = A
|
||||
|
||||
/obj/machinery/firealarm/update_icon()
|
||||
|
||||
@@ -294,14 +287,6 @@ Just a object used in constructing fire alarms
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 6
|
||||
|
||||
var/area/master_area
|
||||
|
||||
/obj/machinery/partyalarm/New()
|
||||
var/area/A = get_area_master(src)
|
||||
if(!( istype(A, /area) ))
|
||||
return
|
||||
master_area=A
|
||||
|
||||
/obj/machinery/partyalarm/attack_hand(mob/user)
|
||||
if((user.stat && !isobserver(user)) || stat & (NOPOWER|BROKEN))
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user