diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 531f510e3cb..7b53bce22de 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -569,6 +569,13 @@ so as to remain in compliance with the most up-to-date laws." if(NOTIFY_FOLLOW) G.ManualFollow(target) +/obj/screen/alert/notify_action/Topic(href, href_list) + if(..()) + return TRUE + + if(href_list["signup"] && isobserver(usr) && poll?.sign_up(usr)) + display_signed_up() + /obj/screen/alert/notify_action/proc/display_signed_up() var/image/I = image('icons/mob/screen_gen.dmi', icon_state = "selector") I.layer = FLOAT_LAYER diff --git a/code/controllers/subsystem/ghost_spawns.dm b/code/controllers/subsystem/ghost_spawns.dm index 6063d6995e5..ea0aefb88bd 100644 --- a/code/controllers/subsystem/ghost_spawns.dm +++ b/code/controllers/subsystem/ghost_spawns.dm @@ -59,7 +59,7 @@ SUBSYSTEM_DEF(ghost_spawns) var/category = "[P.hash]_notify_action" for(var/mob/dead/observer/M in (ignore_respawnability ? GLOB.player_list : GLOB.respawnable_list)) - if(!is_eligible(M)) + if(!is_eligible(M, role, antag_age_check, role, min_hours, check_antaghud)) continue SEND_SOUND(M, 'sound/misc/notice2.ogg') @@ -125,6 +125,13 @@ SUBSYSTEM_DEF(ghost_spawns) I.plane = FLOAT_PLANE A.overlays += I + // Chat message + var/act_jump = "" + if(isatom(source)) + act_jump = "\[Teleport]" + var/act_signup = "\[Sign Up]" + to_chat(M, "Now looking for candidates [role ? "to play as \an [get_roletext(role)]" : "\"[question]\""]. [act_jump] [act_signup]") + // Start processing it so it updates visually the timer START_PROCESSING(SSprocessing, A) A.process() diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/game/gamemodes/blob/blobs/core.dm index b4c01609653..dc8d0f5aba2 100644 --- a/code/game/gamemodes/blob/blobs/core.dm +++ b/code/game/gamemodes/blob/blobs/core.dm @@ -17,12 +17,12 @@ START_PROCESSING(SSobj, src) GLOB.poi_list |= src adjustcolors(color) //so it atleast appears - if(!overmind) - create_overmind(new_overmind) - if(overmind) - adjustcolors(overmind.blob_reagent_datum.color) if(offspring) is_offspring = 1 + if(overmind) + adjustcolors(overmind.blob_reagent_datum.color) + if(!overmind) + create_overmind(new_overmind) point_rate = new_rate ..(loc, h) @@ -104,18 +104,11 @@ var/mob/C = null var/list/candidates = list() if(!new_overmind) - // Create icon - var/mutable_appearance/MA = new - var/mutable_appearance/MA1 = new(icon, "blob") - MA1.color = overmind ? overmind.blob_reagent_datum.color : color - MA.overlays += MA1 - var/mutable_appearance/MA2 = new(icon, "blob_core_overlay") - MA.overlays += MA2 // sendit if(is_offspring) - candidates = SSghost_spawns.poll_candidates("Do you want to play as a blob offspring?", ROLE_BLOB, TRUE, source = MA) + candidates = SSghost_spawns.poll_candidates("Do you want to play as a blob offspring?", ROLE_BLOB, TRUE, source = src) else - candidates = SSghost_spawns.poll_candidates("Do you want to play as a blob?", ROLE_BLOB, TRUE, source = MA) + candidates = SSghost_spawns.poll_candidates("Do you want to play as a blob?", ROLE_BLOB, TRUE, source = src) if(length(candidates)) C = pick(candidates) diff --git a/code/game/gamemodes/blob/powers.dm b/code/game/gamemodes/blob/powers.dm index ec354d4d1c4..350da7c7593 100644 --- a/code/game/gamemodes/blob/powers.dm +++ b/code/game/gamemodes/blob/powers.dm @@ -389,7 +389,7 @@ return split_used = TRUE - new /obj/structure/blob/core/ (get_turf(N), 200, null, blob_core.point_rate, "offspring") + new /obj/structure/blob/core/ (get_turf(N), 200, null, blob_core.point_rate, offspring = TRUE) qdel(N) if(SSticker && SSticker.mode.name == "blob")