mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 04:22:39 +01:00
Horizon area sprites + shield-less exterior area (#22594)
Fills in a lot of the blanks in the area icon states on the Horizon with new sprites. Looks neater in SDMM. Adds a new exterior/no_shields area, which is exclusively used for the wings and around the starboard thrusters, around which shields will not generate. This is pulled off in what I hope is a non-demanding way. This is used to resolve that funny issue with starboard propulsion's wide arcing shield, and to force shields on D3 to be taut to the walls. The regular exterior area is retained wherever we want there to be shields around EVA catwalks. <img width="1080" height="1080" alt="image" src="https://github.com/user-attachments/assets/4826b32f-34e2-44ab-b0be-f9fee9622fc8" /> <img width="1056" height="896" alt="image" src="https://github.com/user-attachments/assets/cde72fa6-41eb-4c2a-b843-9959359ca505" />
This commit is contained in:
@@ -30,15 +30,15 @@
|
||||
for (var/tt in RANGE_TURFS(field_radius, gen_turf))
|
||||
T = tt
|
||||
// Ignore station areas.
|
||||
if (GLOB.the_station_areas[T.loc] || is_shuttle_area(T.loc))
|
||||
if ((GLOB.the_station_areas[T.loc] && !is_shieldless_exterior(T.loc)) || is_shuttle_area(T.loc))
|
||||
continue
|
||||
else if (istype(T, /turf/space) || istype(T, /turf/simulated/floor/exoplanet/asteroid) || isopenturf(T) || istype(T, /turf/simulated/floor/reinforced))
|
||||
else if (istype(T, /turf/space) || isopenturf(T) || istype(T, /turf/simulated/floor/reinforced))
|
||||
for (var/uu in RANGE_TURFS(1, T))
|
||||
U = uu
|
||||
if (T == U)
|
||||
continue
|
||||
|
||||
if (GLOB.the_station_areas[U.loc] || istype(U, /turf/simulated/mineral/surface))
|
||||
if (GLOB.the_station_areas[U.loc] && !is_shieldless_exterior(U.loc))
|
||||
out += T
|
||||
break
|
||||
|
||||
@@ -52,19 +52,21 @@
|
||||
if(below)
|
||||
for(var/turf/z as anything in below)
|
||||
connected_levels += z
|
||||
|
||||
for(var/turf/z in connected_levels)
|
||||
for (var/tt in RANGE_TURFS(field_radius, z))
|
||||
T = tt
|
||||
// Ignore station areas.
|
||||
if (GLOB.the_station_areas[T.loc] || istype(T.loc, /area/shuttle))
|
||||
if ((GLOB.the_station_areas[T.loc] && !is_shieldless_exterior(T.loc)) || istype(T.loc, /area/shuttle))
|
||||
continue
|
||||
else if (istype(T, /turf/space) || istype(T, /turf/simulated/floor/exoplanet/asteroid) || isopenturf(T) || istype(T, /turf/simulated/floor/reinforced))
|
||||
|
||||
else if (istype(T, /turf/space) || isopenturf(T) || istype(T, /turf/simulated/floor/reinforced))
|
||||
for (var/uu in RANGE_TURFS(1, T))
|
||||
U = uu
|
||||
if (T == U)
|
||||
continue
|
||||
|
||||
if (GLOB.the_station_areas[U.loc])
|
||||
if (GLOB.the_station_areas[U.loc] && !is_shieldless_exterior(U.loc))
|
||||
out += T
|
||||
break
|
||||
return out
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// Used for creating the exchange areas.
|
||||
/area/turbolift
|
||||
name = "Turbolift"
|
||||
icon_state = "turbolift"
|
||||
base_turf = /turf/simulated/open
|
||||
requires_power = 0
|
||||
station_area = TRUE
|
||||
|
||||
Reference in New Issue
Block a user