diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index cb28d9770a8..d76b70b582e 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -23,6 +23,10 @@
name = "airlock"
icon = 'icons/obj/doors/doorint.dmi'
icon_state = "door_closed"
+ autoclose = 1
+ explosion_block = 1
+ assemblytype = /obj/structure/door_assembly
+ normalspeed = 1
var/aiControlDisabled = 0 //If 1, AI control is disabled until the AI hacks back in and disables the lock. If 2, the AI has bypassed the lock. If -1, the control is enabled but the AI had bypassed it earlier, so if it is disabled again the AI would have no trouble getting back in.
var/hackProof = 0 // if 1, this door can't be hacked by the AI
var/electrified_until = 0 // World time when the door is no longer electrified. -1 if it is permanently electrified until someone fixes it.
@@ -40,15 +44,11 @@
var/obj/machinery/door/airlock/closeOther = null
var/closeOtherId = null
var/lockdownbyai = 0
- assemblytype = /obj/structure/door_assembly
var/mineral = null
var/justzap = 0
var/safe = 1
- normalspeed = 1
var/obj/item/weapon/airlock_electronics/electronics = null
var/hasShocked = 0 //Prevents multiple shocks from happening
- autoclose = 1
- explosion_block = 1
var/doorOpen = 'sound/machines/airlock_open.ogg'
var/doorClose = 'sound/machines/airlock_close.ogg'
var/doorDeni = 'sound/machines/DeniedBeep.ogg' // i'm thinkin' Deni's
@@ -57,7 +57,7 @@
var/is_special = 0
/obj/machinery/door/airlock/welded
- welded = 1
+ welded = TRUE
/*
About the new airlock wires panel:
* An airlock wire dialog can be accessed by the normal way or by using wirecutters or a multitool on the door while the wire-panel is open. This would show the following wires, which you can either wirecut/mend or send a multitool pulse through. There are 9 wires.
@@ -101,16 +101,16 @@ About the new airlock wires panel:
electrified_timer = null
return ..()
-/obj/machinery/door/airlock/bumpopen(mob/living/user as mob) //Airlocks now zap you when you 'bump' them open when they're electrified. --NeoFite
+/obj/machinery/door/airlock/bumpopen(mob/living/user) //Airlocks now zap you when you 'bump' them open when they're electrified. --NeoFite
if(!issilicon(usr))
- if(src.isElectrified())
- if(!src.justzap)
- if(src.shock(user, 100))
- src.justzap = 1
+ if(isElectrified())
+ if(!justzap)
+ if(shock(user, 100))
+ justzap = 1
spawn (10)
- src.justzap = 0
+ justzap = 0
return
- else /*if(src.justzap)*/
+ else /*if(justzap)*/
return
else if(user.hallucination > 50 && prob(10) && !operating)
to_chat(user, "You feel a powerful shock course through your body!")
@@ -119,10 +119,9 @@ About the new airlock wires panel:
return
..(user)
-/obj/machinery/door/airlock/bumpopen(mob/living/simple_animal/user as mob)
+/obj/machinery/door/airlock/bumpopen(mob/living/simple_animal/user)
..(user)
-
/obj/machinery/door/airlock/autoclose()
autoclose_timer = 0
if(!qdeleted(src) && !density && !operating && !locked && !welded && autoclose)
@@ -130,27 +129,27 @@ About the new airlock wires panel:
return
/obj/machinery/door/airlock/proc/isElectrified()
- if(src.electrified_until != 0)
+ if(electrified_until != 0)
return 1
return 0
-/obj/machinery/door/airlock/proc/isWireCut(var/wireIndex)
+/obj/machinery/door/airlock/proc/isWireCut(wireIndex)
// You can find the wires in the datum folder.
return wires.IsIndexCut(wireIndex)
/obj/machinery/door/airlock/proc/canAIControl()
- return ((src.aiControlDisabled!=1) && (!src.isAllPowerLoss()));
+ return ((aiControlDisabled!=1) && (!isAllPowerLoss()));
/obj/machinery/door/airlock/proc/canAIHack()
- return ((src.aiControlDisabled==1) && (!hackProof) && (!src.isAllPowerLoss()));
+ return ((aiControlDisabled==1) && (!hackProof) && (!isAllPowerLoss()));
/obj/machinery/door/airlock/proc/arePowerSystemsOn()
if(stat & (NOPOWER|BROKEN))
return 0
- return (src.main_power_lost_until==0 || src.backup_power_lost_until==0)
+ return (main_power_lost_until==0 || backup_power_lost_until==0)
/obj/machinery/door/airlock/requiresID()
- return !(src.isWireCut(AIRLOCK_WIRE_IDSCAN) || aiDisabledIdScanner)
+ return !(isWireCut(AIRLOCK_WIRE_IDSCAN) || aiDisabledIdScanner)
/obj/machinery/door/airlock/proc/isAllPowerLoss()
if(stat & (NOPOWER|BROKEN))
@@ -160,10 +159,10 @@ About the new airlock wires panel:
return 0
/obj/machinery/door/airlock/proc/mainPowerCablesCut()
- return src.isWireCut(AIRLOCK_WIRE_MAIN_POWER1)
+ return isWireCut(AIRLOCK_WIRE_MAIN_POWER1)
/obj/machinery/door/airlock/proc/backupPowerCablesCut()
- return src.isWireCut(AIRLOCK_WIRE_BACKUP_POWER1)
+ return isWireCut(AIRLOCK_WIRE_BACKUP_POWER1)
/obj/machinery/door/airlock/proc/loseMainPower()
main_power_lost_until = mainPowerCablesCut() ? -1 : world.time + SecondsToTicks(60)
@@ -206,7 +205,7 @@ About the new airlock wires panel:
backup_power_lost_until = main_power_lost_until == 0 ? -1 : 0
update_icon()
-/obj/machinery/door/airlock/proc/electrify(var/duration, var/feedback = 0)
+/obj/machinery/door/airlock/proc/electrify(duration, feedback = 0)
if(electrified_timer)
deltimer(electrified_timer)
electrified_timer = null
@@ -252,7 +251,8 @@ About the new airlock wires panel:
return 0
/obj/machinery/door/airlock/update_icon()
- if(overlays) overlays.Cut()
+ if(overlays)
+ overlays.Cut()
overlays = list()
if(emergency && arePowerSystemsOn())
overlays += image('icons/obj/doors/doorint.dmi', "elights")
@@ -271,11 +271,11 @@ About the new airlock wires panel:
return
-
/obj/machinery/door/airlock/do_animate(animation)
switch(animation)
if("opening")
- if(overlays) overlays.Cut()
+ if(overlays)
+ overlays.Cut()
if(p_open)
spawn(2) // The only work around that works. Downside is that the door will be gone for a millisecond.
flick("o_door_opening", src) //can not use flick due to BYOND bug updating overlays right before flicking
@@ -284,7 +284,8 @@ About the new airlock wires panel:
flick("door_opening", src)//[stat ? "_stat":]
update_icon()
if("closing")
- if(overlays) overlays.Cut()
+ if(overlays)
+ overlays.Cut()
if(p_open)
spawn(2)
flick("o_door_closing", src)
@@ -296,7 +297,7 @@ About the new airlock wires panel:
if(density)
flick("door_spark", src)
if("deny")
- if(density && src.arePowerSystemsOn())
+ if(density && arePowerSystemsOn())
playsound(src, doorDeni, 50, 0, 3)
flick("door_deny", src)
return
@@ -309,7 +310,7 @@ About the new airlock wires panel:
/obj/machinery/door/airlock/attack_ai(mob/user)
ui_interact(user)
-/obj/machinery/door/airlock/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
+/obj/machinery/door/airlock/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = 1)
ui = nanomanager.try_update_ui(user, src, ui_key, ui, force_open)
if(!ui)
ui = new(user, src, ui_key, "door_control.tmpl", "Door Controls - [src]", 600, 375)
@@ -336,53 +337,53 @@ About the new airlock wires panel:
data["commands"] = commands
return data
-/obj/machinery/door/airlock/proc/hack(mob/user as mob)
- if(src.aiHacking==0)
- src.aiHacking=1
+/obj/machinery/door/airlock/proc/hack(mob/user)
+ if(aiHacking==0)
+ aiHacking=1
spawn(20)
//TODO: Make this take a minute
to_chat(user, "Airlock AI control has been blocked. Beginning fault-detection.")
sleep(50)
- if(src.canAIControl())
+ if(canAIControl())
to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.")
- src.aiHacking=0
+ aiHacking=0
return
- else if(!src.canAIHack(user))
+ else if(!canAIHack(user))
to_chat(user, "We've lost our connection! Unable to hack airlock.")
- src.aiHacking=0
+ aiHacking=0
return
to_chat(user, "Fault confirmed: airlock control wire disabled or cut.")
sleep(20)
to_chat(user, "Attempting to hack into airlock. This may take some time.")
sleep(200)
- if(src.canAIControl())
+ if(canAIControl())
to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.")
- src.aiHacking=0
+ aiHacking=0
return
- else if(!src.canAIHack(user))
+ else if(!canAIHack(user))
to_chat(user, "We've lost our connection! Unable to hack airlock.")
- src.aiHacking=0
+ aiHacking=0
return
to_chat(user, "Upload access confirmed. Loading control program into airlock software.")
sleep(170)
- if(src.canAIControl())
+ if(canAIControl())
to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.")
- src.aiHacking=0
+ aiHacking=0
return
- else if(!src.canAIHack(user))
+ else if(!canAIHack(user))
to_chat(user, "We've lost our connection! Unable to hack airlock.")
- src.aiHacking=0
+ aiHacking=0
return
to_chat(user, "Transfer complete. Forcing airlock to execute program.")
sleep(50)
//disable blocked control
- src.aiControlDisabled = 2
+ aiControlDisabled = 2
to_chat(user, "Receiving control information from airlock.")
sleep(10)
//bring up airlock dialog
- src.aiHacking = 0
+ aiHacking = 0
if(user)
- src.attack_ai(user)
+ attack_ai(user)
/obj/machinery/door/airlock/CanPass(atom/movable/mover, turf/target, height=0)
if(isElectrified() && density && istype(mover, /obj/item))
@@ -393,16 +394,16 @@ About the new airlock wires panel:
s.start()
return ..()
-/obj/machinery/door/airlock/attack_hand(mob/user as mob)
- if(!istype(user, /mob/living/silicon))
- if(src.isElectrified())
- if(src.shock(user, 100))
+/obj/machinery/door/airlock/attack_hand(mob/user)
+ if(!issilicon(user))
+ if(isElectrified())
+ if(shock(user, 100))
return
- if(ishuman(user) && prob(40) && src.density)
+ if(ishuman(user) && prob(40) && density)
var/mob/living/carbon/human/H = user
if(H.getBrainLoss() >= 60)
- playsound(src.loc, 'sound/effects/bang.ogg', 25, 1)
+ playsound(loc, 'sound/effects/bang.ogg', 25, 1)
if(!istype(H.head, /obj/item/clothing/head/helmet))
visible_message("[user] headbutts the airlock.")
var/obj/item/organ/external/affecting = H.get_organ("head")
@@ -414,13 +415,13 @@ About the new airlock wires panel:
visible_message("[user] headbutts the airlock. Good thing they're wearing a helmet.")
return
- if(src.p_open)
+ if(p_open)
wires.Interact(user)
else
..(user)
return
-/obj/machinery/door/airlock/CanUseTopic(var/mob/user)
+/obj/machinery/door/airlock/CanUseTopic(mob/user)
if(!issilicon(user) && !isobserver(user))
return STATUS_CLOSE
@@ -439,14 +440,14 @@ About the new airlock wires panel:
return ..()
-/obj/machinery/door/airlock/Topic(href, href_list, var/nowindow = 0)
+/obj/machinery/door/airlock/Topic(href, href_list, nowindow = 0)
if(..())
return 1
var/activate = text2num(href_list["activate"])
switch(href_list["command"])
if("idscan")
- if(src.isWireCut(AIRLOCK_WIRE_IDSCAN))
+ if(isWireCut(AIRLOCK_WIRE_IDSCAN))
to_chat(usr, "The IdScan wire has been cut - IdScan feature permanently disabled.")
else if(activate && aiDisabledIdScanner)
aiDisabledIdScanner = 0
@@ -536,9 +537,9 @@ About the new airlock wires panel:
update_icon()
return 1
-/obj/machinery/door/airlock/attackby(obj/item/C, mob/user as mob, params)
+/obj/machinery/door/airlock/attackby(obj/item/C, mob/user, params)
// to_chat(world, text("airlock attackby src [] obj [] mob []", src, C, user))
- if(!istype(usr, /mob/living/silicon))
+ if(!issilicon(usr))
if(isElectrified())
if(shock(user, 75))
return
@@ -546,7 +547,7 @@ About the new airlock wires panel:
return
add_fingerprint(user)
- if((istype(C, /obj/item/weapon/weldingtool) && !operating && density))
+ if((iswelder(C) && !operating && density))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(0,user))
if(!welded)
@@ -557,25 +558,25 @@ About the new airlock wires panel:
return
else
return
- else if(istype(C, /obj/item/weapon/screwdriver))
- p_open = !( p_open )
+ else if(isscrewdriver(C))
+ p_open = !p_open
update_icon()
- else if(istype(C, /obj/item/weapon/wirecutters))
+ else if(iswirecutter(C))
return attack_hand(user)
- else if(istype(C, /obj/item/device/multitool))
+ else if(ismultitool(C))
return attack_hand(user)
else if(istype(C, /obj/item/device/assembly/signaler))
return attack_hand(user)
else if(istype(C, /obj/item/weapon/pai_cable)) // -- TLE
var/obj/item/weapon/pai_cable/cable = C
cable.plugin(src, user)
- else if(istype(C, /obj/item/weapon/crowbar) || istype(C, /obj/item/weapon/twohanded/fireaxe))
+ else if(iscrowbar(C) || istype(C, /obj/item/weapon/twohanded/fireaxe))
var/beingcrowbarred = null
- if(istype(C, /obj/item/weapon/crowbar) )
+ if(iscrowbar(C))
beingcrowbarred = 1 //derp, Agouri
else
beingcrowbarred = 0
- if( beingcrowbarred && p_open && (emagged || (density && welded && (!operating || emagged) && !arePowerSystemsOn() && !locked)) )
+ if(beingcrowbarred && p_open && (emagged || (density && welded && (!operating || emagged) && !arePowerSystemsOn() && !locked)))
playsound(loc, C.usesound, 100, 1)
user.visible_message("[user] removes the electronics from the airlock assembly.", "You start to remove electronics from the airlock assembly.")
if(do_after(user, 40 * C.toolspeed, target = src))
@@ -595,7 +596,7 @@ About the new airlock wires panel:
var/obj/item/weapon/airlock_electronics/ae
if(!electronics)
- ae = new/obj/item/weapon/airlock_electronics( loc )
+ ae = new/obj/item/weapon/airlock_electronics(loc)
if(!req_access)
check_access()
if(req_access.len)
@@ -642,39 +643,43 @@ About the new airlock wires panel:
to_chat(user, "The airlock's motors resist your efforts to force it.")
else if(locked)
to_chat(user, "The airlock's bolts prevent it from being forced.")
- else if( !welded && !operating )
+ else if(!welded && !operating)
if(density)
- if(beingcrowbarred == 0) //being fireaxe'd
+ if(!beingcrowbarred) //being fireaxe'd
var/obj/item/weapon/twohanded/fireaxe/F = C
if(F.wielded)
- spawn(0) open(1)
+ spawn(0)
+ open(1)
else
to_chat(user, "You need to be wielding \the [C] to do that.")
else
- spawn(0) open(1)
+ spawn(0)
+ open(1)
else
- if(beingcrowbarred == 0)
+ if(!beingcrowbarred)
var/obj/item/weapon/twohanded/fireaxe/F = C
if(F.wielded)
- spawn(0) close(1)
+ spawn(0)
+ close(1)
else
to_chat(user, "You need to be wielding \the [C] to do that.")
else
- spawn(0) close(1)
+ spawn(0)
+ close(1)
else
..()
return
-/obj/machinery/door/airlock/plasma/attackby(C as obj, mob/user as mob, params)
+/obj/machinery/door/airlock/plasma/attackby(obj/C, mob/user, params)
if(is_hot(C) > 300)
message_admins("Plasma airlock ignited by [key_name_admin(user)] in ([x],[y],[z] - JMP)")
log_game("Plasma wall ignited by [key_name(user)] in ([x],[y],[z])")
ignite(is_hot(C))
..()
-/obj/machinery/door/airlock/hatch/gamma/attackby(C as obj, mob/user as mob, params)
+/obj/machinery/door/airlock/hatch/gamma/attackby(obj/C, mob/user, params)
// to_chat(world, text("airlock attackby src [] obj [] mob []", src, C, user))
- if(!istype(usr, /mob/living/silicon))
+ if(!issilicon(user))
if(isElectrified())
if(shock(user, 75))
return
@@ -690,7 +695,7 @@ About the new airlock wires panel:
return
add_fingerprint(user)
- if((istype(C, /obj/item/weapon/weldingtool) && !operating && density))
+ if((iswelder(C) && !operating && density))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(0,user))
if(!welded)
@@ -702,10 +707,9 @@ About the new airlock wires panel:
else
return
-
-/obj/machinery/door/airlock/highsecurity/red/attackby(C as obj, mob/user as mob, params)
+/obj/machinery/door/airlock/highsecurity/red/attackby(obj/C, mob/user, params)
// to_chat(world, text("airlock attackby src [] obj [] mob []", src, C, user))
- if(!istype(usr, /mob/living/silicon))
+ if(!issilicon(user))
if(isElectrified())
if(shock(user, 75))
return
@@ -713,7 +717,7 @@ About the new airlock wires panel:
return
add_fingerprint(user)
- if((istype(C, /obj/item/weapon/weldingtool) && !operating && density))
+ if((iswelder(C) && !operating && density))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(0,user))
if(!welded)
@@ -725,11 +729,11 @@ About the new airlock wires panel:
else
return
-/obj/machinery/door/airlock/open(var/forced=0)
+/obj/machinery/door/airlock/open(forced=0)
if(operating || welded || locked || emagged)
return 0
if(!forced)
- if( !arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_OPEN_DOOR) )
+ if(!arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_OPEN_DOOR))
return 0
use_power(360) //360 W seems much more appropriate for an actuator moving an industrial door capable of crushing people
if(forced)
@@ -740,19 +744,19 @@ About the new airlock wires panel:
closeOther.close()
return ..()
-/obj/machinery/door/airlock/close(var/forced=0, var/override = 0)
+/obj/machinery/door/airlock/close(forced=0, override = 0)
if((operating & !override) || welded || locked || emagged)
return
if(!forced)
//despite the name, this wire is for general door control.
//Bolts are already covered by the check for locked, above
- if( !arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_OPEN_DOOR) )
+ if(!arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_OPEN_DOOR))
return
if(safe)
for(var/turf/turf in locs)
if(locate(/mob/living) in turf)
// playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) //THE BUZZING IT NEVER STOPS -Pete
- spawn (60)
+ spawn(60)
autoclose()
return
@@ -770,11 +774,13 @@ About the new airlock wires panel:
operating = 1
do_animate("closing")
layer = 3.1
- if(!override) sleep(5)
+ if(!override)
+ sleep(5)
density = 1
if(!safe)
crush()
- if(!override) sleep(5)
+ if(!override)
+ sleep(5)
update_icon()
if(visible && !glass)
set_opacity(1)
@@ -787,34 +793,36 @@ About the new airlock wires panel:
return
-/obj/machinery/door/airlock/proc/lock(var/forced=0)
+/obj/machinery/door/airlock/proc/lock(forced=0)
if(locked)
return 0
- if(operating && !forced) return 0
+ if(operating && !forced)
+ return 0
locked = 1
playsound(src, boltDown, 30, 0, 3)
update_icon()
return 1
-/obj/machinery/door/airlock/proc/unlock(var/forced=0)
+/obj/machinery/door/airlock/proc/unlock(forced=0)
if(!locked)
return
if(!forced)
- if(operating || !arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS)) return
+ if(operating || !arePowerSystemsOn() || isWireCut(AIRLOCK_WIRE_DOOR_BOLTS))
+ return
locked = 0
playsound(src,boltUp, 30, 0, 3)
update_icon()
return 1
-/obj/machinery/door/airlock/CanAStarPass(var/obj/item/weapon/card/id/ID)
+/obj/machinery/door/airlock/CanAStarPass(obj/item/weapon/card/id/ID)
//Airlock is passable if it is open (!density), bot has access, and is not bolted shut)
return !density || (check_access(ID) && !locked && arePowerSystemsOn())
-/obj/machinery/door/airlock/emp_act(var/severity)
+/obj/machinery/door/airlock/emp_act(severity)
if(prob(40/severity))
var/duration = world.time + SecondsToTicks(30 / severity)
if(duration > electrified_until)
@@ -848,7 +856,6 @@ About the new airlock wires panel:
if(origin)
shockedby += "\[[time_stamp()]\][origin](ckey:[origin.ckey])"
-
/obj/machinery/door/airlock/disable_lockdown()
// Must be powered and have working AI wire.
if(canAIControl(src) && !stat)
diff --git a/code/game/machinery/doors/airlock_control.dm b/code/game/machinery/doors/airlock_control.dm
index 17ebdf96ce2..cc7da319ddd 100644
--- a/code/game/machinery/doors/airlock_control.dm
+++ b/code/game/machinery/doors/airlock_control.dm
@@ -1,31 +1,34 @@
#define AIRLOCK_CONTROL_RANGE 22
// This code allows for airlocks to be controlled externally by setting an id_tag and comm frequency (disables ID access)
-obj/machinery/door/airlock
+/obj/machinery/door/airlock
var/id_tag
var/frequency
var/shockedby = list()
var/datum/radio_frequency/radio_connection
var/cur_command = null //the command the door is currently attempting to complete
-obj/machinery/door/airlock/process()
+/obj/machinery/door/airlock/process()
if(arePowerSystemsOn() && cur_command)
execute_current_command()
else
return PROCESS_KILL
-obj/machinery/door/airlock/receive_signal(datum/signal/signal)
- if(!arePowerSystemsOn()) return //no power
+/obj/machinery/door/airlock/receive_signal(datum/signal/signal)
+ if(!arePowerSystemsOn())
+ return //no power
- if(!signal || signal.encryption) return
+ if(!signal || signal.encryption)
+ return
- if(id_tag != signal.data["tag"] || !signal.data["command"]) return
+ if(id_tag != signal.data["tag"] || !signal.data["command"])
+ return
cur_command = signal.data["command"]
spawn()
execute_current_command()
-obj/machinery/door/airlock/proc/execute_current_command()
+/obj/machinery/door/airlock/proc/execute_current_command()
if(operating || emagged)
return //emagged or busy doing something else
@@ -39,7 +42,7 @@ obj/machinery/door/airlock/proc/execute_current_command()
if(!(src in machine_processing))
machine_processing += src
-obj/machinery/door/airlock/proc/do_command(var/command)
+/obj/machinery/door/airlock/proc/do_command(command)
switch(command)
if("open")
open()
@@ -70,7 +73,7 @@ obj/machinery/door/airlock/proc/do_command(var/command)
send_status()
-obj/machinery/door/airlock/proc/command_completed(var/command)
+/obj/machinery/door/airlock/proc/command_completed(command)
switch(command)
if("open")
return (!density)
@@ -92,7 +95,7 @@ obj/machinery/door/airlock/proc/command_completed(var/command)
return 1 //Unknown command. Just assume it's completed.
-obj/machinery/door/airlock/proc/send_status(var/bumped = 0)
+/obj/machinery/door/airlock/proc/send_status(bumped = 0)
if(radio_connection)
var/datum/signal/signal = new
signal.transmission_method = 1 //radio signal
@@ -107,33 +110,29 @@ obj/machinery/door/airlock/proc/send_status(var/bumped = 0)
radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
-
-obj/machinery/door/airlock/open(surpress_send)
+/obj/machinery/door/airlock/open(surpress_send)
. = ..()
if(!surpress_send) send_status()
-
-obj/machinery/door/airlock/close(surpress_send)
+/obj/machinery/door/airlock/close(surpress_send)
. = ..()
if(!surpress_send) send_status()
-
-obj/machinery/door/airlock/Bumped(atom/AM)
+/obj/machinery/door/airlock/Bumped(atom/AM)
..(AM)
if(istype(AM, /obj/mecha))
var/obj/mecha/mecha = AM
- if(density && radio_connection && mecha.occupant && (src.allowed(mecha.occupant) || src.check_access_list(mecha.operation_req_access)))
+ if(density && radio_connection && mecha.occupant && (allowed(mecha.occupant) || check_access_list(mecha.operation_req_access)))
send_status(1)
return
-obj/machinery/door/airlock/proc/set_frequency(new_frequency)
+/obj/machinery/door/airlock/proc/set_frequency(new_frequency)
radio_controller.remove_object(src, frequency)
if(new_frequency)
frequency = new_frequency
radio_connection = radio_controller.add_object(src, frequency, RADIO_AIRLOCK)
-
-obj/machinery/door/airlock/initialize()
+/obj/machinery/door/airlock/initialize()
..()
if(frequency)
set_frequency(frequency)
@@ -141,20 +140,16 @@ obj/machinery/door/airlock/initialize()
update_icon()
-obj/machinery/door/airlock/New()
+/obj/machinery/door/airlock/New()
..()
if(radio_controller)
set_frequency(frequency)
-
-
-
-obj/machinery/airlock_sensor
+/obj/machinery/airlock_sensor
icon = 'icons/obj/airlock_machines.dmi'
icon_state = "airlock_sensor_off"
name = "airlock sensor"
-
anchored = 1
power_channel = ENVIRON
@@ -169,7 +164,7 @@ obj/machinery/airlock_sensor
var/alert = 0
var/previousPressure
-obj/machinery/airlock_sensor/update_icon()
+/obj/machinery/airlock_sensor/update_icon()
if(on)
if(alert)
icon_state = "airlock_sensor_alert"
@@ -178,7 +173,7 @@ obj/machinery/airlock_sensor/update_icon()
else
icon_state = "airlock_sensor_off"
-obj/machinery/airlock_sensor/attack_hand(mob/user)
+/obj/machinery/airlock_sensor/attack_hand(mob/user)
var/datum/signal/signal = new
signal.transmission_method = 1 //radio signal
signal.data["tag"] = master_tag
@@ -187,7 +182,7 @@ obj/machinery/airlock_sensor/attack_hand(mob/user)
radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
flick("airlock_sensor_cycle", src)
-obj/machinery/airlock_sensor/process()
+/obj/machinery/airlock_sensor/process()
if(on)
var/datum/gas_mixture/air_sample = return_air()
var/pressure = round(air_sample.return_pressure(),0.1)
@@ -207,32 +202,30 @@ obj/machinery/airlock_sensor/process()
update_icon()
-obj/machinery/airlock_sensor/proc/set_frequency(new_frequency)
+/obj/machinery/airlock_sensor/proc/set_frequency(new_frequency)
radio_controller.remove_object(src, frequency)
frequency = new_frequency
radio_connection = radio_controller.add_object(src, frequency, RADIO_AIRLOCK)
-obj/machinery/airlock_sensor/initialize()
+/obj/machinery/airlock_sensor/initialize()
..()
set_frequency(frequency)
-obj/machinery/airlock_sensor/New()
+/obj/machinery/airlock_sensor/New()
..()
if(radio_controller)
set_frequency(frequency)
-
-obj/machinery/airlock_sensor/airlock_interior
+/obj/machinery/airlock_sensor/airlock_interior
command = "cycle_interior"
-obj/machinery/airlock_sensor/airlock_exterior
+/obj/machinery/airlock_sensor/airlock_exterior
command = "cycle_exterior"
-obj/machinery/access_button
+/obj/machinery/access_button
icon = 'icons/obj/airlock_machines.dmi'
icon_state = "access_button_standby"
name = "access button"
-
anchored = 1
power_channel = ENVIRON
@@ -244,21 +237,20 @@ obj/machinery/access_button
var/on = 1
-
-obj/machinery/access_button/update_icon()
+/obj/machinery/access_button/update_icon()
if(on)
icon_state = "access_button_standby"
else
icon_state = "access_button_off"
-obj/machinery/access_button/attackby(obj/item/I as obj, mob/user as mob, params)
+/obj/machinery/access_button/attackby(obj/item/I, mob/user, params)
//Swiping ID on the access button
if(istype(I, /obj/item/weapon/card/id) || istype(I, /obj/item/device/pda))
attack_hand(user)
return
..()
-obj/machinery/access_button/attack_hand(mob/user)
+/obj/machinery/access_button/attack_hand(mob/user)
add_fingerprint(usr)
if(!allowed(user))
to_chat(user, "Access Denied")
@@ -272,28 +264,25 @@ obj/machinery/access_button/attack_hand(mob/user)
radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
flick("access_button_cycle", src)
-
-obj/machinery/access_button/proc/set_frequency(new_frequency)
+/obj/machinery/access_button/proc/set_frequency(new_frequency)
radio_controller.remove_object(src, frequency)
frequency = new_frequency
radio_connection = radio_controller.add_object(src, frequency, RADIO_AIRLOCK)
-
-obj/machinery/access_button/initialize()
+/obj/machinery/access_button/initialize()
..()
set_frequency(frequency)
-
-obj/machinery/access_button/New()
+/obj/machinery/access_button/New()
..()
if(radio_controller)
set_frequency(frequency)
-obj/machinery/access_button/airlock_interior
+/obj/machinery/access_button/airlock_interior
frequency = 1379
command = "cycle_interior"
-obj/machinery/access_button/airlock_exterior
+/obj/machinery/access_button/airlock_exterior
frequency = 1379
command = "cycle_exterior"
diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm
index 7c9f6d5b299..9881e58beb6 100644
--- a/code/game/machinery/doors/airlock_electronics.dm
+++ b/code/game/machinery/doors/airlock_electronics.dm
@@ -6,14 +6,13 @@
materials = list(MAT_METAL=50, MAT_GLASS=50)
origin_tech = "engineering=2;programming=1"
req_access = list(access_engine)
-
+ toolspeed = 1
+ usesound = 'sound/items/Deconstruct.ogg'
var/list/conf_access = null
var/one_access = 0 //if set to 1, door would receive req_one_access instead of req_access
var/last_configurator = null
var/locked = TRUE
var/const/max_brain_damage = 60 // Maximum brain damage a mob can have until it can't use the electronics
- toolspeed = 1
- usesound = 'sound/items/Deconstruct.ogg'
/obj/item/weapon/airlock_electronics/attack_self(mob/user)
if(!ishuman(user) && !isrobot(user))
@@ -89,7 +88,7 @@
attack_self(usr)
-/obj/item/weapon/airlock_electronics/proc/toggle_access(var/access)
+/obj/item/weapon/airlock_electronics/proc/toggle_access(access)
if(access == "all")
conf_access = null
else
diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm
index a4ce0bc7cd2..f15b923f54a 100644
--- a/code/game/machinery/doors/airlock_types.dm
+++ b/code/game/machinery/doors/airlock_types.dm
@@ -152,7 +152,7 @@
/obj/machinery/door/airlock/plasma/proc/PlasmaBurn(temperature)
atmos_spawn_air(SPAWN_HEAT | SPAWN_TOXINS, 500)
- new/obj/structure/door_assembly( src.loc )
+ new/obj/structure/door_assembly(loc)
qdel(src)
/obj/machinery/door/airlock/plasma/BlockSuperconductivity() //we don't stop the heat~
@@ -327,14 +327,14 @@
icon = 'icons/obj/doors/Doorplasma.dmi'
is_special = 1
-/obj/machinery/door/airlock/alien/bumpopen(mob/living/user as mob)
- if(istype(user,/mob/living/carbon/alien) || isrobot(user) || isAI(user))
+/obj/machinery/door/airlock/alien/bumpopen(mob/living/user)
+ if(isalien(user) || isrobot(user) || isAI(user))
..(user)
else
to_chat(user, "You do not know how to operate this airlock's mechanism.")
return
-/obj/machinery/door/airlock/alien/attackby(C as obj, mob/user as mob, params)
+/obj/machinery/door/airlock/alien/attackby(obj/C, mob/user, params)
if(isalien(user) || isrobot(user) || isAI(user))
..(C, user)
else
diff --git a/code/game/machinery/doors/alarmlock.dm b/code/game/machinery/doors/alarmlock.dm
index 6ae07303752..839fb387ddb 100644
--- a/code/game/machinery/doors/alarmlock.dm
+++ b/code/game/machinery/doors/alarmlock.dm
@@ -3,10 +3,9 @@
icon = 'icons/obj/doors/Doorglass.dmi'
opacity = 0
glass = 1
-
+ autoclose = 0
var/datum/radio_frequency/air_connection
var/air_frequency = 1437
- autoclose = 0
/obj/machinery/door/airlock/alarmlock/New()
..()
@@ -24,7 +23,6 @@
air_connection = radio_controller.add_object(src, air_frequency, RADIO_TO_AIRALARM)
open()
-
/obj/machinery/door/airlock/alarmlock/receive_signal(datum/signal/signal)
..()
if(stat & (NOPOWER|BROKEN))
@@ -42,4 +40,4 @@
close()
if("minor", "clear")
autoclose = 0
- open()
\ No newline at end of file
+ open()
diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm
index 0af3f1a575d..5914d9b5d87 100644
--- a/code/game/machinery/doors/brigdoors.dm
+++ b/code/game/machinery/doors/brigdoors.dm
@@ -17,7 +17,7 @@
icon_state = "frame"
desc = "A remote control for a door."
req_access = list(access_brig)
- anchored = 1.0 // can't pick it up
+ anchored = 1 // can't pick it up
density = 0 // can walk through it.
var/id = null // id of door it controls.
var/releasetime = 0 // when world.timeofday reaches it - release the prisoner
diff --git a/code/game/machinery/doors/checkForMultipleDoors.dm b/code/game/machinery/doors/checkForMultipleDoors.dm
index 9005a7fda49..d1c3c2e2d6b 100644
--- a/code/game/machinery/doors/checkForMultipleDoors.dm
+++ b/code/game/machinery/doors/checkForMultipleDoors.dm
@@ -1,15 +1,15 @@
/obj/machinery/door/proc/checkForMultipleDoors()
- if(!src.loc)
+ if(!loc)
return 0
- for(var/obj/machinery/door/D in src.loc)
+ for(var/obj/machinery/door/D in loc)
if(!istype(D, /obj/machinery/door/window) && D.density)
return 0
return 1
/turf/simulated/wall/proc/checkForMultipleDoors()
- if(!src.loc)
+ if(!loc)
return 0
- for(var/obj/machinery/door/D in locate(src.x,src.y,src.z))
+ for(var/obj/machinery/door/D in locate(x,y,z))
if(!istype(D, /obj/machinery/door/window) && D.density)
return 0
//There are no false wall checks because that would be fucking retarded
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index c4db518ae93..8d87860705c 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -76,7 +76,8 @@
return
if(isliving(AM))
var/mob/living/M = AM
- if(world.time - M.last_bumped <= 10) return //Can bump-open one airlock per second. This is to prevent shock spam.
+ if(world.time - M.last_bumped <= 10)
+ return //Can bump-open one airlock per second. This is to prevent shock spam.
M.last_bumped = world.time
if(!M.restrained())
if(M.mob_size > MOB_SIZE_SMALL)
@@ -187,29 +188,26 @@
qdel(src)
return
-
/obj/machinery/door/emp_act(severity)
if(prob(20/severity) && (istype(src,/obj/machinery/door/airlock) || istype(src,/obj/machinery/door/window)) )
spawn(0)
open()
..()
-
/obj/machinery/door/ex_act(severity)
switch(severity)
- if(1.0)
+ if(1)
qdel(src)
- if(2.0)
+ if(2)
if(prob(25))
qdel(src)
- if(3.0)
+ if(3)
if(prob(80))
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
s.set_up(2, 1, src)
s.start()
return
-
/obj/machinery/door/update_icon()
if(density)
icon_state = "door1"
@@ -299,7 +297,6 @@
var/turf/location = get_turf(src)
L.add_splatter_floor(location)
-
/obj/machinery/door/proc/requiresID()
return 1
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index cad2212d0de..ee75775f151 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -18,10 +18,10 @@
glass = TRUE
closed_layer = 3.11
auto_close_time = 50
+ assemblytype = /obj/structure/firelock_frame
var/can_force = TRUE
var/force_open_time = 300
var/can_crush = TRUE
- assemblytype = /obj/structure/firelock_frame
var/nextstate = null
var/boltslocked = TRUE
var/can_deconstruct = TRUE
@@ -36,9 +36,9 @@
/obj/machinery/door/firedoor/ex_act(severity)
switch(severity)
- if(1.0)
+ if(1)
qdel(src)
- if(2.0)
+ if(2)
if(prob(50))
qdel(src)
@@ -50,7 +50,7 @@
stat |= NOPOWER
update_icon()
-/obj/machinery/door/firedoor/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
+/obj/machinery/door/firedoor/attackby(obj/item/weapon/C, mob/user, params)
add_fingerprint(user)
if(operating)
@@ -67,7 +67,7 @@
return
if(welded)
- if(istype(C, /obj/item/weapon/wrench))
+ if(iswrench(C))
if(boltslocked)
to_chat(user, "There are screws locking the bolts in place!")
return
@@ -81,7 +81,7 @@
"You undo [src]'s floor bolts.")
deconstruct(TRUE)
return
- else if(istype(C, /obj/item/weapon/screwdriver))
+ else if(isscrewdriver(C))
user.visible_message("[user] [boltslocked ? "unlocks" : "locks"] [src]'s bolts...", \
"You [boltslocked ? "unlock" : "lock"] [src]'s floor bolts...")
playsound(get_turf(src), C.usesound, 50, 1)
@@ -91,7 +91,7 @@
to_chat(user, "\The [src] is welded solid!")
return
- if(istype(C, /obj/item/weapon/crowbar) || istype(C, /obj/item/weapon/twohanded/fireaxe))
+ if(iscrowbar(C) || istype(C, /obj/item/weapon/twohanded/fireaxe))
if(istype(C, /obj/item/weapon/twohanded/fireaxe))
var/obj/item/weapon/twohanded/fireaxe/F = C
if(!F.wielded)
@@ -228,7 +228,7 @@
else
return 1
-/obj/machinery/door/firedoor/border_only/CheckExit(atom/movable/mover as mob|obj, turf/target)
+/obj/machinery/door/firedoor/border_only/CheckExit(atom/movable/mover, turf/target)
if(istype(mover) && mover.checkpass(PASSGLASS))
return 1
if(get_dir(loc, target) == dir)
@@ -252,7 +252,7 @@
/obj/machinery/door/firedoor/heavy/ex_act(severity)
switch(severity)
- if(1.0)
+ if(1)
qdel(src)
/obj/item/weapon/firelock_electronics
@@ -301,7 +301,7 @@
/obj/structure/firelock_frame/attackby(obj/item/weapon/C, mob/user)
switch(constructionStep)
if(CONSTRUCTION_PANEL_OPEN)
- if(istype(C, /obj/item/weapon/crowbar))
+ if(iscrowbar(C))
playsound(get_turf(src), C.usesound, 50, 1)
user.visible_message("[user] starts prying something out from [src]...", \
"You begin prying out the wire cover...")
@@ -315,7 +315,7 @@
constructionStep = CONSTRUCTION_WIRES_EXPOSED
update_icon()
return
- if(istype(C, /obj/item/weapon/wrench))
+ if(iswrench(C))
if(locate(/obj/machinery/door/firedoor) in get_turf(src))
to_chat(user, "There's already a firelock there.")
return
@@ -357,7 +357,7 @@
return
if(CONSTRUCTION_WIRES_EXPOSED)
- if(istype(C, /obj/item/weapon/wirecutters))
+ if(iswirecutter(C))
playsound(get_turf(src), C.usesound, 50, 1)
user.visible_message("[user] starts cutting the wires from [src]...", \
"You begin removing [src]'s wires...")
@@ -372,7 +372,7 @@
constructionStep = CONSTRUCTION_GUTTED
update_icon()
return
- if(istype(C, /obj/item/weapon/weldingtool))
+ if(iswelder(C))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(1, user))
playsound(get_turf(src), C.usesound, 50, 1)
@@ -389,7 +389,7 @@
update_icon()
return
if(CONSTRUCTION_GUTTED)
- if(istype(C, /obj/item/weapon/crowbar))
+ if(iscrowbar(C))
user.visible_message("[user] begins removing the circuit board from [src]...", \
"You begin prying out the circuit board from [src]...")
playsound(get_turf(src), C.usesound, 50, 1)
@@ -404,7 +404,7 @@
constructionStep = CONSTRUCTION_NOCIRCUIT
update_icon()
return
- if(istype(C, /obj/item/stack/cable_coil))
+ if(iscoil(C))
var/obj/item/stack/cable_coil/B = C
if(B.get_amount() < 5)
to_chat(user, "You need more wires to add wiring to [src].")
@@ -423,7 +423,7 @@
update_icon()
return
if(CONSTRUCTION_NOCIRCUIT)
- if(istype(C, /obj/item/weapon/weldingtool))
+ if(iswelder(C))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(1,user))
playsound(get_turf(src), W.usesound, 50, 1)
diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm
index 154ce951514..737271728ee 100644
--- a/code/game/machinery/doors/poddoor.dm
+++ b/code/game/machinery/doors/poddoor.dm
@@ -22,14 +22,14 @@
//"BLAST" doors are obviously stronger than regular doors when it comes to BLASTS.
/obj/machinery/door/poddoor/ex_act(severity, target)
switch(severity)
- if(1.0)
+ if(1)
if(prob(80))
qdel(src)
else
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
s.set_up(2, 1, src)
s.start()
- if(2.0)
+ if(2)
if(prob(20))
qdel(src)
else
@@ -37,24 +37,24 @@
s.set_up(2, 1, src)
s.start()
- if(3.0)
+ if(3)
if(prob(80))
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
s.set_up(2, 1, src)
s.start()
-/obj/machinery/door/poddoor/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
- src.add_fingerprint(user)
- if(!( istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1) ))
+/obj/machinery/door/poddoor/attackby(obj/item/weapon/C, mob/user, params)
+ add_fingerprint(user)
+ if(!(iscrowbar(C) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1)))
return
- if((src.density && (stat & NOPOWER) && !operating))
- spawn( 0 )
+ if((density && (stat & NOPOWER) && !operating))
+ spawn(0)
operating = 1
flick("pdoorc0", src)
- src.icon_state = "pdoor0"
- src.set_opacity(0)
+ icon_state = "pdoor0"
+ set_opacity(0)
sleep(15)
- src.density = 0
+ density = 0
operating = 0
return
return
@@ -67,10 +67,10 @@
if(!operating) //in case of emag
operating = 1
flick("pdoorc0", src)
- src.icon_state = "pdoor0"
- src.set_opacity(0)
+ icon_state = "pdoor0"
+ set_opacity(0)
sleep(5)
- src.density = 0
+ density = 0
sleep(5)
air_update_turf(1)
update_freelook_sight()
@@ -87,13 +87,13 @@
return
operating = 1
flick("pdoorc1", src)
- src.icon_state = "pdoor1"
- src.set_opacity(initial(opacity))
+ icon_state = "pdoor1"
+ set_opacity(initial(opacity))
air_update_turf(1)
update_freelook_sight()
sleep(5)
crush()
- src.density = 1
+ density = 1
sleep(5)
operating = 0
diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm
index 1507e22be20..05a785e1582 100644
--- a/code/game/machinery/doors/shutters.dm
+++ b/code/game/machinery/doors/shutters.dm
@@ -12,9 +12,9 @@
density = 0
opacity = 0
-/obj/machinery/door/poddoor/shutters/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
+/obj/machinery/door/poddoor/shutters/attackby(obj/item/weapon/C, mob/user, params)
add_fingerprint(user)
- if(!(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1) ))
+ if(!(iscrowbar(C) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1)))
return
if(density && (stat & NOPOWER) && !operating)
operating = 1
diff --git a/code/game/machinery/doors/spacepod.dm b/code/game/machinery/doors/spacepod.dm
index c661b71abce..93419b588f6 100644
--- a/code/game/machinery/doors/spacepod.dm
+++ b/code/game/machinery/doors/spacepod.dm
@@ -3,9 +3,9 @@
desc = "Why it no open!!!"
icon = 'icons/effects/beam.dmi'
icon_state = "n_beam"
- var/id = 1.0
density = 0
anchored = 1
+ var/id = 1.0
/obj/structure/spacepoddoor/initialize()
..()
diff --git a/code/game/machinery/doors/unpowered.dm b/code/game/machinery/doors/unpowered.dm
index a8236f0817c..76caba78cc6 100644
--- a/code/game/machinery/doors/unpowered.dm
+++ b/code/game/machinery/doors/unpowered.dm
@@ -1,24 +1,20 @@
/obj/machinery/door/unpowered
autoclose = 0
- var/locked = 0
explosion_block = 1
+ var/locked = 0
/obj/machinery/door/unpowered/Bumped(atom/AM)
if(locked)
return
..()
-
/obj/machinery/door/unpowered/attackby(obj/item/I, mob/user, params)
- if(istype(I, /obj/item/weapon/card/emag) || istype(I, /obj/item/weapon/melee/energy/blade))
+ if(istype(I, /obj/item/weapon/card/emag) || istype(I, /obj/item/weapon/melee/energy/blade))
return
- if(locked)
+ if(locked)
return
return ..()
/obj/machinery/door/unpowered/shuttle
icon = 'icons/turf/shuttle.dmi'
- name = "door"
icon_state = "door1"
- opacity = 1
- density = 1
\ No newline at end of file
diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm
index baaf936e189..d49168720d4 100644
--- a/code/game/machinery/doors/windowdoor.dm
+++ b/code/game/machinery/doors/windowdoor.dm
@@ -3,12 +3,12 @@
desc = "A strong door."
icon = 'icons/obj/doors/windoor.dmi'
icon_state = "left"
- var/base_state = "left"
- var/health = 150.0 //If you change this, consider changing ../door/window/brigdoor/ health at the bottom of this .dm file
visible = 0.0
flags = ON_BORDER
opacity = 0
var/obj/item/weapon/airlock_electronics/electronics = null
+ var/base_state = "left"
+ var/health = 150.0 //If you change this, consider changing ../door/window/brigdoor/ health at the bottom of this .dm file
/obj/machinery/door/window/New()
..()
@@ -28,7 +28,6 @@
QDEL_NULL(electronics)
return ..()
-
/obj/machinery/door/window/proc/open_and_close()
open()
if(check_access(null))
@@ -37,7 +36,7 @@
sleep(20)
close()
-/obj/machinery/door/window/Bumped(atom/movable/AM as mob|obj)
+/obj/machinery/door/window/Bumped(atom/movable/AM)
if(operating || !density)
return
if(!ismob(AM))
@@ -55,8 +54,8 @@
bumpopen(M)
return
-/obj/machinery/door/window/bumpopen(mob/user as mob)
- if( operating || !density )
+/obj/machinery/door/window/bumpopen(mob/user)
+ if(operating || !density)
return
add_fingerprint(user)
if(!requiresID())
@@ -76,17 +75,17 @@
else
return 1
-/obj/machinery/door/window/CanAtmosPass(var/turf/T)
+/obj/machinery/door/window/CanAtmosPass(turf/T)
if(get_dir(loc, T) == dir)
return !density
else
return 1
//used in the AStar algorithm to determinate if the turf the door is on is passable
-/obj/machinery/door/window/CanAStarPass(var/obj/item/weapon/card/id/ID, var/to_dir)
+/obj/machinery/door/window/CanAStarPass(obj/item/weapon/card/id/ID, to_dir)
return !density || (dir != to_dir) || (check_access(ID) && !(stat & NOPOWER))
-/obj/machinery/door/window/CheckExit(atom/movable/mover as mob|obj, turf/target as turf)
+/obj/machinery/door/window/CheckExit(atom/movable/mover, turf/target)
if(istype(mover) && mover.checkpass(PASSGLASS))
return 1
if(get_dir(loc, target) == dir)
@@ -94,7 +93,7 @@
else
return 1
-/obj/machinery/door/window/open(var/forced=0)
+/obj/machinery/door/window/open(forced=0)
if(operating) //doors can still open when emag-disabled
return 0
if(!ticker)
@@ -121,7 +120,7 @@
operating = 0
return 1
-/obj/machinery/door/window/close(var/forced=0)
+/obj/machinery/door/window/close(forced=0)
if(operating)
return 0
if(!forced)
@@ -145,7 +144,7 @@
operating = 0
return 1
-/obj/machinery/door/window/proc/take_damage(var/damage)
+/obj/machinery/door/window/proc/take_damage(damage)
health = max(0, health - damage)
if(health <= 0)
var/debris = list(
@@ -160,7 +159,7 @@
qdel(src)
return
-/obj/machinery/door/window/bullet_act(var/obj/item/projectile/Proj)
+/obj/machinery/door/window/bullet_act(obj/item/projectile/Proj)
if(Proj.damage)
if((Proj.damage_type == BRUTE || Proj.damage_type == BURN))
take_damage(round(Proj.damage / 2))
@@ -193,7 +192,7 @@
if(user.can_advanced_admin_interact())
return attack_hand(user)
-/obj/machinery/door/window/proc/attack_generic(mob/user as mob, damage = 0)
+/obj/machinery/door/window/proc/attack_generic(mob/user, damage = 0)
if(operating)
return
user.changeNext_move(CLICK_CD_MELEE)
@@ -203,24 +202,24 @@
"[user] smashes against the [name].")
take_damage(damage)
-/obj/machinery/door/window/attack_alien(mob/living/user as mob)
+/obj/machinery/door/window/attack_alien(mob/living/user)
if(islarva(user))
return
attack_generic(user, 25)
-/obj/machinery/door/window/attack_animal(mob/living/user as mob)
+/obj/machinery/door/window/attack_animal(mob/living/user)
if(!isanimal(user))
return
var/mob/living/simple_animal/M = user
if(M.melee_damage_upper > 0 && (M.melee_damage_type == BRUTE || M.melee_damage_type == BURN))
attack_generic(M, M.melee_damage_upper)
-/obj/machinery/door/window/attack_slime(mob/living/carbon/slime/user as mob)
+/obj/machinery/door/window/attack_slime(mob/living/carbon/slime/user)
if(!user.is_adult)
return
attack_generic(user, 25)
-/obj/machinery/door/window/attack_hand(mob/user as mob)
+/obj/machinery/door/window/attack_hand(mob/user)
return attackby(user, user)
/obj/machinery/door/window/emag_act(mob/user, obj/weapon)
@@ -245,7 +244,7 @@
emagged = 1
return 1
-/obj/machinery/door/window/attackby(obj/item/weapon/I as obj, mob/living/user as mob, params)
+/obj/machinery/door/window/attackby(obj/item/weapon/I, mob/living/user, params)
//If it's in the process of opening/closing, ignore the click
if(operating)
@@ -258,16 +257,16 @@
emag_act(user,I)
return 1
- if(istype(I, /obj/item/weapon/screwdriver))
+ if(isscrewdriver(I))
if(density || operating)
to_chat(user, "You need to open the door to access the maintenance panel.")
return
playsound(loc, I.usesound, 50, 1)
- p_open = !( p_open )
+ p_open = !p_open
to_chat(user, "You [p_open ? "open":"close"] the maintenance panel of the [name].")
return
- if(istype(I, /obj/item/weapon/crowbar))
+ if(iscrowbar(I))
if(p_open && !density && !operating)
playsound(loc, I.usesound, 100, 1)
user.visible_message("[user] removes the electronics from the [name].", \
@@ -302,7 +301,7 @@
var/obj/item/weapon/airlock_electronics/ae
if(!electronics)
- ae = new/obj/item/weapon/airlock_electronics( loc )
+ ae = new/obj/item/weapon/airlock_electronics(loc)
if(!req_access)
check_access()
if(req_access.len)
@@ -320,7 +319,7 @@
//If windoor is unpowered, crowbar, fireaxe and armblade can force it.
- if(istype(I, /obj/item/weapon/crowbar) || istype(I, /obj/item/weapon/twohanded/fireaxe))
+ if(iscrowbar(I) || istype(I, /obj/item/weapon/twohanded/fireaxe))
if(stat & NOPOWER)
if(density)
open(2)
@@ -329,10 +328,10 @@
return
//If it's a weapon, smash windoor. Unless it's an id card, agent card, ect.. then ignore it (Cards really shouldnt damage a door anyway)
- if(density && istype(I, /obj/item/weapon) && !istype(I, /obj/item/weapon/card) )
+ if(density && istype(I, /obj/item/weapon) && !istype(I, /obj/item/weapon/card))
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src)
- if( (I.flags&NOBLUDGEON) || !I.force )
+ if((I.flags&NOBLUDGEON) || !I.force)
return
var/aforce = I.force
playsound(loc, 'sound/effects/Glasshit.ogg', 75, 1)
@@ -356,16 +355,13 @@
return
-
-
/obj/machinery/door/window/brigdoor
name = "secure door"
icon = 'icons/obj/doors/windoor.dmi'
icon_state = "leftsecure"
base_state = "leftsecure"
- var/id = null
health = 300.0 //Stronger doors for prison (regular window door health is 200)
-
+ var/id = null
/obj/machinery/door/window/northleft
dir = NORTH
diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm
index af514a5a220..40f79e78d24 100644
--- a/code/game/objects/structures/door_assembly.dm
+++ b/code/game/objects/structures/door_assembly.dm
@@ -151,30 +151,34 @@
airlock_type = "/cult/runed"
glass = -1
-/obj/structure/door_assembly/attackby(obj/item/W as obj, mob/user as mob, params)
+/obj/structure/door_assembly/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/pen))
- var/t = copytext(stripped_input(user, "Enter the name for the door.", src.name, src.created_name),1,MAX_NAME_LEN)
- if(!t) return
- if(!in_range(src, usr) && src.loc != usr) return
+ var/t = copytext(stripped_input(user, "Enter the name for the door.", name, created_name),1,MAX_NAME_LEN)
+ if(!t)
+ return
+ if(!in_range(src, usr) && loc != usr)
+ return
created_name = t
return
- if(istype(W, /obj/item/weapon/weldingtool) && ( (istext(glass)) || (glass == 1) || (!anchored) ))
+ if(iswelder(W) && ((istext(glass)) || (glass == 1) || !anchored ))
var/obj/item/weapon/weldingtool/WT = W
if(WT.remove_fuel(0, user))
- playsound(src.loc, WT.usesound, 50, 1)
+ playsound(loc, WT.usesound, 50, 1)
if(istext(glass))
user.visible_message("[user] welds the [glass] plating off the airlock assembly.", "You start to weld the [glass] plating off the airlock assembly.")
if(do_after(user, 40 * WT.toolspeed, target = src))
- if(!src || !WT.isOn()) return
+ if(!src || !WT.isOn())
+ return
to_chat(user, "You welded the [glass] plating off!")
var/M = text2path("/obj/item/stack/sheet/mineral/[glass]")
- new M(src.loc, 2)
+ new M(loc, 2)
glass = 0
else if(glass == 1)
user.visible_message("[user] welds the glass panel out of the airlock assembly.", "You start to weld the glass panel out of the airlock assembly.")
if(do_after(user, 40 * WT.toolspeed, target = src))
- if(!src || !WT.isOn()) return
+ if(!src || !WT.isOn())
+ return
to_chat(user, "You welded the glass panel out!")
if(heat_proof_finished)
new /obj/item/stack/sheet/rglass(get_turf(src))
@@ -185,84 +189,90 @@
else if(!anchored)
user.visible_message("[user] disassembles the airlock assembly.", "You start to disassemble the airlock assembly.")
if(do_after(user, 40 * WT.toolspeed, target = src))
- if(!src || !WT.isOn()) return
+ if(!src || !WT.isOn())
+ return
to_chat(user, "You dissasembled the airlock assembly!")
- new /obj/item/stack/sheet/metal(src.loc, 4)
+ new /obj/item/stack/sheet/metal(loc, 4)
qdel(src)
else
to_chat(user, "You need more welding fuel.")
return
- else if(istype(W, /obj/item/weapon/wrench) && state == 0)
- playsound(src.loc, W.usesound, 100, 1)
+ else if(iswrench(W) && state == 0)
+ playsound(loc, W.usesound, 100, 1)
if(anchored)
user.visible_message("[user] unsecures the airlock assembly from the floor.", "You start to unsecure the airlock assembly from the floor.")
else
user.visible_message("[user] secures the airlock assembly to the floor.", "You start to secure the airlock assembly to the floor.")
if(do_after(user, 40 * W.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
to_chat(user, "You [anchored ? "un" : ""]secured the airlock assembly!")
anchored = !anchored
- else if(istype(W, /obj/item/stack/cable_coil) && state == 0 && anchored )
+ else if(iscoil(W) && state == 0 && anchored)
var/obj/item/stack/cable_coil/coil = W
user.visible_message("[user] wires the airlock assembly.", "You start to wire the airlock assembly.")
if(do_after(user, 40 * coil.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
coil.use(1)
- src.state = 1
+ state = 1
to_chat(user, "You wire the Airlock!")
- else if(istype(W, /obj/item/weapon/wirecutters) && state == 1 )
- playsound(src.loc, W.usesound, 100, 1)
+ else if(iswirecutter(W) && state == 1)
+ playsound(loc, W.usesound, 100, 1)
user.visible_message("[user] cuts the wires from the airlock assembly.", "You start to cut the wires from airlock assembly.")
if(do_after(user, 40 * W.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
to_chat(user, "You cut the airlock's wires!")
if(state == 1)
- new/obj/item/stack/cable_coil(src.loc, 1)
- src.state = 0
+ new/obj/item/stack/cable_coil(loc, 1)
+ state = 0
- else if(istype(W, /obj/item/weapon/airlock_electronics) && state == 1 && W:icon_state != "door_electronics_smoked")
- playsound(src.loc, W.usesound, 100, 1)
+ else if(istype(W, /obj/item/weapon/airlock_electronics) && state == 1 && W.icon_state != "door_electronics_smoked")
+ playsound(loc, W.usesound, 100, 1)
user.visible_message("[user] installs the electronics into the airlock assembly.", "You start to install electronics into the airlock assembly.")
user.drop_item()
W.loc = src
if(do_after(user, 40 * W.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
to_chat(user, "You installed the airlock electronics!")
- src.state = 2
- src.name = "near finished airlock assembly"
- src.electronics = W
+ state = 2
+ name = "near finished airlock assembly"
+ electronics = W
else
- W.loc = src.loc
+ W.loc = loc
- else if(istype(W, /obj/item/weapon/crowbar) && state == 2 )
- playsound(src.loc, W.usesound, 100, 1)
+ else if(iscrowbar(W) && state == 2 )
+ playsound(loc, W.usesound, 100, 1)
user.visible_message("[user] removes the electronics from the airlock assembly.", "You start to install electronics into the airlock assembly.")
if(do_after(user, 40 * W.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
to_chat(user, "You removed the airlock electronics!")
- src.state = 1
- src.name = "wired airlock assembly"
+ state = 1
+ name = "wired airlock assembly"
var/obj/item/weapon/airlock_electronics/ae
if(!electronics)
- ae = new/obj/item/weapon/airlock_electronics( src.loc )
+ ae = new/obj/item/weapon/airlock_electronics(loc)
else
ae = electronics
electronics = null
- ae.loc = src.loc
+ ae.loc = loc
else if(istype(W, /obj/item/stack/sheet) && !glass)
var/obj/item/stack/sheet/S = W
if(S)
if(S.amount>=1)
if(istype(S, /obj/item/stack/sheet/rglass) || istype(S, /obj/item/stack/sheet/glass))
- playsound(src.loc, S.usesound, 100, 1)
+ playsound(loc, S.usesound, 100, 1)
user.visible_message("[user] adds [S.name] to the airlock assembly.", "You start to install [S.name] into the airlock assembly.")
if(do_after(user, 40 * S.toolspeed, target = src))
if(S.type == /obj/item/stack/sheet/rglass)
@@ -275,19 +285,20 @@
else if(istype(S, /obj/item/stack/sheet/mineral) && S.sheettype)
var/M = S.sheettype
if(S.amount>=2)
- playsound(src.loc, S.usesound, 100, 1)
+ playsound(loc, S.usesound, 100, 1)
user.visible_message("[user] adds [S.name] to the airlock assembly.", "You start to install [S.name] into the airlock assembly.")
if(do_after(user, 40 * S.toolspeed, target = src))
to_chat(user, "You installed [M] plating into the airlock assembly!")
S.use(2)
glass = "[M]"
- else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 )
- playsound(src.loc, W.usesound, 100, 1)
+ else if(isscrewdriver(W) && state == 2 )
+ playsound(loc, W.usesound, 100, 1)
to_chat(user, "Now finishing the airlock.")
if(do_after(user, 40 * W.toolspeed, target = src))
- if(!src) return
+ if(!src)
+ return
to_chat(user, "You finish the airlock!")
var/path
if(istext(glass))
@@ -296,21 +307,21 @@
path = text2path("/obj/machinery/door/airlock[glass_type]")
else
path = text2path("/obj/machinery/door/airlock[airlock_type]")
- var/obj/machinery/door/airlock/door = new path(src.loc)
+ var/obj/machinery/door/airlock/door = new path(loc)
door.setDir(dir)
door.assemblytype = type
- door.electronics = src.electronics
+ door.electronics = electronics
door.heat_proof = heat_proof_finished
- if(src.electronics.one_access)
+ if(electronics.one_access)
door.req_access = null
- door.req_one_access = src.electronics.conf_access
+ door.req_one_access = electronics.conf_access
else
- door.req_access = src.electronics.conf_access
+ door.req_access = electronics.conf_access
if(created_name)
door.name = created_name
else
door.name = "[istext(glass) ? "[glass] airlock" : base_name]"
- src.electronics.loc = door
+ electronics.loc = door
qdel(src)
else
..()