mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-25 01:22:13 +00:00
changes: Autodrobes no longer steal your clothes if you had an oversuit on but not a custom jumpsuit. Late Miscellaneous Init (LMI) no longer uses silent init logging. equip_to_slot_or_del() will now equip even if the target slot would normally be inaccessible. May fix #2826. Fixes #2512.
56 lines
1.6 KiB
Plaintext
56 lines
1.6 KiB
Plaintext
// This subsystem loads later in the init process. Not last, but after most major things are done.
|
|
// We sort the area list here because SSatoms needs to run first.
|
|
|
|
/datum/controller/subsystem/misc_late
|
|
name = "Late Miscellaneous Init"
|
|
init_order = SS_INIT_MISC
|
|
flags = SS_NO_FIRE | SS_NO_DISPLAY
|
|
|
|
/datum/controller/subsystem/misc_late/Initialize(timeofday)
|
|
// Generate the area list.
|
|
resort_all_areas()
|
|
|
|
var/turf/picked
|
|
// Setup the teleport locs.
|
|
for (var/thing in all_areas)
|
|
var/area/AR = thing
|
|
picked = null
|
|
if(!(istype(AR, /area/shuttle) || istype(AR, /area/syndicate_station) || istype(AR, /area/wizard_station)))
|
|
picked = pick_area_turf(AR.type, list(/proc/is_station_turf))
|
|
if (picked)
|
|
teleportlocs += AR.name
|
|
teleportlocs[AR.name] = AR
|
|
|
|
if(istype(AR, /area/turret_protected/aisat) || istype(AR, /area/derelict) || istype(AR, /area/tdome) || istype(AR, /area/shuttle/specops/centcom))
|
|
ghostteleportlocs += AR.name
|
|
ghostteleportlocs[AR.name] = AR
|
|
|
|
picked = pick_area_turf(AR.type, list(/proc/is_station_turf))
|
|
if (picked)
|
|
ghostteleportlocs += AR.name
|
|
ghostteleportlocs[AR.name] = AR
|
|
|
|
sortTim(teleportlocs, /proc/cmp_text_asc)
|
|
sortTim(ghostteleportlocs, /proc/cmp_text_asc)
|
|
|
|
setupgenetics()
|
|
|
|
shuttle_controller.setup_shuttle_docks()
|
|
|
|
if (config.fastboot)
|
|
admin_notice("<span class='notice'><b>Fastboot is enabled; some features may not be available.</b></span>", R_DEBUG)
|
|
|
|
..(timeofday)
|
|
|
|
/proc/resort_all_areas()
|
|
all_areas = list()
|
|
for (var/area/A in world)
|
|
all_areas += A
|
|
|
|
sortTim(all_areas, /proc/cmp_name_asc)
|
|
|
|
/proc/sorted_add_area(area/A)
|
|
all_areas += A
|
|
|
|
sortTim(all_areas, /proc/cmp_name_asc)
|