mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-21 12:56:10 +01:00
Changes (#4594)
This commit is contained in:
+8
-8
@@ -1,9 +1,9 @@
|
||||
// Minimap generation system adapted from vorestation, adapted from /vg/.
|
||||
// Seems to be much simpler/saner than /vg/'s implementation.
|
||||
|
||||
/var/datum/controller/subsystem/minimap/SSminimap
|
||||
/var/datum/controller/subsystem/holomap/SSholomap
|
||||
|
||||
/datum/controller/subsystem/minimap
|
||||
/datum/controller/subsystem/holomap
|
||||
name = "Holomap"
|
||||
flags = SS_NO_FIRE
|
||||
init_order = SS_INIT_HOLOMAP
|
||||
@@ -12,15 +12,15 @@
|
||||
var/list/extra_minimaps = list()
|
||||
var/list/station_holomaps = list()
|
||||
|
||||
/datum/controller/subsystem/minimap/New()
|
||||
NEW_SS_GLOBAL(SSminimap)
|
||||
/datum/controller/subsystem/holomap/New()
|
||||
NEW_SS_GLOBAL(SSholomap)
|
||||
|
||||
/datum/controller/subsystem/minimap/Initialize()
|
||||
/datum/controller/subsystem/holomap/Initialize()
|
||||
holo_minimaps.len = world.maxz
|
||||
for (var/z in 1 to world.maxz)
|
||||
holo_minimaps[z] = generateHoloMinimap(z)
|
||||
|
||||
log_debug("SSminimap: [holo_minimaps.len] maps.")
|
||||
log_debug("SSholomap: [holo_minimaps.len] maps.")
|
||||
|
||||
for (var/z in current_map.station_levels)
|
||||
generateStationMinimap(z)
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
|
||||
// Generates the "base" holomap for one z-level, showing only the physical structure of walls and paths.
|
||||
/datum/controller/subsystem/minimap/proc/generateHoloMinimap(zlevel = 1)
|
||||
/datum/controller/subsystem/holomap/proc/generateHoloMinimap(zlevel = 1)
|
||||
// Save these values now to avoid a bazillion array lookups
|
||||
var/offset_x = HOLOMAP_PIXEL_OFFSET_X(zlevel)
|
||||
var/offset_y = HOLOMAP_PIXEL_OFFSET_Y(zlevel)
|
||||
@@ -77,7 +77,7 @@
|
||||
|
||||
return canvas
|
||||
|
||||
/datum/controller/subsystem/minimap/proc/generateStationMinimap(zlevel)
|
||||
/datum/controller/subsystem/holomap/proc/generateStationMinimap(zlevel)
|
||||
// Save these values now to avoid a bazillion array lookups
|
||||
var/offset_x = HOLOMAP_PIXEL_OFFSET_X(zlevel)
|
||||
var/offset_y = HOLOMAP_PIXEL_OFFSET_Y(zlevel)
|
||||
@@ -29,7 +29,7 @@
|
||||
var/datum/station_holomap/holomap_datum
|
||||
|
||||
/obj/machinery/station_map/Destroy()
|
||||
SSminimap.station_holomaps -= src
|
||||
SSholomap.station_holomaps -= src
|
||||
stopWatching()
|
||||
QDEL_NULL(holomap_datum)
|
||||
return ..()
|
||||
@@ -38,12 +38,12 @@
|
||||
. = ..()
|
||||
holomap_datum = new()
|
||||
original_zLevel = loc.z
|
||||
SSminimap.station_holomaps += src
|
||||
SSholomap.station_holomaps += src
|
||||
flags |= ON_BORDER // Why? It doesn't help if its not density
|
||||
bogus = FALSE
|
||||
var/turf/T = get_turf(src)
|
||||
original_zLevel = T.z
|
||||
if(!("[HOLOMAP_EXTRA_STATIONMAP]_[original_zLevel]" in SSminimap.extra_minimaps))
|
||||
if(!("[HOLOMAP_EXTRA_STATIONMAP]_[original_zLevel]" in SSholomap.extra_minimaps))
|
||||
bogus = TRUE
|
||||
holomap_datum.initialize_holomap_bogus()
|
||||
update_icon()
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
holomap_datum.initialize_holomap(T, reinit = TRUE)
|
||||
|
||||
small_station_map = image(SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"], dir = dir)
|
||||
small_station_map = image(SSholomap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"], dir = dir)
|
||||
small_station_map.layer = LIGHTING_LAYER + 0.1
|
||||
|
||||
floor_markings = image('icons/obj/machines/stationmap.dmi', "decal_station_map")
|
||||
@@ -154,7 +154,7 @@
|
||||
if(bogus)
|
||||
holomap_datum.initialize_holomap_bogus()
|
||||
else
|
||||
small_station_map.icon = SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"]
|
||||
small_station_map.icon = SSholomap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAPSMALL]_[original_zLevel]"]
|
||||
add_overlay(small_station_map)
|
||||
holomap_datum.initialize_holomap(get_turf(src))
|
||||
|
||||
@@ -201,7 +201,7 @@
|
||||
|
||||
/datum/station_holomap/proc/initialize_holomap(turf/T, isAI = null, mob/user = null, reinit = FALSE)
|
||||
if(!station_map || reinit)
|
||||
station_map = image(SSminimap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAP]_[T.z]"])
|
||||
station_map = image(SSholomap.extra_minimaps["[HOLOMAP_EXTRA_STATIONMAP]_[T.z]"])
|
||||
if(!cursor || reinit)
|
||||
cursor = image('icons/misc/holomap_markers.dmi', "you")
|
||||
if(!legend || reinit)
|
||||
|
||||
@@ -219,9 +219,9 @@
|
||||
|
||||
|
||||
if (!(src.species.flags & NO_CHUBBY))
|
||||
if(nutrition < 100)
|
||||
if(nutrition < max(max_nutrition - 300, 0))
|
||||
msg += "[T.He] [T.is] severely malnourished.\n"
|
||||
else if(nutrition >= 500)
|
||||
else if(nutrition >= max_nutrition + 100)
|
||||
msg += "[T.He] [T.is] quite chubby.\n"
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user