// 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("Fastboot is enabled; some features may not be available.", R_DEBUG) ..(timeofday, TRUE) /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)