diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index dfdff33e311..7b8a43eb977 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -75,6 +75,19 @@ consume(user) return 1 +/obj/singularity/attack_tk(mob/user) + if(!iscarbon(user)) + return + var/mob/living/carbon/C = user + investigate_log("has consumed the brain of [key_name(C)] after being touched with telekinesis", "singulo") + C.visible_message("[C] suddenly slumps over.", \ + "As you concentrate on the singularity, your understanding of the cosmos expands exponentially. An immense wealth of raw information is at your fingertips, and you're determined not to squander a single morsel. Within mere microseconds, you absorb a staggering amount of information—more than any AI could ever hope to access—and you can't help but feel a godlike sense of power. However, the gravity of this situation swiftly sinks in. As you sense your skull starting to collapse under pressure, you can't help but admit to yourself: That was a really dense idea, wasn't it?") + var/obj/item/organ/internal/brain/B = C.get_int_organ(/obj/item/organ/internal/brain) + C.ghostize(0) + if(B) + B.remove(C) + qdel(B) + /obj/singularity/Process_Spacemove() //The singularity stops drifting for no man! return 0 @@ -421,7 +434,6 @@ M.Stun(6 SECONDS) M.visible_message("[M] stares blankly at [src]!", \ "You look directly into [src] and feel weak.") - return /obj/singularity/proc/emp_area() diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 81c73c673f6..f74ca7f61c4 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -672,16 +672,17 @@ Consume(B) /obj/machinery/atmospherics/supermatter_crystal/attack_tk(mob/user) - if(iscarbon(user)) - var/mob/living/carbon/C = user - investigate_log("has consumed the brain of [key_name(C)] after being touched with telekinesis", "supermatter") - C.visible_message("[C] suddenly slumps over.", \ + if(!iscarbon(user)) + return + var/mob/living/carbon/C = user + investigate_log("has consumed the brain of [key_name(C)] after being touched with telekinesis", "supermatter") + C.visible_message("[C] suddenly slumps over.", \ "As you mentally focus on the supermatter you feel the contents of your skull start melting away. That was a really dense idea.") - var/obj/item/organ/internal/brain/B = C.get_int_organ(/obj/item/organ/internal/brain) - C.ghostize(0) - if(B) - B.remove(C) - qdel(B) + var/obj/item/organ/internal/brain/B = C.get_int_organ(/obj/item/organ/internal/brain) + C.ghostize(0) + if(B) + B.remove(C) + qdel(B) /obj/machinery/atmospherics/supermatter_crystal/attack_alien(mob/user) dust_mob(user, cause = "alien attack") diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index 9b63d1f88df..3589cfb7ec8 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -160,14 +160,17 @@ dust_mobs(AM) /obj/singularity/energy_ball/attack_tk(mob/user) - if(iscarbon(user)) - var/mob/living/carbon/C = user - to_chat(C, "That was a shockingly dumb idea.") - var/obj/item/organ/internal/brain/B = C.get_int_organ(/obj/item/organ/internal/brain) - C.ghostize(0) - if(B) - B.remove(C) - qdel(B) + if(!iscarbon(user)) + return + var/mob/living/carbon/C = user + investigate_log("has consumed the brain of [key_name(C)] after being touched with telekinesis", "singulo") + C.visible_message("[C] suddenly slumps over.", \ + "As you mentally focus on the energy ball you feel the contents of your skull become overcharged. That was shockingly stupid.") + var/obj/item/organ/internal/brain/B = C.get_int_organ(/obj/item/organ/internal/brain) + C.ghostize(0) + if(B) + B.remove(C) + qdel(B) /// When we get orbited, add the orbiter to our tracked balls /obj/singularity/energy_ball/proc/on_start_orbit(atom/movable/this, atom/orbiter)