98 lines
2.8 KiB
Plaintext
98 lines
2.8 KiB
Plaintext
/obj/machinery/door/poddoor
|
|
name = "blast door"
|
|
desc = "A heavy duty blast door that opens mechanically."
|
|
icon = 'GainStation13/icons/obj/doors/blastdoor.dmi' //GS13 Edit: perspective sprites
|
|
icon_state = "closed"
|
|
var/id = 1
|
|
layer = BLASTDOOR_LAYER
|
|
closingLayer = CLOSED_BLASTDOOR_LAYER
|
|
sub_door = TRUE
|
|
explosion_block = 3
|
|
wave_explosion_block = EXPLOSION_BLOCK_BLAST_PROOF
|
|
wave_explosion_multiply = EXPLOSION_DAMPEN_BLAST_PROOF
|
|
heat_proof = TRUE
|
|
safe = FALSE
|
|
max_integrity = 600
|
|
armor = list(MELEE = 50, BULLET = 100, LASER = 100, ENERGY = 100, BOMB = 50, BIO = 100, RAD = 100, FIRE = 100, ACID = 70)
|
|
resistance_flags = FIRE_PROOF
|
|
damage_deflection = 70
|
|
can_open_with_hands = FALSE
|
|
poddoor = TRUE
|
|
|
|
/obj/machinery/door/poddoor/connect_to_shuttle(obj/docking_port/mobile/port, obj/docking_port/stationary/dock, idnum, override=FALSE)
|
|
id = "[idnum][id]"
|
|
|
|
/obj/machinery/door/poddoor/preopen
|
|
icon_state = "open"
|
|
density = FALSE
|
|
opacity = 0
|
|
|
|
/obj/machinery/door/poddoor/ert
|
|
desc = "A heavy duty blast door that only opens for dire emergencies."
|
|
|
|
//special poddoors that open when emergency shuttle docks at centcom
|
|
/obj/machinery/door/poddoor/shuttledock
|
|
var/checkdir = 4 //door won't open if turf in this dir is `turftype`
|
|
var/turftype = /turf/open/space
|
|
|
|
/obj/machinery/door/poddoor/shuttledock/proc/check()
|
|
var/turf/T = get_step(src, checkdir)
|
|
if(!istype(T, turftype))
|
|
INVOKE_ASYNC(src, PROC_REF(open))
|
|
else
|
|
INVOKE_ASYNC(src, PROC_REF(close))
|
|
|
|
/obj/machinery/door/poddoor/incinerator_toxmix
|
|
name = "combustion chamber vent"
|
|
id = INCINERATOR_TOXMIX_VENT
|
|
|
|
/obj/machinery/door/poddoor/incinerator_atmos_main
|
|
name = "turbine vent"
|
|
id = INCINERATOR_ATMOS_MAINVENT
|
|
|
|
/obj/machinery/door/poddoor/incinerator_atmos_aux
|
|
name = "combustion chamber vent"
|
|
id = INCINERATOR_ATMOS_AUXVENT
|
|
|
|
/obj/machinery/door/poddoor/incinerator_syndicatelava_main
|
|
name = "turbine vent"
|
|
id = INCINERATOR_SYNDICATELAVA_MAINVENT
|
|
|
|
/obj/machinery/door/poddoor/incinerator_syndicatelava_aux
|
|
name = "combustion chamber vent"
|
|
id = INCINERATOR_SYNDICATELAVA_AUXVENT
|
|
|
|
/obj/machinery/door/poddoor/Bumped(atom/movable/AM)
|
|
if(density)
|
|
return FALSE
|
|
else
|
|
return ..()
|
|
|
|
//"BLAST" doors are obviously stronger than regular doors when it comes to BLASTS.
|
|
/obj/machinery/door/poddoor/ex_act(severity, target, origin)
|
|
if(severity == 3)
|
|
return
|
|
..()
|
|
|
|
/obj/machinery/door/poddoor/do_animate(animation)
|
|
switch(animation)
|
|
if("opening")
|
|
flick("opening", src)
|
|
playsound(src, 'sound/machines/blastdoor.ogg', 30, 1)
|
|
if("closing")
|
|
flick("closing", src)
|
|
playsound(src, 'sound/machines/blastdoor.ogg', 30, 1)
|
|
|
|
/obj/machinery/door/poddoor/update_icon_state()
|
|
if(density)
|
|
icon_state = "closed"
|
|
else
|
|
icon_state = "open"
|
|
|
|
/obj/machinery/door/poddoor/try_to_activate_door(mob/user)
|
|
return
|
|
|
|
/obj/machinery/door/poddoor/try_to_crowbar(obj/item/I, mob/user)
|
|
if(machine_stat & NOPOWER)
|
|
open(1)
|