Merge pull request #2405 from Fox-McCloud/multiverse-sword

Multiverse sword
This commit is contained in:
TheDZD
2015-10-23 20:48:53 -04:00
6 changed files with 477 additions and 4 deletions
+30
View File
@@ -347,6 +347,36 @@ datum/objective/hijack
return 0
return 1
/datum/objective/hijackclone
explanation_text = "Hijack the emergency shuttle by ensuring only you (or your copies) escape."
check_completion()
if(!owner.current)
return 0
if(!emergency_shuttle.returned())
return 0
var/area/A = locate(/area/shuttle/escape/centcom)
for(var/mob/living/player in player_list) //Make sure nobody else is onboard
if(player.mind && player.mind != owner)
if(player.stat != DEAD)
if(istype(player, /mob/living/silicon))
continue
if(get_area(player) == A)
if(player.real_name != owner.current.real_name && !istype(get_turf(player.mind.current), /turf/simulated/shuttle/floor4))
return 0
for(var/mob/living/player in player_list) //Make sure at least one of you is onboard
if(player.mind && player.mind != owner)
if(player.stat != DEAD)
if(istype(player, /mob/living/silicon))
continue
if(get_area(player) == A)
if(player.real_name == owner.current.real_name && !istype(get_turf(player.mind.current), /turf/simulated/shuttle/floor4))
return 1
return 0
datum/objective/block
explanation_text = "Do not allow any organic lifeforms to escape on the shuttle alive."
+384
View File
@@ -213,3 +213,387 @@
user << "<span class='notice'> You can see...everything!</span>"
visible_message("<span class='danger'>[user] stares into [src], their eyes glazing over.</span>")
user.ghostize(1)
/////////////////////Multiverse Blade////////////////////
var/global/list/multiverse = list()
/obj/item/weapon/multisword
name = "multiverse sword"
desc = "A weapon capable of conquering the universe and beyond. Activate it to summon copies of yourself from others dimensions to fight by your side."
icon = 'icons/obj/weapons.dmi'
icon_state = "energy_katana"
item_state = "energy_katana"
hitsound = 'sound/weapons/bladeslice.ogg'
flags = CONDUCT
slot_flags = SLOT_BELT
force = 20
throwforce = 10
sharp = 1
edge = 1
w_class = 2
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
var/faction = list("unassigned")
var/cooldown = 0
var/cooldown_between_uses = 400 //time in deciseconds between uses--default of 40 seconds.
var/assigned = "unassigned"
var/evil = TRUE
var/probability_evil = 30 //what's the probability this sword will be evil when activated?
var/duplicate_self = 0 //Do we want the species randomized along with equipment should the user be duplicated in their entirety?
var/sword_type = /obj/item/weapon/multisword //type of sword to equip.
/obj/item/weapon/multisword/New()
..()
multiverse |= src
/obj/item/weapon/multisword/Destroy()
multiverse.Remove(src)
return ..()
/obj/item/weapon/multisword/attack(mob/living/M as mob, mob/living/user as mob) //to prevent accidental friendly fire or out and out grief.
if(M.real_name == user.real_name)
user << "<span class='warning'>The [src] detects benevolent energies in your target and redirects your attack!</span>"
return
..()
/obj/item/weapon/multisword/attack_self(mob/user)
if(user.mind.special_role == "apprentice")
user << "<span class='warning'>You know better than to touch your teacher's stuff.</span>"
return
if(cooldown < world.time)
var/faction_check = 0
for(var/F in faction)
if(F in user.faction)
faction_check = 1
break
if(faction_check == 0)
faction = list("[user.real_name]")
assigned = "[user.real_name]"
user.faction = list("[user.real_name]")
user << "You bind the sword to yourself. You can now use it to summon help."
if(!usr.mind.special_role)
if(prob(probability_evil))
user << "<span class='warning'><B>With your new found power you could easily conquer the station!</B></span>"
var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone
hijack_objective.owner = usr.mind
usr.mind.objectives += hijack_objective
hijack_objective.explanation_text = "Ensure only [usr.real_name] and their copies are on the shuttle!"
usr << "<B>Objective #[1]</B>: [hijack_objective.explanation_text]"
ticker.mode.traitors += usr.mind
usr.mind.special_role = "[usr.real_name] Prime"
evil = TRUE
else
user << "<span class='warning'><B>With your new found power you could easily defend the station!</B></span>"
var/datum/objective/survive/new_objective = new /datum/objective/survive
new_objective.owner = usr.mind
new_objective.explanation_text = "Survive, and help defend the innocent from the mobs of multiverse clones."
usr << "<B>Objective #[1]</B>: [new_objective.explanation_text]"
usr.mind.objectives += new_objective
ticker.mode.traitors += usr.mind
usr.mind.special_role = "[usr.real_name] Prime"
evil = FALSE
else
var/list/candidates = get_candidates(BE_WIZARD)
if(candidates.len)
var/client/C = pick(candidates)
spawn_copy(C, get_turf(user.loc), user)
user << "<span class='warning'><B>The sword flashes, and you find yourself face to face with...you!</B></span>"
cooldown = world.time + cooldown_between_uses
for(var/obj/item/weapon/multisword/M in multiverse)
if(M.assigned == assigned)
M.cooldown = cooldown
else
user << "You fail to summon any copies of yourself. Perhaps you should try again in a bit."
else
user << "<span class='warning'><B>[src] is recharging! Keep in mind it shares a cooldown with the swords wielded by your copies.</span>"
/obj/item/weapon/multisword/proc/spawn_copy(var/client/C, var/turf/T)
var/mob/living/carbon/human/M = new/mob/living/carbon/human(T)
if(duplicate_self)
usr.client.prefs.copy_to(M)
else
C.prefs.copy_to(M)
M.key = C.key
M.mind.name = usr.real_name
M << "<B>You are an alternate version of [usr.real_name] from another universe! Help them accomplish their goals at all costs.</B>"
M.faction = list("[usr.real_name]")
if(duplicate_self)
M.set_species(usr.get_species()) //duplicate the sword user's species.
else
if(prob(50))
var/list/all_species = list("Human","Unathi","Skrell","Tajaran","Kidan","Golem","Diona","Machine","Slime People","Grey","Vulpkanin")
M.set_species(pick(all_species))
M.real_name = usr.real_name //this is clear down here in case the user happens to become a golem; that way they have the proper name.
M.name = usr.real_name
if(duplicate_self)
M.dna = usr.dna.Clone()
M.UpdateAppearance()
domutcheck(M, null)
M.update_body()
M.update_hair()
equip_copy(M)
if(evil)
var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone
hijack_objective.owner = M.mind
M.mind.objectives += hijack_objective
hijack_objective.explanation_text = "Ensure only [usr.real_name] and their copies are on the shuttle!"
M << "<B>Objective #[1]</B>: [hijack_objective.explanation_text]"
M.mind.special_role = "multiverse traveller"
log_game("[M.key] was made a multiverse traveller with the objective to help [usr.real_name] hijack.")
else
var/datum/objective/protect/new_objective = new /datum/objective/protect
new_objective.owner = M.mind
new_objective.target = usr.mind
new_objective.explanation_text = "Protect [usr.real_name], your copy, and help them defend the innocent from the mobs of multiverse clones."
M.mind.objectives += new_objective
M << "<B>Objective #[1]</B>: [new_objective.explanation_text]"
M.mind.special_role = "multiverse traveller"
log_game("[M.key] was made a multiverse traveller with the objective to help [usr.real_name] protect the station.")
/obj/item/weapon/multisword/proc/equip_copy(var/mob/living/carbon/human/M)
var/obj/item/weapon/multisword/sword = new sword_type
sword.assigned = assigned
sword.faction = list("[assigned]")
sword.evil = evil
if(duplicate_self)
//Duplicates the user's current equipent
var/mob/living/carbon/human/H = usr
var/obj/head = H.get_item_by_slot(slot_head)
if(head)
M.equip_to_slot_or_del(new head.type(M), slot_head)
var/obj/mask = H.get_item_by_slot(slot_wear_mask)
if(mask)
M.equip_to_slot_or_del(new mask.type(M), slot_wear_mask)
var/obj/glasses = H.get_item_by_slot(slot_glasses)
if(glasses)
M.equip_to_slot_or_del(new glasses.type(M), slot_glasses)
var/obj/left_ear = H.get_item_by_slot(slot_l_ear)
if(left_ear)
M.equip_to_slot_or_del(new left_ear.type(M), slot_l_ear)
var/obj/right_ear = H.get_item_by_slot(slot_r_ear)
if(right_ear)
M.equip_to_slot_or_del(new right_ear.type(M), slot_r_ear)
var/obj/uniform = H.get_item_by_slot(slot_w_uniform)
if(uniform)
M.equip_to_slot_or_del(new uniform.type(M), slot_w_uniform)
var/obj/suit = H.get_item_by_slot(slot_wear_suit)
if(suit)
M.equip_to_slot_or_del(new suit.type(M), slot_wear_suit)
var/obj/gloves = H.get_item_by_slot(slot_gloves)
if(gloves)
M.equip_to_slot_or_del(new gloves.type(M), slot_gloves)
var/obj/shoes = H.get_item_by_slot(slot_shoes)
if(shoes)
M.equip_to_slot_or_del(new shoes.type(M), slot_shoes)
var/obj/belt = H.get_item_by_slot(slot_belt)
if(belt)
M.equip_to_slot_or_del(new belt.type(M), slot_belt)
var/obj/pda = H.get_item_by_slot(slot_wear_pda)
if(pda)
M.equip_to_slot_or_del(new pda.type(M), slot_wear_pda)
var/obj/back = H.get_item_by_slot(slot_back)
if(back)
M.equip_to_slot_or_del(new back.type(M), slot_back)
var/obj/suit_storage = H.get_item_by_slot(slot_s_store)
if(suit_storage)
M.equip_to_slot_or_del(new suit_storage.type(M), slot_s_store)
var/obj/left_pocket = H.get_item_by_slot(slot_l_store)
if(left_pocket)
M.equip_to_slot_or_del(new left_pocket.type(M), slot_l_store)
var/obj/right_pocket = H.get_item_by_slot(slot_r_store)
if(right_pocket)
M.equip_to_slot_or_del(new right_pocket.type(M), slot_r_store)
M.equip_to_slot_or_del(sword, slot_r_hand) //Don't duplicate what's equipped to hands, or else duplicate swords could be generated...or weird cases of factionless swords.
else
if(M.get_species() == "Tajaran" || M.get_species() == "Unathi")
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes) //If they can't wear shoes, give them a pair of sandals.
var/randomize = pick("mobster","roman","wizard","cyborg","syndicate","assistant", "animu", "cultist", "highlander", "clown", "killer", "pirate", "soviet", "officer", "gladiator")
switch(randomize)
if("mobster")
M.equip_to_slot_or_del(new /obj/item/clothing/head/fedora(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/black(M), slot_gloves)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(M), slot_glasses)
M.equip_to_slot_or_del(new /obj/item/clothing/under/suit_jacket/really_black(M), slot_w_uniform)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("roman")
var/hat = pick(/obj/item/clothing/head/helmet/roman, /obj/item/clothing/head/helmet/roman/legionaire)
M.equip_to_slot_or_del(new hat(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/under/roman(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/roman(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/weapon/shield/riot/roman(M), slot_l_hand)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("wizard")
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/lightpurple(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/wizrobe/red(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/head/wizard/red(M), slot_head)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("cyborg")
if(M.get_species() != "Machine")
for(var/obj/item/organ/O in M.organs)
O.robotize()
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/thermal/eyepatch(M), slot_glasses)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("syndicate")
M.equip_to_slot_or_del(new /obj/item/clothing/under/syndicate(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves)
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/swat(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/mask/gas(M),slot_wear_mask)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("assistant")
M.equip_to_slot_or_del(new /obj/item/clothing/under/color/grey(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/black(M), slot_shoes)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("animu")
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/head/kitty(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/under/schoolgirl(M), slot_w_uniform)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("cultist")
M.equip_to_slot_or_del(new /obj/item/clothing/head/culthood/alt(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/cultrobes/alt(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/cult(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("highlander")
M.equip_to_slot_or_del(new /obj/item/clothing/under/kilt(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/head/beret(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("clown")
M.equip_to_slot_or_del(new /obj/item/clothing/under/rank/clown(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/clown_shoes(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(M), slot_wear_mask)
M.equip_to_slot_or_del(new /obj/item/weapon/bikehorn(M), slot_l_store)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("killer")
M.equip_to_slot_or_del(new /obj/item/clothing/under/overalls(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/color/latex(M), slot_gloves)
M.equip_to_slot_or_del(new /obj/item/clothing/mask/surgical(M), slot_wear_mask)
M.equip_to_slot_or_del(new /obj/item/clothing/head/welding(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/apron(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/weapon/kitchen/utensil/knife(M), slot_l_store)
M.equip_to_slot_or_del(new /obj/item/weapon/scalpel(M), slot_r_store)
M.equip_to_slot_or_del(sword, slot_r_hand)
for(var/obj/item/carried_item in M.contents)
if(!istype(carried_item, /obj/item/weapon/implant))
carried_item.add_blood(M)
if("pirate")
M.equip_to_slot_or_del(new /obj/item/clothing/under/pirate(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/brown(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/head/bandana(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("soviet")
M.equip_to_slot_or_del(new /obj/item/clothing/head/hgpiratecap(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/hgpirate(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/under/soviet(M), slot_w_uniform)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("officer")
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space/deathsquad/beret(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/combat(M), slot_shoes)
M.equip_to_slot_or_del(new /obj/item/clothing/gloves/combat(M), slot_gloves)
M.equip_to_slot_or_del(new /obj/item/clothing/mask/cigarette/cigar/havana(M), slot_wear_mask)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/suit/jacket/miljacket(M), slot_wear_suit)
M.equip_to_slot_or_del(new /obj/item/clothing/under/syndicate(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/clothing/glasses/eyepatch(M), slot_glasses)
M.equip_to_slot_or_del(sword, slot_r_hand)
if("gladiator")
M.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/gladiator(M), slot_head)
M.equip_to_slot_or_del(new /obj/item/clothing/under/gladiator(M), slot_w_uniform)
M.equip_to_slot_or_del(new /obj/item/device/radio/headset(M), slot_l_ear)
M.equip_to_slot_or_del(new /obj/item/clothing/shoes/sandal(M), slot_shoes)
M.equip_to_slot_or_del(sword, slot_r_hand)
else
return
var/obj/item/weapon/card/id/W = new /obj/item/weapon/card/id
if(duplicate_self)
var/duplicated_access = usr.get_item_by_slot(slot_wear_id)
if(duplicated_access && istype(duplicated_access, /obj/item/weapon/card/id))
var/obj/item/weapon/card/id/duplicated_id = duplicated_access
W.access = duplicated_id.access
W.icon_state = duplicated_id.icon_state
else
W.access += access_maint_tunnels
W.icon_state = "centcom"
else
W.access += access_maint_tunnels
W.icon_state = "centcom"
W.assignment = "Multiverse Traveller"
W.registered_name = M.real_name
W.update_label(M.real_name)
W.SetOwnerInfo(M)
M.equip_to_slot_or_del(W, slot_wear_id)
M.update_icons()
/obj/item/weapon/multisword/pure_evil
probability_evil = 100
/obj/item/weapon/multisword/pike //If We are to be used and spent, let it be for a noble purpose.
name = "phantom pike"
desc = "A fishing pike that appears to be imbued with a peculiar energy."
icon_state = "harpoon"
item_state = "harpoon"
cooldown_between_uses = 200 //Half the time
probability_evil = 100
duplicate_self = 1
sword_type = /obj/item/weapon/multisword/pike
+9 -2
View File
@@ -179,6 +179,13 @@
/obj/item/weapon/card/id/proc/is_untrackable()
return untrackable
/obj/item/weapon/card/id/proc/update_label(newname, newjob)
if(newname || newjob)
name = "[(!newname) ? "identification card" : "[newname]'s ID Card"][(!newjob) ? "" : " ([newjob])"]"
return
name = "[(!registered_name) ? "identification card" : "[registered_name]'s ID Card"][(!assignment) ? "" : " ([assignment])"]"
/obj/item/weapon/card/id/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
..()
@@ -623,12 +630,12 @@
assignment = "Green Team Fighter"
icon_state = "TDgreen"
desc = "This ID card is given to those who fought inside the thunderdome for the Green Team. Not many have lived to see one of those, even fewer lived to keep it."
/obj/item/weapon/card/id/lifetime
name = "Lifetime ID Card"
desc = "A modified ID card given only to those people who have devoted their lives to the better interests of Nanotrasen. It sparkles blue."
icon_state = "lifetimeid"
// Decals
/obj/item/weapon/id_decal
name = "identification card decal"
+1
View File
@@ -100,6 +100,7 @@
<b>TDM</b><br>
<A href='?src=\ref[src];secretsfun=traitor_all'>Everyone is the traitor</A>&nbsp;&nbsp;
<A href='?src=\ref[src];secretsfun=onlyone'>There can only be one!</A>&nbsp;&nbsp;
<A href='?src=\ref[src];secretsfun=onlyme'>There can only be me!</A>&nbsp;&nbsp;
<A href='?src=\ref[src];secretsfun=onlyoneteam'>Dodgeball (TDM)!</A><BR>
<b>Round-enders</b><br>
<A href='?src=\ref[src];secretsfun=floorlava'>The floor is lava! (DANGEROUS: extremely lame)</A><BR>
+4
View File
@@ -2668,6 +2668,10 @@
feedback_add_details("admin_secrets_fun_used","OO")
usr.client.only_one()
// message_admins("[key_name_admin(usr)] has triggered HIGHLANDER")
if("onlyme")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","OM")
usr.client.only_me()
if("onlyoneteam")
feedback_inc("admin_secrets_fun_used",1)
feedback_add_details("admin_secrets_fun_used","OOT")
+49 -2
View File
@@ -5,9 +5,9 @@
var/list/incompatible_species = list("Plasmaman")
for(var/mob/living/carbon/human/H in player_list)
if(H.stat == DEAD || !(H.client))
if(H.stat == DEAD || !(H.client))
continue
if(is_special_character(H))
if(is_special_character(H))
continue
if(H.species.name in incompatible_species)
H.set_species("Human")
@@ -55,3 +55,50 @@
message_admins("[key_name_admin(usr)] used THERE CAN BE ONLY ONE! -NO ATTACK LOGS WILL BE SENT TO ADMINS FROM THIS POINT FORTH-", 1)
log_admin("[key_name(usr)] used there can be only one.")
nologevent = 1
world << sound('sound/music/THUNDERDOME.ogg')
/client/proc/only_me()
if(!ticker)
alert("The game hasn't started yet!")
return
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 = "[H.real_name] Prime"
var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone
hijack_objective.owner = H.mind
H.mind.objectives += hijack_objective
H << "<B>You are the multiverse summoner. Activate your blade to summon copies of yourself from another universe to fight by your side.</B>"
var/obj_count = 1
for(var/datum/objective/OBJ in H.mind.objectives)
H << "<B>Objective #[obj_count]</B>: [OBJ.explanation_text]"
obj_count++
var/obj/item/slot_item_ID = H.get_item_by_slot(slot_wear_id)
qdel(slot_item_ID)
var/obj/item/slot_item_hand = H.get_item_by_slot(slot_r_hand)
H.unEquip(slot_item_hand)
var /obj/item/weapon/multisword/pure_evil/multi = new(H)
H.equip_to_slot_or_del(multi, slot_r_hand)
var/obj/item/weapon/card/id/W = new(H)
W.icon_state = "centcom"
W.access = get_all_accesses()
W.access += get_all_centcom_access()
W.assignment = "Multiverse Summoner"
W.registered_name = H.real_name
W.update_label(H.real_name)
H.equip_to_slot_or_del(W, slot_wear_id)
H.update_icons()
message_admins("[key_name_admin(usr)] used THERE CAN BE ONLY ME! -NO ATTACK LOGS WILL BE SENT TO ADMINS FROM THIS POINT FORTH-", 1)
log_admin("[key_name(usr)] used there can be only me.")
nologevent = 1
world << sound('sound/music/THUNDERDOME.ogg')