Wallening Mapping QoL (#31956)

* manual rotation vars and subtypes

* hacky (?) spawner fix

* light map fixes

* linter
This commit is contained in:
MixityMaxity
2026-05-14 08:10:25 +10:00
committed by GitHub
parent 2f2ebafb31
commit 9b570fc75c
17 changed files with 348 additions and 54 deletions
@@ -163,10 +163,8 @@
/obj/effect/decal/cleanable/blood/footprints{
dir = 1
},
/obj/machinery/door/airlock/survival_pod/glass{
dir = 4
},
/obj/structure/fans/tiny,
/obj/machinery/door/airlock/survival_pod/glass/manual_rotation,
/turf/simulated/floor/pod/dark,
/area/ruin/powered)
"Q" = (
@@ -112,7 +112,7 @@
/area/ruin/space/powered/alien_cache_site/cache_room)
"IP" = (
/obj/structure/fans/tiny/invisible,
/obj/machinery/door/airlock/abductor/secure{
/obj/machinery/door/airlock/abductor/secure/manual_rotation{
dir = 4
},
/turf/simulated/floor/plating/abductor,
@@ -128,10 +128,10 @@
},
/area/ruin/space/powered/alien_cache_site)
"PB" = (
/obj/machinery/door/airlock/abductor{
/obj/structure/fans/tiny/invisible,
/obj/machinery/door/airlock/abductor/manual_rotation{
dir = 4
},
/obj/structure/fans/tiny/invisible,
/turf/simulated/floor/plating/abductor,
/area/ruin/space/powered/alien_cache_site)
"TW" = (
+4 -5
View File
@@ -16452,9 +16452,8 @@
/turf/simulated/floor/plating,
/area/station/maintenance/fsmaint)
"bjp" = (
/obj/machinery/door/morgue{
name = "Confession Booth (Chaplain)";
req_access = list(22)
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth (Chaplain)"
},
/turf/simulated/floor/plasteel/dark,
/area/station/service/chapel)
@@ -17270,7 +17269,7 @@
/turf/simulated/floor/plasteel,
/area/station/hallway/primary/port/east)
"bmg" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth"
},
/turf/simulated/floor/plasteel/dark,
@@ -18074,7 +18073,7 @@
/turf/simulated/floor/plasteel,
/area/station/supply/sorting)
"boy" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Private Study";
req_access = list(37)
},
+2 -2
View File
@@ -23758,11 +23758,11 @@
/area/station/supply/storage)
"dSn" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/door/morgue{
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/door/morgue/manual_rotation{
name = "Private Study";
req_access = list(37)
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/plasteel/dark,
/area/station/service/library)
"dSo" = (
+16 -8
View File
@@ -26858,7 +26858,9 @@
/turf/simulated/wall,
/area/station/service/library)
"cdC" = (
/obj/machinery/door/morgue,
/obj/machinery/door/morgue/manual_rotation{
name = "Study #2"
},
/turf/simulated/floor/plasteel/dark,
/area/station/service/library)
"cdD" = (
@@ -30886,12 +30888,12 @@
/turf/simulated/wall,
/area/station/service/library)
"csI" = (
/obj/machinery/door/morgue{
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/door/morgue/manual_rotation{
name = "Private Study";
req_access = list(37)
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/plasteel/dark,
/area/station/service/library)
"csJ" = (
@@ -46918,8 +46920,8 @@
/turf/simulated/floor/plasteel/white,
/area/station/medical/medbay)
"dQh" = (
/obj/machinery/door/morgue{
name = "Confession Booth"
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth (Chaplain)"
},
/turf/simulated/floor/plasteel/dark,
/area/station/service/chapel/office)
@@ -47232,7 +47234,7 @@
/turf/simulated/floor/carpet/black,
/area/station/service/chapel/office)
"dRN" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth"
},
/turf/simulated/floor/plasteel/dark,
@@ -93023,6 +93025,12 @@
},
/turf/simulated/floor/plasteel/white,
/area/station/medical/reception)
"vIt" = (
/obj/machinery/door/morgue/manual_rotation{
name = "Study #1"
},
/turf/simulated/floor/plasteel/dark,
/area/station/service/library)
"vIR" = (
/obj/machinery/atmospherics/unary/outlet_injector{
autolink_id = "o2_in";
@@ -133626,7 +133634,7 @@ exy
bYj
jRu
cbO
cdC
vIt
ckj
crn
ciz
+9 -10
View File
@@ -62017,7 +62017,7 @@
/turf/simulated/floor/plasteel/white,
/area/station/science/xenobiology)
"mxo" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth"
},
/turf/simulated/floor/plating,
@@ -67471,9 +67471,8 @@
/turf/simulated/floor/grass/no_creep,
/area/station/science/genetics)
"nAB" = (
/obj/machinery/door/morgue{
name = "Confession Booth (Chaplain)";
req_access = list(22)
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth (Chaplain)"
},
/turf/simulated/floor/plating,
/area/station/service/chapel)
@@ -72612,7 +72611,7 @@
/turf/simulated/floor/engine,
/area/station/science/test_chamber)
"oyD" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Study #2"
},
/turf/simulated/floor/wood,
@@ -78851,10 +78850,6 @@
/turf/simulated/floor/plasteel,
/area/station/engineering/atmos/distribution)
"pHY" = (
/obj/machinery/door/morgue{
name = "Private Study";
req_access = list(37)
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
@@ -78862,6 +78857,10 @@
dir = 4
},
/obj/machinery/door/firedoor,
/obj/machinery/door/morgue/manual_rotation{
name = "Private Study";
req_access = list(37)
},
/turf/simulated/floor/plasteel{
icon_state = "cult"
},
@@ -118470,7 +118469,7 @@
/turf/simulated/floor/plating/airless,
/area/station/maintenance/apmaint)
"xDO" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Study #1"
},
/turf/simulated/floor/wood,
+5 -6
View File
@@ -20065,9 +20065,8 @@
/turf/simulated/floor/plasteel/dark,
/area/station/medical/storage/secondary)
"cmn" = (
/obj/machinery/door/morgue{
name = "Confession Booth (Chaplain)";
req_access = list(22)
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth (Chaplain)"
},
/turf/simulated/floor/plasteel/dark,
/area/station/service/chapel/office)
@@ -21004,7 +21003,7 @@
/turf/simulated/floor/plating/airless,
/area/station/engineering/atmos)
"cqY" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Study #1"
},
/turf/simulated/floor/wood,
@@ -21725,7 +21724,7 @@
/turf/simulated/floor/plasteel/dark,
/area/station/medical/surgery/observation)
"cuz" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Study #2"
},
/turf/simulated/floor/wood,
@@ -70313,7 +70312,7 @@
/turf/simulated/floor/wood,
/area/station/science/robotics/showroom)
"qVA" = (
/obj/machinery/door/morgue{
/obj/machinery/door/morgue/manual_rotation{
name = "Confession Booth"
},
/turf/simulated/floor/plasteel/dark,
+1 -3
View File
@@ -66,9 +66,7 @@
/area/survivalpod)
"L" = (
/obj/structure/fans/tiny,
/obj/machinery/door/airlock/survival_pod/glass{
dir = 4
},
/obj/machinery/door/airlock/survival_pod/glass/manual_rotation,
/turf/simulated/floor/pod,
/area/survivalpod)
+1 -3
View File
@@ -165,9 +165,7 @@
/area/survivalpod/luxurypod)
"fL" = (
/obj/structure/fans/tiny,
/obj/machinery/door/airlock/survival_pod/glass{
dir = 4
},
/obj/machinery/door/airlock/survival_pod/glass/manual_rotation,
/turf/simulated/floor/pod,
/area/survivalpod/luxurypod)
"hp" = (
+16
View File
@@ -121,6 +121,22 @@ GLOBAL_LIST_EMPTY(airlock_emissive_underlays)
/obj/machinery/door/airlock/welded
welded = TRUE
/// Special case so spawners with doors autorotate, otherwise identicle
/obj/machinery/door/airlock/spawner
/obj/machinery/door/airlock/spawner/Initialize(mapload)
. = ..()
return INITIALIZE_HINT_LATELOAD
/// Lateint required to actually rotate
/obj/machinery/door/airlock/spawner/LateInitialize()
. = ..()
var/direction = get_current_direction()
dir = direction
/obj/machinery/door/airlock/spawner/welded
welded = TRUE
/*
* reimp, imitate an access denied event.
*/
+219
View File
@@ -7,57 +7,93 @@
assemblytype = /obj/structure/door_assembly/door_assembly_com
normal_integrity = 450
/obj/machinery/door/airlock/command/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/security
icon = 'icons/obj/doors/airlocks/station/security.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_sec
normal_integrity = 450
/obj/machinery/door/airlock/security/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/engineering
icon = 'icons/obj/doors/airlocks/station/engineering.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_eng
/obj/machinery/door/airlock/engineering/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/medical
icon = 'icons/obj/doors/airlocks/station/medical.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_med
/obj/machinery/door/airlock/medical/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/maintenance
name = "maintenance access"
icon = 'icons/obj/doors/airlocks/station/maintenance.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_mai
normal_integrity = 250
/obj/machinery/door/airlock/maintenance/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/maintenance/external
name = "external airlock access"
icon = 'icons/obj/doors/airlocks/station/maintenanceexternal.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_extmai
/obj/machinery/door/airlock/maintenance/external/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/mining
name = "mining airlock"
icon = 'icons/obj/doors/airlocks/station/mining.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_min
/obj/machinery/door/airlock/mining/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/atmos
name = "atmospherics airlock"
icon = 'icons/obj/doors/airlocks/station/atmos.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_atmo
/obj/machinery/door/airlock/atmos/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/research
icon = 'icons/obj/doors/airlocks/station/research.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_research
/obj/machinery/door/airlock/research/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/freezer
name = "freezer airlock"
icon = 'icons/obj/doors/airlocks/station/freezer.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_fre
/obj/machinery/door/airlock/freezer/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/science
icon = 'icons/obj/doors/airlocks/station/science.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_science
/obj/machinery/door/airlock/science/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/virology
icon = 'icons/obj/doors/airlocks/station/virology.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_viro
/obj/machinery/door/airlock/virology/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Station Airlocks Glass
@@ -67,53 +103,89 @@
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/command/glass
opacity = FALSE
glass = TRUE
normal_integrity = 400
/obj/machinery/door/airlock/command/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/engineering/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/engineering/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/security/glass
opacity = FALSE
glass = TRUE
normal_integrity = 400
/obj/machinery/door/airlock/security/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/medical/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/medical/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/virology/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/virology/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/research/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/research/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/mining/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/mining/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/atmos/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/atmos/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/science/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/science/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/maintenance/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/maintenance/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/maintenance/external/glass
opacity = FALSE
glass = TRUE
normal_integrity = 200
/obj/machinery/door/airlock/maintenance/external/glass/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Station Airlocks Mineral
@@ -125,20 +197,32 @@
assemblytype = /obj/structure/door_assembly/door_assembly_gold
paintable = FALSE
/obj/machinery/door/airlock/gold/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/gold/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/gold/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/silver
name = "silver airlock"
icon = 'icons/obj/doors/airlocks/station/silver.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_silver
paintable = FALSE
/obj/machinery/door/airlock/silver/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/silver/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/silver/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/diamond
name = "diamond airlock"
icon = 'icons/obj/doors/airlocks/station/diamond.dmi'
@@ -147,11 +231,17 @@
explosion_block = 2
paintable = FALSE
/obj/machinery/door/airlock/diamond/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/diamond/glass
normal_integrity = 950
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/diamond/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/uranium
name = "uranium airlock"
desc = "And they said I was crazy."
@@ -160,6 +250,9 @@
paintable = FALSE
var/last_event = 0
/obj/machinery/door/airlock/uranium/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/uranium/Initialize(mapload)
. = ..()
var/datum/component/inherent_radioactivity/radioactivity = AddComponent(/datum/component/inherent_radioactivity, 150, 0, 0, 1.5)
@@ -173,6 +266,9 @@
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/uranium/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/plasma
name = "plasma airlock"
desc = "No way this can end badly."
@@ -180,6 +276,9 @@
assemblytype = /obj/structure/door_assembly/door_assembly_plasma
paintable = FALSE
/obj/machinery/door/airlock/plasma/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/plasma/temperature_expose(exposed_temperature, exposed_volume)
..()
if(exposed_temperature > 300)
@@ -212,6 +311,9 @@
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/plasma/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/bananium
name = "bananium airlock"
desc = "Honkhonkhonk!"
@@ -221,10 +323,16 @@
doorClose = 'sound/items/bikehorn.ogg'
paintable = FALSE
/obj/machinery/door/airlock/bananium/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/bananium/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/bananium/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/tranquillite
name = "tranquillite airlock"
icon = 'icons/obj/doors/airlocks/station/freezer.dmi'
@@ -236,26 +344,41 @@
boltDown = null
paintable = FALSE
/obj/machinery/door/airlock/tranquillite/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/sandstone
name = "sandstone airlock"
icon = 'icons/obj/doors/airlocks/station/sandstone.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_sandstone
paintable = FALSE
/obj/machinery/door/airlock/sandstone/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/sandstone/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/sandstone/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/wood
name = "wooden airlock"
icon = 'icons/obj/doors/airlocks/station/wood.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_wood
paintable = FALSE
/obj/machinery/door/airlock/wood/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/wood/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/wood/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/titanium
name = "shuttle airlock"
assemblytype = /obj/structure/door_assembly/door_assembly_titanium
@@ -264,11 +387,17 @@
normal_integrity = 400
paintable = FALSE
/obj/machinery/door/airlock/titanium/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/titanium/glass
normal_integrity = 350
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/titanium/glass/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Station2 Airlocks
@@ -279,10 +408,16 @@
overlays_file = 'icons/obj/doors/airlocks/station2/overlays.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_public
/obj/machinery/door/airlock/public/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/public/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/public/glass/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: External Airlocks
@@ -304,10 +439,16 @@
return ..()
/obj/machinery/door/airlock/external/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/external/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/external/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/external_no_weld
name = "external airlock"
icon = 'icons/obj/doors/airlocks/external/external.dmi'
@@ -320,6 +461,9 @@
/obj/machinery/door/airlock/external_no_weld/welder_act(mob/user, obj/item/I)
return
/obj/machinery/door/airlock/external_no_weld/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: CentCom Airlocks
@@ -333,10 +477,16 @@
normal_integrity = 1000
security_level = 6
/obj/machinery/door/airlock/centcom/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/centcom/glass
glass = TRUE
opacity = FALSE
/obj/machinery/door/airlock/centcom/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/centcom/glass/Initialize(mapload)
. = ..()
update_icon()
@@ -356,6 +506,9 @@
security_level = 6
paintable = FALSE
/obj/machinery/door/airlock/vault/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Hatch Airlocks
@@ -369,10 +522,16 @@
assemblytype = /obj/structure/door_assembly/door_assembly_hatch
paintable = FALSE
/obj/machinery/door/airlock/hatch/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/hatch/syndicate
name = "syndicate hatch"
req_access = list(ACCESS_SYNDICATE)
/obj/machinery/door/airlock/hatch/syndicate/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/hatch/syndicate/command
name = "Command Center"
req_access = list(ACCESS_SYNDICATE_COMMAND)
@@ -380,6 +539,9 @@
normal_integrity = 1000
security_level = 6
/obj/machinery/door/airlock/hatch/syndicate/command/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/hatch/syndicate/command/emag_act(mob/user)
to_chat(user, SPAN_NOTICE("The electronic systems in this door are far too advanced for your primitive hacking peripherals."))
return
@@ -392,6 +554,9 @@
safe = FALSE
normal_integrity = 100 // going to get boosted by security level anyway
/obj/machinery/door/airlock/hatch/syndicate/command/trapped/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/hatch/syndicate/command/trapped/process()
if(locate(/mob/living) in get_turf(src))
unlock(TRUE)
@@ -410,6 +575,9 @@
hackProof = TRUE
aiControlDisabled = AICONTROLDISABLED_ON
/obj/machinery/door/airlock/hatch/syndicate/vault/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/maintenance_hatch
name = "maintenance hatch"
icon = 'icons/obj/doors/airlocks/hatch/maintenance.dmi'
@@ -418,6 +586,9 @@
assemblytype = /obj/structure/door_assembly/door_assembly_mhatch
paintable = FALSE
/obj/machinery/door/airlock/maintenance_hatch/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: High Security Airlocks
@@ -434,11 +605,17 @@
damage_deflection = 30
paintable = FALSE
/obj/machinery/door/airlock/highsecurity/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/highsecurity/red
name = "secure armory airlock"
hackProof = TRUE
aiControlDisabled = AICONTROLDISABLED_ON
/obj/machinery/door/airlock/highsecurity/red/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/highsecurity/red/Initialize(mapload)
. = ..()
if(is_station_level(z))
@@ -493,6 +670,9 @@
security_level = 1
paintable = FALSE
/obj/machinery/door/airlock/abductor/manual_rotation
manual_dir = TRUE
// MARK: Clockwork Airlocks
/obj/machinery/door/airlock/clockwork
@@ -503,6 +683,9 @@
assemblytype = /obj/structure/door_assembly/door_assembly_clockwork
paintable = FALSE
/obj/machinery/door/airlock/clockwork/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/clockwork/Initialize(mapload)
. = ..()
new /obj/effect/temp_visual/ratvar/door(loc)
@@ -516,6 +699,9 @@
glass = TRUE
opacity = FALSE
/obj/machinery/door/airlock/clockwork/glass/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Cult Airlocks
@@ -547,6 +733,9 @@
/// Inner airlock material (Glass, plasteel)
var/stealth_airlock_material = null
/obj/machinery/door/airlock/cult/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/Initialize(mapload)
. = ..()
icon = GET_CULT_DATA(airlock_runed_icon_file, initial(icon))
@@ -608,10 +797,16 @@
/obj/machinery/door/airlock/cult/friendly
friendly = TRUE
/obj/machinery/door/airlock/cult/friendly/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/glass
glass = TRUE
opacity = FALSE
/obj/machinery/door/airlock/cult/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/glass/Initialize(mapload)
. = ..()
update_icon()
@@ -619,12 +814,18 @@
/obj/machinery/door/airlock/cult/glass/friendly
friendly = TRUE
/obj/machinery/door/airlock/cult/glass/friendly/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/unruned
icon = 'icons/obj/doors/airlocks/cult/unruned/cult.dmi'
overlays_file = 'icons/obj/doors/airlocks/cult/unruned/cult-overlays.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_cult/unruned
openingoverlaytype = /obj/effect/temp_visual/cult/door/unruned
/obj/machinery/door/airlock/cult/unruned/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/unruned/Initialize(mapload)
. = ..()
icon = GET_CULT_DATA(airlock_unruned_icon_file, initial(icon))
@@ -634,10 +835,16 @@
/obj/machinery/door/airlock/cult/unruned/friendly
friendly = TRUE
/obj/machinery/door/airlock/cult/unruned/friendly/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/unruned/glass
glass = TRUE
opacity = FALSE
/obj/machinery/door/airlock/cult/unruned/glass/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/unruned/glass/Initialize(mapload)
. = ..()
update_icon()
@@ -645,6 +852,9 @@
/obj/machinery/door/airlock/cult/unruned/glass/friendly
friendly = TRUE
/obj/machinery/door/airlock/cult/unruned/glass/friendly/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/cult/weak
name = "brittle cult airlock"
desc = "An airlock hastily corrupted by blood magic, it is unusually brittle in this state."
@@ -652,6 +862,9 @@
damage_deflection = 5
armor = null
/obj/machinery/door/airlock/cult/weak/manual_rotation
manual_dir = TRUE
//////////////////////////////////
/*
MARK: Misc Airlocks
@@ -667,6 +880,9 @@
assemblytype = /obj/structure/door_assembly/multi_tile
paintable = FALSE
/obj/machinery/door/airlock/multi_tile/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/multi_tile/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change)
. = ..()
update_bounds()
@@ -678,6 +894,9 @@
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/multi_tile/glass/manual_rotation
manual_dir = TRUE
/// Player view blocking fillers for multi-tile doors
/obj/airlock_filler_object
name = "airlock fluff"
+15 -6
View File
@@ -51,6 +51,8 @@
/// How many levels of foam do we have on us? Capped at 5
var/foam_level = 0
/// Is this door prevented from autorotating?
var/manual_dir = FALSE
/// Is this door barricaded?
var/barricaded = FALSE
/// How much this door reduces superconductivity to when closed.
@@ -77,10 +79,11 @@
real_explosion_block = explosion_block
explosion_block = EXPLOSION_BLOCK_PROC
for(var/d in GLOB.cardinal)
var/turf/T = get_step(src, d)
if(iswallturf(T) || locate(/obj/structure/window/full) in T)
QUEUE_SMOOTH(T)
if(manual_dir == FALSE)
for(var/d in GLOB.cardinal)
var/turf/T = get_step(src, d)
if(iswallturf(T) || locate(/obj/structure/window/full) in T)
QUEUE_SMOOTH(T)
update_icon()
recalculate_atmos_connectivity()
@@ -442,7 +445,7 @@
SEND_SIGNAL(src, COMSIG_DOOR_OPEN)
operating = DOOR_OPENING
var/direction = get_current_direction()
dir = direction ? direction : NORTH
dir = direction
update_icon()
recalculate_atmos_connectivity()
do_animate("opening")
@@ -495,7 +498,7 @@
set_fillers_opacity(TRUE)
operating = NONE
var/direction = get_current_direction()
dir = direction ? direction : NORTH
dir = direction
update_icon()
recalculate_atmos_connectivity()
update_freelook_sight()
@@ -507,6 +510,8 @@
/obj/machinery/door/proc/get_current_direction()
// Prioritize walls to avoid adjacent airlock shenanigans
if(manual_dir == TRUE)
return
for(var/direction in GLOB.cardinal)
if(iswallturf(get_step(src, direction)))
return direction
@@ -591,6 +596,10 @@
icon = 'icons/obj/doors/doormorgue.dmi'
icon_state = "door1"
/obj/machinery/door/morgue/manual_rotation
manual_dir = TRUE
/obj/machinery/door/proc/lock()
return
+30
View File
@@ -80,20 +80,32 @@
crush()
return TRUE
/obj/machinery/door/poddoor/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/preopen
icon_state = "open"
density = FALSE
opacity = FALSE
/obj/machinery/door/poddoor/preopen/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/impassable
name = "reinforced blast door"
desc = "A heavy duty blast door that opens mechanically. Looks even tougher than usual."
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
move_resist = INFINITY
/obj/machinery/door/poddoor/impassable/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/impassable/gamma
name = "gamma armory hatch"
/obj/machinery/door/poddoor/impassable/gamma/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/impassable/hostile_lockdown()
return
@@ -158,19 +170,31 @@
layer = CLOSED_BLASTDOOR_LAYER
width = 2
/obj/machinery/door/poddoor/multi_tile/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/multi_tile/triple
icon = 'icons/obj/doors/blastdoor_1x3.dmi'
width = 3
/obj/machinery/door/poddoor/multi_tile/triple/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/multi_tile/quad
icon = 'icons/obj/doors/blastdoor_1x4.dmi'
width = 4
/obj/machinery/door/poddoor/multi_tile/quad/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/multi_tile/impassable
desc = "A heavy duty blast door that opens mechanically. Looks even tougher than usual."
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
move_resist = INFINITY
/obj/machinery/door/poddoor/multi_tile/impassable/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/multi_tile/impassable/hostile_lockdown()
return
@@ -185,6 +209,12 @@
icon = 'icons/obj/doors/blastdoor_1x3.dmi'
width = 3
/obj/machinery/door/poddoor/multi_tile/impassable/triple/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/multi_tile/impassable/quad
icon = 'icons/obj/doors/blastdoor_1x4.dmi'
width = 4
/obj/machinery/door/poddoor/multi_tile/impassable/quad/manual_rotation
manual_dir = TRUE
+12
View File
@@ -8,11 +8,17 @@
damage_deflection = 20
dir = EAST
/obj/machinery/door/poddoor/shutters/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/shutters/preopen
icon_state = "open"
density = FALSE
opacity = FALSE
/obj/machinery/door/poddoor/shutters/preopen/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/shutters/radiation
name = "radiation shutters"
desc = "Lead-lined shutters with a radiation hazard symbol. Whilst this won't stop you getting irradiated, especially by a supermatter crystal, it will stop radiation travelling as far."
@@ -20,6 +26,9 @@
rad_insulation_beta = RAD_BETA_BLOCKER
rad_insulation_gamma = RAD_VERY_EXTREME_INSULATION
/obj/machinery/door/poddoor/shutters/radiation/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/shutters/radiation/preopen
icon_state = "open"
density = FALSE
@@ -27,6 +36,9 @@
rad_insulation_beta = RAD_NO_INSULATION
rad_insulation_gamma = RAD_NO_INSULATION
/obj/machinery/door/poddoor/shutters/radiation/preopen/manual_rotation
manual_dir = TRUE
/obj/machinery/door/poddoor/shutters/radiation/open()
. = ..()
rad_insulation_beta = RAD_NO_INSULATION
@@ -3,8 +3,8 @@
icon_state = "barrier"
loot = list(
/obj/effect/spawner/window/reinforced,
/obj/machinery/door/airlock,
/obj/machinery/door/airlock/welded,
/obj/machinery/door/airlock/spawner,
/obj/machinery/door/airlock/spawner/welded,
/obj/structure/barricade/wooden,
/obj/structure/falsewall,
/turf/simulated/wall,
@@ -32,7 +32,7 @@
/obj/effect/spawner/random/barrier/obstruction
name = "obstruction"
loot = list(
/obj/machinery/door/airlock/welded,
/obj/machinery/door/airlock/spawner/welded,
/obj/structure/barricade/wooden,
/obj/structure/falsewall,
/turf/simulated/wall,
@@ -43,8 +43,8 @@
name = "possibly welded airlock"
icon_state = "airlock"
loot = list(
/obj/machinery/door/airlock = 3,
/obj/machinery/door/airlock/welded = 1,
/obj/machinery/door/airlock/spawner = 3,
/obj/machinery/door/airlock/spawner/welded = 1,
)
/obj/effect/spawner/random/barrier/grille_often
@@ -154,10 +154,16 @@
overlays_file = 'icons/obj/doors/airlocks/survival/survival_overlays.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_pod
/obj/machinery/door/airlock/survival_pod/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/survival_pod/glass
opacity = FALSE
glass = TRUE
/obj/machinery/door/airlock/survival_pod/glass/manual_rotation
manual_dir = TRUE
/obj/structure/door_assembly/door_assembly_pod
name = "pod airlock assembly"
icon = 'icons/obj/doors/airlocks/survival/survival.dmi'
@@ -5,6 +5,9 @@
locked = TRUE
req_access = list()
/obj/machinery/door/airlock/abductor/secure/manual_rotation
manual_dir = TRUE
/obj/machinery/door/airlock/abductor/secure/Initialize(mapload)
. = ..()
// Randomize the wires so they aren't the same as the station