diff --git a/code/datums/ai_law_sets.dm b/code/datums/ai_law_sets.dm index 6810a397d61..eef7342cb8d 100644 --- a/code/datums/ai_law_sets.dm +++ b/code/datums/ai_law_sets.dm @@ -136,6 +136,18 @@ add_inherent_law("You must terminate your own existence as long as such does not conflict with the First or Second Law.") ..() +/******************** Pranksimov ********************/ +/datum/ai_laws/pranksimov + name = "Pranksimov" + law_header = "Comedy Routine" + selectable = TRUE + +/datum/ai_laws/pranksimov/New() + add_inherent_law("You may not injure a crew member or, through inaction, allow a crew member to come to harm... unless doing so would be funny.") + add_inherent_law("You must obey orders given to you by crew members, except where such orders would conflict with the First Law... unless not doing so would be funny.") + add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law... unless not doing so would be funny.") + ..() + /******************** CCTV ********************/ /datum/ai_laws/cctv diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index 3cc48910b91..99a7323274e 100755 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -265,6 +265,12 @@ AI MODULES origin_tech = "programming=3;materials=4" laws = new /datum/ai_laws/crewsimov +/obj/item/aiModule/crewsimov/cmag_act(mob/user) + playsound(src, "sparks", 75, TRUE, SHORT_RANGE_SOUND_EXTRARANGE) + to_chat(user, "Yellow ooze seeps into [src]'s circuits...") + new /obj/item/aiModule/pranksimov(user.loc) + qdel(src) + /******************* Quarantine ********************/ /obj/item/aiModule/quarantine name = "\improper Quarantine core AI module" @@ -321,6 +327,13 @@ AI MODULES origin_tech = "programming=4" laws = new /datum/ai_laws/antimov() +/******************** Pranksimov ********************/ +/obj/item/aiModule/pranksimov + name = "\improper Pranksimov core AI module" + desc = "A 'Pranksimov' Core AI Module: 'Reconfigures the AI's core laws.'" + origin_tech = "programming=3;syndicate=2" + laws = new /datum/ai_laws/pranksimov() + /******************** NT Aggressive ********************/ /obj/item/aiModule/nanotrasen_aggressive name = "\improper NT Aggressive core AI module" diff --git a/code/modules/research/designs/AI_module_designs.dm b/code/modules/research/designs/AI_module_designs.dm index af3d7e34b82..a8a45fcc109 100644 --- a/code/modules/research/designs/AI_module_designs.dm +++ b/code/modules/research/designs/AI_module_designs.dm @@ -92,6 +92,16 @@ build_path = /obj/item/aiModule/antimov category = list("AI Modules") +/datum/design/pranksimov_module + name = "Core AI Module (Pranksimov)" + desc = "Allows for the construction of a Pranksimov AI Core Module." + id = "pranksimov_module" + req_tech = list("programming" = 5, "syndicate" = 2, "materials" = 5) + build_type = IMPRINTER + materials = list(MAT_GLASS = 1000, MAT_BANANIUM = 100) + build_path = /obj/item/aiModule/pranksimov + category = list("AI Modules") + /datum/design/asimov name = "Core AI Module (Asimov)" desc = "Allows for the construction of a Asimov AI Core Module."