diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 3e7055ad806..dc4e8349148 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -82,7 +82,7 @@ RegisterSignal(src, COMSIG_MERGER_ADDING, .proc/merger_adding) RegisterSignal(src, COMSIG_MERGER_REMOVING, .proc/merger_removing) GetMergeGroup(merger_id, merger_typecache) - register_adjacent_turfs(src) + register_adjacent_turfs() if(alarm_type) // Fucking subtypes fucking mappers fucking hhhhhhhh start_activation_process(alarm_type) @@ -219,13 +219,14 @@ continue process_results(checked_turf) -/obj/machinery/door/firedoor/proc/register_adjacent_turfs(atom/loc) +/obj/machinery/door/firedoor/proc/register_adjacent_turfs() if(!loc) return - RegisterSignal(loc, COMSIG_TURF_CALCULATED_ADJACENT_ATMOS, .proc/process_results) + var/turf/our_turf = get_turf(loc) + RegisterSignal(our_turf, COMSIG_TURF_CALCULATED_ADJACENT_ATMOS, .proc/process_results) for(var/dir in GLOB.cardinals) - var/turf/checked_turf = get_step(get_turf(loc), dir) + var/turf/checked_turf = get_step(our_turf, dir) if(!checked_turf) continue @@ -235,13 +236,14 @@ RegisterSignal(checked_turf, COMSIG_TURF_EXPOSE, .proc/process_results) -/obj/machinery/door/firedoor/proc/unregister_adjacent_turfs(atom/loc) +/obj/machinery/door/firedoor/proc/unregister_adjacent_turfs(atom/old_loc) if(!loc) return - UnregisterSignal(loc, COMSIG_TURF_CALCULATED_ADJACENT_ATMOS) + var/turf/our_turf = get_turf(old_loc) + UnregisterSignal(our_turf, COMSIG_TURF_CALCULATED_ADJACENT_ATMOS) for(var/dir in GLOB.cardinals) - var/turf/checked_turf = get_step(get_turf(loc), dir) + var/turf/checked_turf = get_step(our_turf, dir) if(!checked_turf) continue @@ -651,7 +653,7 @@ /obj/machinery/door/firedoor/Moved(atom/oldloc) . = ..() unregister_adjacent_turfs(oldloc) - register_adjacent_turfs(src) + register_adjacent_turfs() /obj/machinery/door/firedoor/closed icon_state = "door_closed"