diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm
index 31e18bb106c..972f66fa615 100644
--- a/code/modules/mob/living/carbon/brain/posibrain.dm
+++ b/code/modules/mob/living/carbon/brain/posibrain.dm
@@ -9,6 +9,7 @@ var/global/posibrain_notif_cooldown = 0
origin_tech = "biotech=3;programming=2"
var/notified = 0
var/askDelay = 10 * 60 * 1
+ var/used = 0 //Prevents split personality virus. May be reset if personality deletion code is added.
brainmob = null
req_access = list(access_robotics)
mecha = null//This does not appear to be used outside of reference in mecha.dm.
@@ -29,10 +30,11 @@ var/global/posibrain_notif_cooldown = 0
/obj/item/device/mmi/posibrain/attack_self(mob/user)
if(brainmob && !brainmob.key && !notified)
- //Start the process of notified for a new user.
+ //Start the process of requesting a new ghost.
user << "You carefully locate the manual activation switch and start the positronic brain's boot process."
ping_ghosts("requested")
notified = 1
+ used = 0
update_icon()
spawn(askDelay) //Seperate from the global cooldown.
notified = 0
@@ -47,7 +49,7 @@ var/global/posibrain_notif_cooldown = 0
//Two ways to activate a positronic brain. A clickable link in the ghost notif, or simply clicking the object itself.
/obj/item/device/mmi/posibrain/proc/activate(mob/user)
- if((brainmob && brainmob.key) || jobban_isbanned(user,"posibrain"))
+ if(used || (brainmob && brainmob.key) || jobban_isbanned(user,"posibrain"))
return
var/posi_ask = alert("Become a positronic brain? (Warning, You can no longer be cloned, and all past lives will be forgotten!)","Are you positive?","Yes","No")
@@ -81,7 +83,7 @@ var/global/posibrain_notif_cooldown = 0
return
/obj/item/device/mmi/posibrain/proc/transfer_personality(mob/candidate)
- if(brainmob && brainmob.key) //Prevents hostile takeover if two ghosts get the prompt or link for the same brain.
+ if(used || (brainmob && brainmob.key)) //Prevents hostile takeover if two ghosts get the prompt or link for the same brain.
candidate << "This brain has already been taken! Please try your possesion again later!"
return
notified = 0
@@ -97,6 +99,7 @@ var/global/posibrain_notif_cooldown = 0
visible_message("The positronic brain chimes quietly.")
update_icon()
+ used = 1
/obj/item/device/mmi/posibrain/examine()
@@ -118,7 +121,7 @@ var/global/posibrain_notif_cooldown = 0
if(UNCONSCIOUS) msg += "It doesn't seem to be responsive.\n"
if(DEAD) msg += "It appears to be completely inactive.\n"
else
- msg += "It appears to be completely inactive.\n"
+ msg += "It appears to be completely inactive. The reset light is blinking.\n"
msg += "*---------*"
usr << msg
return