diff --git a/code/datums/mind.dm b/code/datums/mind.dm
index c234ba358d..e3a62571cb 100644
--- a/code/datums/mind.dm
+++ b/code/datums/mind.dm
@@ -723,6 +723,11 @@ datum/mind
special_role = null
current << "\red You have been brainwashed! You are no longer a traitor!"
log_admin("[key_name_admin(usr)] has de-traitor'ed [current].")
+ if(isAI(current))
+ var/mob/living/silicon/ai/A = current
+ A.set_zeroth_law("")
+ A.show_laws()
+
if("traitor")
if(!(src in ticker.mode.traitors))
@@ -730,6 +735,10 @@ datum/mind
special_role = "traitor"
current << "\red You are a traitor!"
log_admin("[key_name_admin(usr)] has traitor'ed [current].")
+ if(isAI(current))
+ var/mob/living/silicon/ai/A = current
+ call(/datum/game_mode/proc/add_law_zero)(A)
+ A.show_laws()
if("autoobjectives")
ticker.mode.forge_traitor_objectives(src)
diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm
index aff2250af6..d1ae1c05b7 100644
--- a/code/modules/mob/living/silicon/ai/life.dm
+++ b/code/modules/mob/living/silicon/ai/life.dm
@@ -98,9 +98,9 @@
// world << "DEBUG CODE TIME! [loc] is the area the AI is sucking power from"
if (!is_special_character(src))
src.set_zeroth_law("")
- src.clear_supplied_laws()
- var/time = time2text(world.realtime,"hh:mm:ss")
- lawchanges.Add("[time] : [src.name]'s noncore laws have been reset due to power failure")
+ //src.clear_supplied_laws() // Don't reset our laws.
+ //var/time = time2text(world.realtime,"hh:mm:ss")
+ //lawchanges.Add("[time] : [src.name]'s noncore laws have been reset due to power failure")
spawn(50)
while ((src:aiRestorePowerRoutine!=0) && stat!=2)
src.oxyloss += 2
@@ -165,7 +165,7 @@
//bring up APC dialog
theAPC.attack_ai(src)
src:aiRestorePowerRoutine = 3
- src << "Your laws have been reset:"
+ src << "Here are your current laws:"
src.show_laws()
sleep(50)
theAPC = null