HOOKS ARE DEAD

This commit is contained in:
AffectedArc07
2020-05-27 12:00:16 +01:00
parent d746971cc7
commit 1676db7924
32 changed files with 146 additions and 498 deletions
+12 -2
View File
@@ -19,8 +19,18 @@ SUBSYSTEM_DEF(icon_smooth)
can_fire = 0
/datum/controller/subsystem/icon_smooth/Initialize()
smooth_zlevel(1,TRUE)
smooth_zlevel(2,TRUE)
log_startup_progress("Smoothing atoms...")
// Smooth EVERYTHING in the world
for(var/turf/T in world)
if(T.smooth)
smooth_icon(T)
for(var/A in T)
var/atom/AA = A
if(AA.smooth)
smooth_icon(AA)
CHECK_TICK
// Incase any new atoms were added to the smoothing queue for whatever reason
var/queue = smooth_queue
smooth_queue = list()
for(var/V in queue)
+21
View File
@@ -30,6 +30,27 @@ SUBSYSTEM_DEF(mapping)
seedRuins(list(level_name_to_num(MINING)), config.lavaland_budget, /area/lavaland/surface/outdoors/unexplored, GLOB.lava_ruins_templates)
spawn_rivers(list(level_name_to_num(MINING)))
// Now we make a list of areas for teleport locs
// TOOD: Make these locs into lists on the SS itself, not globs
for(var/area/AR in world)
if(AR.no_teleportlocs) continue
if(GLOB.teleportlocs.Find(AR.name)) continue
var/turf/picked = safepick(get_area_turfs(AR.type))
if(picked && is_station_level(picked.z))
GLOB.teleportlocs += AR.name
GLOB.teleportlocs[AR.name] = AR
GLOB.teleportlocs = sortAssoc(GLOB.teleportlocs)
for(var/area/AR in world)
if(GLOB.ghostteleportlocs.Find(AR.name)) continue
var/list/turfs = get_area_turfs(AR.type)
if(turfs.len)
GLOB.ghostteleportlocs += AR.name
GLOB.ghostteleportlocs[AR.name] = AR
GLOB.ghostteleportlocs = sortAssoc(GLOB.ghostteleportlocs)
return ..()
+18 -2
View File
@@ -188,7 +188,14 @@ SUBSYSTEM_DEF(ticker)
current_state = GAME_STATE_PLAYING
Master.SetRunLevel(RUNLEVEL_GAME)
callHook("roundstart")
// Generate the list of playable AI cores in the world
for(var/obj/effect/landmark/start/S in GLOB.landmarks_list)
if(S.name != "AI")
continue
if(locate(/mob/living) in S.loc)
continue
GLOB.empty_playable_ai_cores += new /obj/structure/AIcore/deactivated(get_turf(S))
//here to initialize the random events nicely at round start
setup_economy()
@@ -291,7 +298,16 @@ SUBSYSTEM_DEF(ticker)
if(N.client)
N.new_player_panel_proc()
return 1
// Now that every other piece of the round has initialized, lets setup player job scaling
var/playercount = length(GLOB.clients)
var/highpop_trigger = 80
if(playercount >= highpop_trigger)
log_debug("Playercount: [playercount] versus trigger: [highpop_trigger] - loading highpop job config");
SSjobs.LoadJobs("config/jobs_highpop.txt")
else
log_debug("Playercount: [playercount] versus trigger: [highpop_trigger] - keeping standard job config");
return TRUE
/datum/controller/subsystem/ticker/proc/station_explosion_cinematic(station_missed = 0, override = null)
if(cinematic)
+38
View File
@@ -0,0 +1,38 @@
SUBSYSTEM_DEF(title)
name = "Title Screen"
flags = SS_NO_FIRE
init_order = INIT_ORDER_TITLE
/datum/controller/subsystem/title/Initialize()
var/list/provisional_title_screens = flist("config/title_screens/images/")
var/list/title_screens = list()
var/use_rare_screens = prob(1)
for(var/S in provisional_title_screens)
var/list/L = splittext(S,"+")
if(L.len == 1 && L[1] != "blank.png")
title_screens += S
else if(L.len > 1)
if(use_rare_screens && lowertext(L[1]) == "rare")
title_screens += S
else if(GLOB.using_map && (lowertext(L[1]) == lowertext(GLOB.using_map.name)))
title_screens += S
if(!isemptylist(title_screens))
if(length(title_screens) > 1)
for(var/S in title_screens)
var/list/L = splittext(S,".")
if(L.len != 2 || L[1] != "default")
continue
title_screens -= S
break
var/file_path = "config/title_screens/images/[pick(title_screens)]"
var/icon/icon = new(fcopy_rsc(file_path))
for(var/turf/unsimulated/wall/splashscreen/splash in world)
splash.icon = icon
return ..()