diff --git a/code/modules/antagonists/blob/blob/blobs/node.dm b/code/modules/antagonists/blob/blob/blobs/node.dm index 7d38ccd17f..23f37bca29 100644 --- a/code/modules/antagonists/blob/blob/blobs/node.dm +++ b/code/modules/antagonists/blob/blob/blobs/node.dm @@ -32,5 +32,5 @@ return ..() /obj/structure/blob/node/Life() - Pulse_Area(overmind, 10, 3, 2) - + if(overmind) + Pulse_Area(overmind, 10, 3, 2) diff --git a/code/modules/antagonists/blob/blob/theblob.dm b/code/modules/antagonists/blob/blob/theblob.dm index 80d24bb080..e57ce9d1d9 100644 --- a/code/modules/antagonists/blob/blob/theblob.dm +++ b/code/modules/antagonists/blob/blob/theblob.dm @@ -21,14 +21,15 @@ var/mob/camera/blob/overmind /obj/structure/blob/Initialize(mapload, owner_overmind) - overmind = owner_overmind - var/area/Ablob = get_area(loc) - if(Ablob.blob_allowed) //Is this area allowed for winning as blob? - overmind.blobs_legit += src + . = ..() + if(owner_overmind) + overmind = owner_overmind + var/area/Ablob = get_area(src) + if(Ablob.blob_allowed) //Is this area allowed for winning as blob? + overmind.blobs_legit += src GLOB.blobs += src //Keep track of the blob in the normal list either way setDir(pick(GLOB.cardinals)) update_icon() - .= ..() if(atmosblock) air_update_turf(1) ConsumeTile() @@ -230,8 +231,11 @@ user.changeNext_move(CLICK_CD_MELEE) to_chat(user, "The analyzer beeps once, then reports:
") SEND_SOUND(user, sound('sound/machines/ping.ogg')) - to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") - chemeffectreport(user) + if(overmind) + to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") + chemeffectreport(user) + else + to_chat(user, "Blob core neutralized. Critical mass no longer attainable.") typereport(user) else return ..() @@ -307,11 +311,14 @@ var/datum/atom_hud/hud_to_check = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] if(user.research_scanner || hud_to_check.hudusers[user]) to_chat(user, "Your HUD displays an extensive report...
") - to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") + if(overmind) + to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") + else + to_chat(user, "Core neutralized. Critical mass no longer attainable.") chemeffectreport(user) typereport(user) else - if(isobserver(user)) + if(isobserver(user) && overmind) to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") to_chat(user, "It seems to be made of [get_chem_name()].")