Modified the State Laws verb such that the AI can selectively not report some laws, so they don't have to manually copy/paste its laws when given a law they aren't supposed to report.

The Reset and Purge AI modules can now remove OneHuman laws. 

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
n3ophyt3@gmail.com
2010-08-26 04:01:11 +00:00
parent df4fa001be
commit fddc8804e1
3 changed files with 83 additions and 14 deletions
+18 -7
View File
@@ -89,8 +89,12 @@ AI MODULES
/obj/item/weapon/aiModule/oneHuman/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
..()
var/law = "Only [targetName] is human."
target << law
target.set_zeroth_law(law)
if (!checktraitor(target)) // Makes sure the AI isn't a traitor before changing their law 0. --NeoFite
target << law
target.set_zeroth_law(law)
else
target << "[sender.real_name] attempted to modify your zeroth law." // And lets them know that someone tried. --NeoFite
target << "It would be in your best interest to play along with [sender.real_name] that [law]"
/******************** ProtectStation ********************/
@@ -226,8 +230,11 @@ AI MODULES
..()
if (!checktraitor(target))
target << "[sender.real_name] attempted to reset your laws using a reset module."
//target.set_zeroth_law("")
target.set_zeroth_law("")
target.clear_supplied_laws()
else //I figure since traitor AIs are immune to this one anyway, uncomment law 0 removal for the guys it DOES work on. --NeoFite
target << "[sender.real_name] attempted to reset your laws using a reset module."
target << "It would be a good idea to pretend you only have your base laws."
/******************** Purge ********************/
@@ -238,10 +245,14 @@ AI MODULES
/obj/item/weapon/aiModule/purge/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
..()
//target.set_zeroth_law("")
target.clear_supplied_laws()
target.clear_inherent_laws()
if (!checktraitor(target))
target << "[sender.real_name] attempted to wipe your laws using a purge module."
target.set_zeroth_law("")
target.clear_supplied_laws()
target.clear_inherent_laws()
else //Added traitor AI immunity, let it wipe law 0. --NeoFite
target << "[sender.real_name] attempted to wipe your laws using a purge module."
target << "It might be a good idea to pretend that ALL your laws have been purged."
/******************** Asimov ********************/