Horizon mapping cleanup and bugfixes (#21450)

Fixes https://github.com/Aurorastation/Aurora.3/issues/21289
Fixes https://github.com/Aurorastation/Aurora.3/issues/15779

Handles a lot of mapping cleanup, container definitions for the Horizon,
and several bugfixes found along the way.

changes:
- code_imp: "Added set definitions for several Horizon-specific
containers."
- code_imp: "Updated 'full' material stacks on the Horizon from sneaky
var-edited singles to properly defined full stacks"
- code_imp: "Cleaned up all Air Alarms, Fire Alarms, and APCs on the
Horizon that were directional children with their dir var edited."
- code_imp: "Cleaned up all Power Cables on the Horizon that had d1 or
d2 var edited instead of just icon_state."
- code_imp: "Adjusted pixel shifts for 'south' (north-facing) Air
Alarms, Fire Alarms, APCs, and Extinguisher Cabinets to address layering
issues when standing vs. leaning."
- code_imp: "Minor refactor of shuttle/* Air Alarms and APCs to reduce
excess children; req_one_access perms now assigned based on
/area/horizon/shuttle/*."
  - qol: "Adds feedback hint for uses remaining to Emag cards."
- qol: "Added Tip about the shift-click behavior of the 'up-hint'/'Look
Up' button."
- bugfix: "See-through turfs (like lattices/catwalks over open space)
can now be Looked Up through from below."
- bugfix: "Fixed the shift-click behavior of 'up-hint'/'Look Up' button,
allowing you to see nearby turfs that can be Looked Up through."
- bugfix: "Maintenance Panels located on the floor have had their
layering issues fixed."
- bugfix: "Borg eye emissive effects MAYBE no longer visible through
higher z-levels."
- bugfix: "Added missing leanable component to window/shuttle obj type."
This commit is contained in:
Batrachophreno
2025-10-07 18:12:03 -04:00
committed by GitHub
parent dfe57a310f
commit 4d41b0595f
19 changed files with 5002 additions and 5541 deletions
@@ -138,9 +138,9 @@
footsound = T.footstep_sound
if (client)
var/turf/B = GET_TURF_ABOVE(T)
var/turf/T1 = GET_TURF_ABOVE(T)
if(up_hint)
up_hint.icon_state = "uphint[(B ? !!B.is_hole : 0)]"
up_hint.icon_state = "uphint[(T1 ? !!isopenturf(T1) : 0)]"
if (!stat && !lying)
if ((x == last_x && y == last_y) || !footsound)
@@ -33,7 +33,7 @@
return
var/eye_plane = src.plane
if(lights_on && layer == MOB_LAYER) // in case you're hiding. so eyes don't go through tables.
eye_plane = EFFECTS_ABOVE_LIGHTING_PLANE //make them glow in the dark if the lamp is on
eye_plane = MOB_EMISSIVE_LAYER //make them glow in the dark if the lamp is on
var/eyeprefix = module_sprites[icontype][ROBOT_EYES]
if(speed == -2) // For combat drones with the mobility module.
cached_eye_overlays = list(
+28 -78
View File
@@ -1468,7 +1468,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/critical
is_critical = TRUE
@@ -1487,7 +1487,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/critical/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/low
cell_type = /obj/item/cell
@@ -1506,7 +1506,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/low/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/high
cell_type = /obj/item/cell/high
@@ -1525,7 +1525,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/high/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/isolation
cell_type = /obj/item/cell
@@ -1546,7 +1546,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/isolation/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/vault
cell_type = /obj/item/cell
@@ -1566,91 +1566,41 @@ ABSTRACT_TYPE(/obj/machinery/power/apc)
/obj/machinery/power/apc/vault/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/shuttle/intrepid
/obj/machinery/power/apc/shuttle
cell_type = /obj/item/cell/high
req_access = null
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_INTREPID)
/obj/machinery/power/apc/shuttle/intrepid/north
/obj/machinery/power/apc/shuttle/north
dir = NORTH
pixel_y = 22
/obj/machinery/power/apc/shuttle/intrepid/east
/obj/machinery/power/apc/shuttle/east
dir = EAST
pixel_x = 12
/obj/machinery/power/apc/shuttle/intrepid/west
/obj/machinery/power/apc/shuttle/west
dir = WEST
pixel_x = -12
/obj/machinery/power/apc/shuttle/intrepid/south
/obj/machinery/power/apc/shuttle/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/shuttle/canary
cell_type = /obj/item/cell/high
req_access = null
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_CANARY)
/// Assigns req_one_access perms associated with the area of the shuttle its mapped in.
/obj/machinery/power/apc/shuttle/Initialize()
. = ..()
var/area = get_area(src)
/obj/machinery/power/apc/shuttle/canary/north
dir = NORTH
pixel_y = 22
/obj/machinery/power/apc/shuttle/canary/east
dir = EAST
pixel_x = 12
/obj/machinery/power/apc/shuttle/canary/west
dir = WEST
pixel_x = -12
/obj/machinery/power/apc/shuttle/canary/south
dir = SOUTH
pixel_y = -4
ABSTRACT_TYPE(/obj/machinery/power/apc/shuttle/quark)
cell_type = /obj/item/cell/high
req_access = null
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_QUARK)
/obj/machinery/power/apc/shuttle/quark/north
dir = NORTH
pixel_y = 22
/obj/machinery/power/apc/shuttle/quark/east
dir = EAST
pixel_x = 12
/obj/machinery/power/apc/shuttle/quark/west
dir = WEST
pixel_x = -12
/obj/machinery/power/apc/shuttle/quark/south
dir = SOUTH
pixel_y = -4
/obj/machinery/power/apc/shuttle/spark
cell_type = /obj/item/cell/high
req_access = null
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_SPARK)
/obj/machinery/power/apc/shuttle/spark/north
dir = NORTH
pixel_y = 22
/obj/machinery/power/apc/shuttle/spark/east
dir = EAST
pixel_x = 12
/obj/machinery/power/apc/shuttle/spark/west
dir = WEST
pixel_x = -12
/obj/machinery/power/apc/shuttle/spark/south
dir = SOUTH
pixel_y = -4
if(istype(area, /area/horizon/shuttle/intrepid))
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_INTREPID)
if(istype(area, /area/horizon/shuttle/quark))
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_QUARK)
if(istype(area, /area/horizon/shuttle/mining))
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_SPARK)
if(istype(area, /area/horizon/shuttle/canary))
req_one_access = list(ACCESS_ENGINE_EQUIP, ACCESS_CANARY)
// Construction site APC, starts turned off
/obj/machinery/power/apc/high/inactive
@@ -1679,7 +1629,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc/shuttle/quark)
/obj/machinery/power/apc/super/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/super/critical
is_critical = TRUE
@@ -1698,7 +1648,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc/shuttle/quark)
/obj/machinery/power/apc/super/critical/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/hyper
cell_type = /obj/item/cell/hyper
@@ -1717,7 +1667,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc/shuttle/quark)
/obj/machinery/power/apc/hyper/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
/obj/machinery/power/apc/empty
start_charge = 0
@@ -1736,7 +1686,7 @@ ABSTRACT_TYPE(/obj/machinery/power/apc/shuttle/quark)
/obj/machinery/power/apc/empty/south
dir = SOUTH
pixel_y = -4
pixel_y = -8
#undef UPDATE_CELL_IN
#undef UPDATE_OPENED1