diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/game/gamemodes/blob/blobs/core.dm index 28be931f9b..91409ac4ed 100644 --- a/code/game/gamemodes/blob/blobs/core.dm +++ b/code/game/gamemodes/blob/blobs/core.dm @@ -23,8 +23,12 @@ if(overmind) update_icon() point_rate = new_rate + addtimer(CALLBACK(src, .proc/generate_announcement), 1800) . = ..() +/obj/structure/blob/core/proc/generate_announcement() + priority_announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", 'sound/ai/outbreak5.ogg') + /obj/structure/blob/core/scannerreport() return "Directs the blob's expansion, gradually expands, and sustains nearby blob spores and blobbernauts." diff --git a/code/game/gamemodes/blob/overmind.dm b/code/game/gamemodes/blob/overmind.dm index c14f072d1b..e6cae65c03 100644 --- a/code/game/gamemodes/blob/overmind.dm +++ b/code/game/gamemodes/blob/overmind.dm @@ -72,11 +72,13 @@ GLOBAL_LIST_EMPTY(blob_nodes) set_security_level("delta") max_blob_points = INFINITY blob_points = INFINITY - addtimer(CALLBACK(src, .proc/victory), 660) + addtimer(CALLBACK(src, .proc/victory), 450) ..() /mob/camera/blob/proc/victory() + sound_to_playing_players('sound/machines/alarm.ogg') + sleep(100) for(var/mob/living/L in GLOB.mob_list) var/turf/T = get_turf(L) if(!T || !(T.z in GLOB.station_z_levels)) diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index 070a1e7e6c..f91ebb7557 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -441,7 +441,7 @@ dat += "[N.name]([N.key])Head body destroyed!" dat += "PM" dat += "" - + if(SSticker.mode.changelings.len > 0) dat += "
" for(var/datum/mind/changeling in SSticker.mode.changelings) @@ -593,7 +593,8 @@ var/list/blob_minds = list() for(var/mob/camera/blob/B in GLOB.mob_list) blob_minds |= B.mind - + if(blob_minds.len) + dat += "
Changelings
" for(var/datum/mind/blob in blob_minds) var/mob/camera/blob/M = blob.current if(M) diff --git a/code/modules/events/blob.dm b/code/modules/events/blob.dm index bb0f59f205..49eb46194d 100644 --- a/code/modules/events/blob.dm +++ b/code/modules/events/blob.dm @@ -9,7 +9,7 @@ gamemode_blacklist = list("blob") //Just in case a blob survives that long /datum/round_event/ghost_role/blob - announceWhen = 12 + announceWhen = -1 role_name = "blob overmind" /datum/round_event/ghost_role/blob/announce() diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 592d19e0b1..d17b79eddc 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -376,8 +376,6 @@ if(!transfer_after) mind.active = FALSE mind.transfer_to(R) - if(mind.special_role) - R.mind.store_memory("In case you look at this after being borged, the objectives are only here until I find a way to make them not show up for you, as I can't simply delete them without screwing up round-end reporting. --NeoFite") else if(transfer_after) R.key = key @@ -464,10 +462,7 @@ /mob/proc/become_overmind(starting_points = 60) var/mob/camera/blob/B = new /mob/camera/blob(loc, starting_points) - if(mind) - mind.transfer_to(B) - else - B.key = key + B.key = key . = B qdel(src)
Blob