Added 'Priest' option

This commit is contained in:
Kyep
2017-06-07 00:32:35 -07:00
parent 4f66591eee
commit b241af77b8
2 changed files with 71 additions and 0 deletions
+32
View File
@@ -1173,3 +1173,35 @@
suit = /obj/item/clothing/suit/wizrobe/marisa
shoes = /obj/item/clothing/shoes/sandal/marisa
head = /obj/item/clothing/head/wizard/marisa
/datum/outfit/admin/dark_priest
name = "Dark Priest"
uniform = /obj/item/clothing/under/color/black
suit = /obj/item/clothing/suit/hooded/chaplain_hoodie
back = /obj/item/weapon/storage/backpack
head = /obj/item/clothing/head/chaplain_hood
gloves = /obj/item/clothing/gloves/color/black
shoes = /obj/item/clothing/shoes/black
l_ear = /obj/item/device/radio/headset/syndicate
id = /obj/item/weapon/card/id/syndicate
r_hand = /obj/item/weapon/nullrod/armblade
backpack_contents = list(
/obj/item/weapon/storage/box/survival = 1,
/obj/item/device/flashlight = 1,
)
/datum/outfit/admin/dark_priest/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(visualsOnly)
return
var/obj/item/weapon/card/id/I = H.wear_id
if(istype(I))
apply_to_card(I, H, get_all_accesses(), "Dark Priest", "syndie")
var/obj/item/weapon/nullrod/armblade/B = H.r_hand
B.force = 20
B.name = "blessing of the reaper"
B.desc = "Sometimes, someone's just gotta die."
var/obj/item/weapon/implant/explosive/E = new(H)
E.implant(H)
+39
View File
@@ -1797,6 +1797,7 @@
ptypes += "Mutagen Cookie"
ptypes += "Hellwater Cookie"
ptypes += "Assassin"
ptypes += "Priest"
ptypes += "Lynch"
var/punishment = input(owner, "How would you like to smite [M]?", "Its good to be baaaad...", "") as null|anything in ptypes
if(!(punishment in ptypes))
@@ -1855,6 +1856,44 @@
H.drop_l_hand()
H.equip_to_slot_or_del(evilcookie, slot_l_hand)
logmsg = "a hellwater cookie."
if("Priest")
logmsg = "priest."
H.mutations |= NOCLONE
message_admins("[key_name_admin(owner)] is sending a dark priest to assassinate [key_name_admin(M)]...")
var/list/candidates = pollCandidates("Do you want to play as a murderous dark priest?")
if(!candidates.len)
to_chat(usr, "ERROR: Could not create priest. No valid candidates.")
return
var/mob/C = pick(candidates)
var/key_of_priest = C.key
if(!key_of_priest)
to_chat(usr, "ERROR: Could not create priest. Could not pick key.")
return
var/datum/mind/priest_mind = new /datum/mind(key_of_priest)
priest_mind.active = 1
var/mob/living/carbon/human/priest_mob = new /mob/living/carbon/human(pick(latejoin))
priest_mind.transfer_to(priest_mob)
var/datum/outfit/admin/dark_priest/O = new /datum/outfit/admin/dark_priest
priest_mob.equipOutfit(O, FALSE)
var/obj/item/weapon/pinpointer/advpinpointer/N = new /obj/item/weapon/pinpointer/advpinpointer(priest_mob)
priest_mob.equip_to_slot_or_del(N, slot_r_store)
N.active = 1
N.mode = 2
N.target = H
N.point_at(N.target)
var/datum/objective/assassinate/kill_objective = new
kill_objective.owner = priest_mind
kill_objective.target = H.mind
kill_objective.explanation_text = "Murder [H.real_name], the [H.mind.assigned_role], in the name of the dark gods."
priest_mind.objectives += kill_objective
ticker.mode.traitors |= priest_mob.mind
to_chat(priest_mob, "<span class='danger'>ATTENTION:</span> You are now a dark priest!")
to_chat(priest_mob, "<B>Goal: <span class='danger'>MURDER [H.real_name]</span>, currently in [get_area(H.loc)], in the name of the dark gods. </B>");
to_chat(priest_mob, "<B>The gods will prevent their revival.</B>");
priest_mob.mind.special_role = SPECIAL_ROLE_TRAITOR
var/datum/atom_hud/antag/tatorhud = huds[ANTAG_HUD_TRAITOR]
tatorhud.join_hud(priest_mob)
ticker.mode.set_antag_hud(priest_mob, "hudsyndicate")
if("Assassin")
logmsg = "assassin."
var/list/possible_traitors = list()