Miscellaneous minor Horizon map improvements (#21716)

Fixes https://github.com/Aurorastation/Aurora.3/issues/21682
Fixes https://github.com/Aurorastation/Aurora.3/issues/21719

changes:
- bugfix: "Fixes shield diffusers no longer diffusing targeted shield
segments (used for mass driver ejection paths)."
- bugfix: "Moves air alarm hidden behind D3 starboard central hallway
shutters to visible free spot on opposite wall."
  - rscadd: "Adds tintable window control to the Horizon's exam room."
- rscadd: "Adds tintable window controls for both the interior and
exterior windows of the Horizon's recovery room."
- rscadd: "Adds an additional light to a particularly dark corner of the
Horizon's d2 hard storage room."
This commit is contained in:
Batrachophreno
2026-01-19 10:37:08 +00:00
committed by GitHub
parent b968d28670
commit f8c325666c
5 changed files with 391 additions and 355 deletions
+7
View File
@@ -84,6 +84,13 @@
var/obj/effect/energy_field/F = new(T, src)
field += F
/**
* Removes the field from the managed list and deletes it. Called by shield diffusion.
*/
/datum/energy_field/proc/remove_individual_field(var/obj/effect/energy_field/field_to_remove)
field.Remove(field_to_remove)
qdel(field_to_remove)
/**
* Adds a bunch of UI data for TGUIs with relevant field data.
*/
+3 -18
View File
@@ -16,8 +16,6 @@
/// The damage suffered by the field.
var/damage = 0
var/ticks_recovering = 10
var/diffused_for = 0
var/diffused = FALSE
/// If strength goes is 1 or above, this is set to TRUE, this is to prevent flickering and animate being called constantly
var/is_strong = FALSE
@@ -41,7 +39,7 @@
return ..()
/obj/effect/energy_field/proc/diffuse(var/duration)
diffused_for = max(duration, 0)
energy_field.remove_individual_field(src)
/obj/effect/energy_field/attackby(obj/item/attacking_item, mob/user)
user.do_attack_animation(src, attacking_item)
@@ -105,28 +103,17 @@
damage = max(damage - energy_field.strengthen_rate, 0)
/obj/effect/energy_field/proc/density_check(var/turn_on)
if(turn_on && !diffused)
if(turn_on)
alpha = 0
density = TRUE
mouse_opacity = MOUSE_OPACITY_ICON
animate(src, 2 SECONDS, alpha = 255)
else if(!turn_on)
else
alpha = 255
density = FALSE
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
animate(src, 2 SECONDS, alpha = 0)
/obj/effect/energy_field/proc/diffuse_check()
diffused_for = max(0, diffused_for - 1)
if(diffused_for && !diffused)
diffused = TRUE
if(is_strong)
density_check(FALSE)
else if(!diffused_for && diffused)
diffused = FALSE
density_check(TRUE)
/obj/effect/energy_field/proc/update_strength()
SIGNAL_HANDLER
//if we take too much damage, drop out - the generator will bring us back up if we have enough power
@@ -142,8 +129,6 @@
if (density != old_density)
update_nearby_tiles()
diffuse_check()
/**
* Easy helper proc to return the shield's current health.
*/
+6 -6
View File
@@ -8,8 +8,8 @@
icon = 'icons/obj/machinery/shielding.dmi'
icon_state = "fdiffuser_on"
use_power = POWER_USE_IDLE
idle_power_usage = 100
active_power_usage = 2000
idle_power_usage = 0
active_power_usage = 0
anchored = TRUE
density = FALSE
level = 1
@@ -19,20 +19,20 @@
/obj/machinery/shield_diffuser/feedback_hints(mob/user, distance, is_adjacent)
. += ..()
. += "It is [diffuser_enabled ? "diffuser_enabled" : "disabled"]."
. += "It is [diffuser_enabled ? "enabled" : "disabled"]."
/obj/machinery/shield_diffuser/process()
if(stat & BROKEN)
return PROCESS_KILL
if(!diffuser_enabled || stat & NOPOWER)
if(!diffuser_enabled)
return
for(var/obj/effect/energy_field/S in range(diffuser_range, src))
S.diffuse(5)
S.diffuse()
/obj/machinery/shield_diffuser/update_icon()
if(stat & NOPOWER || stat & BROKEN || !diffuser_enabled)
if(stat & BROKEN || !diffuser_enabled)
icon_state = "fdiffuser_off"
else
icon_state = "fdiffuser_on"
+17
View File
@@ -0,0 +1,17 @@
# Your name.
author: Batrachophrenoboocosmomachia
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit.
# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog.
changes:
- bugfix: "Fixes shield diffusers no longer diffusing targeted shield segments (used for mass driver ejection paths)."
- bugfix: "Moves air alarm hidden behind D3 starboard central hallway shutters to visible free spot on opposite wall."
- rscadd: "Adds tintable window control to the Horizon's exam room."
- rscadd: "Adds tintable window controls for both the interior and exterior windows of the Horizon's recovery room."
- rscadd: "Adds an additional light to a particularly dark corner of the Horizon's d2 hard storage room."
+358 -331
View File
@@ -4560,6 +4560,7 @@
/obj/structure/sign/emergency/evacuation{
pixel_y = -32
},
/obj/machinery/alarm/south,
/turf/simulated/floor/tiled,
/area/horizon/hallway/primary/deck_3/starboard)
"aCg" = (
@@ -9607,6 +9608,9 @@
"bjB" = (
/obj/machinery/recharge_station,
/obj/effect/floor_decal/industrial/hatch/yellow,
/obj/machinery/light{
dir = 1
},
/turf/simulated/floor/tiled/dark/full,
/area/horizon/engineering/storage_hard/upper)
"bjD" = (
@@ -21885,7 +21889,9 @@
/turf/simulated/floor/plating,
/area/horizon/maintenance/deck_2/wing/starboard/nacelle)
"cTc" = (
/obj/effect/map_effect/window_spawner/full/reinforced/firedoor,
/obj/effect/map_effect/window_spawner/full/reinforced/polarized/firedoor{
id = "recovery-inner"
},
/turf/simulated/floor/tiled/dark/full,
/area/horizon/medical/ward)
"cTn" = (
@@ -37889,12 +37895,12 @@
/area/horizon/operations/warehouse)
"eYK" = (
/obj/structure/lattice/catwalk,
/obj/machinery/shield_diffuser,
/obj/item/hullbeacon/red,
/obj/structure/sign/drop{
desc = "A warning sign which reads 'DANGER: MASS EJECTOR PATH ON THIS SIGN'.";
name = "\improper DANGER: MASS EJECTOR PATH sign"
},
/obj/machinery/shield_diffuser/threebythree,
/turf/simulated/open/airless,
/area/horizon/exterior)
"eYO" = (
@@ -45105,12 +45111,17 @@
},
/area/shuttle/specops)
"fZL" = (
/obj/effect/floor_decal/corner/dark_blue{
dir = 5
/obj/machinery/door/firedoor,
/obj/effect/floor_decal/industrial/hatch_door/yellow{
dir = 8
},
/obj/machinery/alarm/north,
/turf/simulated/floor/tiled,
/area/horizon/hallway/primary/deck_3/starboard)
/obj/machinery/door/blast/shutters{
dir = 2;
id = "holodeck_alpha_bigshutters";
name = "Holodeck Alpha Public Opening Shutters"
},
/turf/simulated/floor/tiled/full,
/area/horizon/holodeck_control)
"fZO" = (
/obj/effect/floor_decal/corner/lime/diagonal,
/turf/simulated/floor/tiled/white,
@@ -49799,8 +49810,8 @@
desc = "A warning sign which reads 'DANGER: MASS EJECTOR PATH ON THIS SIGN'.";
name = "\improper DANGER: MASS EJECTOR PATH sign"
},
/obj/machinery/shield_diffuser,
/obj/item/hullbeacon/red,
/obj/machinery/shield_diffuser/threebythree,
/turf/space,
/area/horizon/exterior)
"gGx" = (
@@ -82492,7 +82503,9 @@
/turf/simulated/floor/exoplanet/barren,
/area/centcom/shared_dream)
"kUH" = (
/obj/effect/map_effect/window_spawner/full/reinforced/firedoor,
/obj/effect/map_effect/window_spawner/full/reinforced/polarized/firedoor{
id = "exam-room"
},
/turf/simulated/floor/tiled/dark/full,
/area/horizon/medical/exam)
"kUJ" = (
@@ -129565,6 +129578,12 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/button/switch/windowtint{
dir = 10;
id = "exam-room";
pixel_y = -8;
pixel_x = -7
},
/turf/simulated/floor/tiled/white,
/area/horizon/medical/exam)
"rmi" = (
@@ -145488,13 +145507,21 @@
dir = 10;
id = "recovery";
pixel_y = 12;
pixel_x = 9
pixel_x = 9;
name = "exterior window tint control"
},
/obj/machinery/light_switch{
dir = 1;
pixel_x = 8;
pixel_y = -1
},
/obj/machinery/button/switch/windowtint{
dir = 10;
id = "recovery-inner";
pixel_y = 23;
pixel_x = 9;
name = "interior window tint control"
},
/turf/simulated/floor/tiled/full,
/area/horizon/medical/ward)
"tqh" = (
@@ -172949,7 +172976,7 @@
name = "\improper DANGER: MASS EJECTOR PATH sign"
},
/turf/space,
/area/horizon/exterior)
/area/template_noop)
"wXN" = (
/obj/machinery/atmospherics/pipe/manifold/visible/red{
dir = 4
@@ -204714,8 +204741,8 @@ eSV
eSV
eSV
eSV
rSL
rSL
dHi
dHi
eTR
tDE
rSL
@@ -204965,14 +204992,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
eTR
tDE
rSL
@@ -205222,14 +205249,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
eTR
tDE
rSL
@@ -205479,14 +205506,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
eTR
tDE
rSL
@@ -205731,19 +205758,19 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
eTR
tDE
rSL
@@ -205987,20 +206014,20 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
sRg
tDE
tDE
@@ -206244,20 +206271,20 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
eTR
tDE
rSL
@@ -206500,21 +206527,21 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
sRg
tDE
rSL
@@ -206757,12 +206784,12 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
qyQ
tDE
tDE
@@ -207013,13 +207040,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
tDE
tJJ
tJJ
@@ -207269,14 +207296,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
tDE
qlh
hOu
@@ -207525,14 +207552,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
iWT
iWT
@@ -207782,14 +207809,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -208039,14 +208066,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
jLM
xPC
rkZ
@@ -208296,14 +208323,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -208553,14 +208580,14 @@ eSV
eSV
eSV
iUQ
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
jOq
jOq
@@ -208810,13 +208837,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
iWT
iWT
@@ -209067,13 +209094,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -209324,13 +209351,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
uui
xPC
rkZ
@@ -209581,13 +209608,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -209837,14 +209864,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
jOq
jOq
@@ -210095,14 +210122,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
iWT
iWT
@@ -210352,14 +210379,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -210609,14 +210636,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
iXn
xPC
rkZ
@@ -210866,14 +210893,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
xPC
xPC
@@ -211123,14 +211150,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
oMe
oMe
jOq
@@ -211380,16 +211407,16 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
tJJ
tJJ
szc
@@ -211637,17 +211664,17 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
tJJ
tJJ
tJJ
@@ -211894,17 +211921,17 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
kEc
kEc
etP
@@ -212151,16 +212178,16 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
wXz
wZw
tHL
@@ -212409,16 +212436,16 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
kEc
ssy
etP
@@ -212667,15 +212694,15 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
tDt
nPJ
lIN
@@ -212925,14 +212952,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
jSo
goe
tfG
@@ -213182,14 +213209,14 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
dHi
jSo
dJk
rGz
@@ -213439,13 +213466,13 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
dHi
owU
kEc
kEc
@@ -213696,12 +213723,12 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
dHi
oBv
frp
rhP
@@ -213954,11 +213981,11 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
eTR
swu
wCk
@@ -214211,11 +214238,11 @@ eSV
eSV
eSV
eSV
rSL
rSL
rSL
rSL
rSL
dHi
dHi
dHi
dHi
dHi
eTR
rSL
pFF
@@ -343542,8 +343569,8 @@ phb
phb
phb
phb
uML
fZL
mOz
iPC
hkE
tZu