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()].")