diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm
index 12a7943dfa5..90359d4e5b7 100644
--- a/code/game/objects/items/weapons/weaponry.dm
+++ b/code/game/objects/items/weapons/weaponry.dm
@@ -54,6 +54,83 @@
user.visible_message("[user] is falling on the [src.name]! It looks like \he's trying to commit suicide.")
return(BRUTELOSS)
+/obj/item/weapon/claymore/highlander //ALL COMMENTS MADE REGARDING THIS SWORD MUST BE MADE IN ALL CAPS
+ desc = "THERE CAN BE ONLY ONE, AND IT WILL BE YOU!!!"
+ flags = CONDUCT | NODROP
+ var/notches = 0 //HOW MANY PEOPLE HAVE BEEN SLAIN WITH THIS BLADE
+
+/obj/item/weapon/claymore/highlander/New()
+ ..()
+ START_PROCESSING(SSobj, src)
+
+/obj/item/weapon/claymore/highlander/Destroy()
+ STOP_PROCESSING(SSobj, src)
+ ..()
+
+/obj/item/weapon/claymore/highlander/process()
+ if(isliving(loc))
+ var/mob/living/L = loc
+ if(L.stat == DEAD)
+ L.visible_message("[L] explodes in a shower of gore!", "No! There can be only one...")
+ L.gib()
+
+/obj/item/weapon/claymore/highlander/examine(mob/user)
+ ..()
+ user << "It has [notches] notches scratched into the blade."
+
+/obj/item/weapon/claymore/highlander/attack(mob/living/target, mob/living/user)
+ var/old_target_stat = target.stat
+ . = ..()
+ if(target && target.stat == DEAD && old_target_stat != DEAD && target.mind && target.mind.special_role == "highlander")
+ user.adjustBruteLoss(-200) //STEAL THE LIFE OF OUR FALLEN FOES
+ add_notch(user)
+
+/obj/item/weapon/claymore/highlander/IsReflect()
+ return 1 //YOU THINK YOUR PUNY LASERS CAN STOP ME?
+
+/obj/item/weapon/claymore/highlander/proc/add_notch(mob/living/user)
+ notches++
+ force++
+ var/new_name = name
+ switch(notches)
+ if(1)
+ user << "Your first kill - hopefully one of many. You scratch a notch into [src]'s blade."
+ user << "You feel your fallen foe's soul melding with your own, restoring your wounds!"
+ new_name = "notched claymore"
+ if(2)
+ user << "Another falls before you. Another soul fuses with your own. Another notch in the blade."
+ new_name = "double-notched claymore"
+ if(3)
+ user << "You're beginning to relish the thrill of battle."
+ new_name = "triple-notched claymore"
+ if(4)
+ user << "You've lost count of how many you've killed."
+ new_name = "many-notched claymore"
+ if(5)
+ user << "Five voices now echo in your mind, cheering the slaughter."
+ new_name = "battle-tested claymore"
+ if(6)
+ user << "Is this what the vikings felt like? Visions of glory fill your head as you slay your sixth foe."
+ new_name = "battle-scarred claymore"
+ if(7)
+ user << "Kill. Butcher. Conquer."
+ new_name = "blood-spattered claymore"
+ if(8)
+ user << "IT NEVER GETS OLD. THE SCREAMING. THE BLOOD AS IT SPRAYS ACROSS YOUR FACE."
+ new_name = "bloodthirsty claymore"
+ if(9)
+ user << "ANOTHER ONE FALLS TO YOUR BLOWS. ANOTHER WEAKLING UNFIT TO LIVE."
+ new_name = "gore-stained claymore"
+ if(10)
+ user.visible_message("[user]'s eyes light up with a vengeful fire!", \
+ "YOU FEEL THE POWER OF VALHALLA FLOWING THROUGH YOU! THERE CAN BE ONLY ONE!!!")
+ new_name = "GORE-DRENCHED CLAYMORE OF [pick("THE WHIMSICAL SLAUGHTER", "A THOUSAND SLAUGHTERED CATTLE", "GLORY AND VALHALLA", "ANNIHILATION", "OBLITERATION")]"
+ icon_state = "claymore_valhalla"
+ item_state = "cultblade"
+
+ name = new_name
+ playsound(user, 'sound/items/Screwdriver2.ogg', 50, 1)
+
/obj/item/weapon/katana
name = "katana"
desc = "Woefully underpowered in D20"
diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm
index 7a1377afe78..f2926a6d8aa 100644
--- a/code/modules/admin/verbs/onlyone.dm
+++ b/code/modules/admin/verbs/onlyone.dm
@@ -3,12 +3,15 @@
alert("The game hasn't started yet!")
return
+ world << "THERE CAN BE ONLY ONE!!!"
+ world << sound('sound/misc/highlander.ogg')
+
for(var/mob/living/carbon/human/H in player_list)
if(H.stat == 2 || !(H.client)) continue
if(is_special_character(H)) continue
ticker.mode.traitors += H.mind
- H.mind.special_role = "traitor"
+ H.mind.special_role = "highlander"
var/datum/objective/steal/steal_objective = new
steal_objective.owner = H.mind
@@ -16,10 +19,10 @@
H.mind.objectives += steal_objective
var/datum/objective/hijack/hijack_objective = new
+ hijack_objective.explanation_text = "Escape on the shuttle alone. Ensure nobody else makes it out."
hijack_objective.owner = H.mind
H.mind.objectives += hijack_objective
- H << "You are the traitor."
H.mind.announce_objectives()
for (var/obj/item/I in H)
@@ -27,10 +30,10 @@
continue
qdel(I)
- H.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(H), slot_w_uniform)
+ H.equip_to_slot_or_del(new /obj/item/clothing/under/kilt/highlander(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(H), slot_ears)
- H.equip_to_slot_or_del(new /obj/item/clothing/head/beret(H), slot_head)
- H.equip_to_slot_or_del(new /obj/item/weapon/claymore(H), slot_l_hand)
+ H.equip_to_slot_or_del(new /obj/item/clothing/head/beret/highlander(H), slot_head)
+ H.equip_to_slot_or_del(new /obj/item/weapon/claymore/highlander(H), slot_l_hand)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(H), slot_shoes)
H.equip_to_slot_or_del(new /obj/item/weapon/pinpointer(H.loc), slot_l_store)
@@ -40,12 +43,13 @@
W.access += get_all_centcom_access()
W.assignment = "Highlander"
W.registered_name = H.real_name
+ W.flags |= NODROP
W.update_label(H.real_name)
H.equip_to_slot_or_del(W, slot_wear_id)
message_admins("[key_name_admin(usr)] used THERE CAN BE ONLY ONE!")
- log_admin("[key_name(usr)] used there can be only one.")
-
+ log_admin("[key_name(usr)] used THERE CAN BE ONLY ONE.")
+ addtimer(SSshuttle.emergency, "request", 50, FALSE, null, 1)
/proc/only_me()
if(!ticker || !ticker.mode)
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index 730c7b1a556..b57b8f9d093 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -88,6 +88,10 @@
dog_fashion = /datum/dog_fashion/head/beret
+/obj/item/clothing/head/beret/highlander
+ desc = "That was white fabric. Was."
+ flags = NODROP
+ dog_fashion = null //THIS IS FOR SLAUGHTER, NOT PUPPIES
//Security
diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm
index e39452362c6..6ee8b505403 100644
--- a/code/modules/clothing/under/miscellaneous.dm
+++ b/code/modules/clothing/under/miscellaneous.dm
@@ -355,6 +355,10 @@
fitted = FEMALE_UNIFORM_TOP
can_adjust = 0
+/obj/item/clothing/under/kilt/highlander
+ desc = "You're the only one worthy of this kilt."
+ flags = NODROP
+
/obj/item/clothing/under/sexymime
name = "sexy mime outfit"
desc = "The only time when you DON'T enjoy looking at someone's rack."
diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi
index f9cddb028d6..993c6dc509b 100644
Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ
diff --git a/sound/misc/highlander.ogg b/sound/misc/highlander.ogg
new file mode 100644
index 00000000000..2116f8a9724
Binary files /dev/null and b/sound/misc/highlander.ogg differ