diff --git a/code/global.dm b/code/global.dm index d32b1a837b3..861a5cda134 100644 --- a/code/global.dm +++ b/code/global.dm @@ -130,6 +130,8 @@ var/list/xeno_spawn = list()//Aliens spawn at these. // list/mazewarp = list() var/list/tdome1 = list() var/list/tdome2 = list() +var/list/team_alpha = list() +var/list/team_bravo = list() var/list/tdomeobserve = list() var/list/tdomeadmin = list() var/list/prisonsecuritywarp = list() //prison security goes to these diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm index aea08db5743..fe97f8758c8 100644 --- a/code/modules/admin/verbs/onlyone.dm +++ b/code/modules/admin/verbs/onlyone.dm @@ -48,4 +48,20 @@ message_admins("\blue [key_name_admin(usr)] used THERE CAN BE ONLY ONE!", 1) log_admin("[key_name(usr)] used there can be only one.") - world << sound('sound/music/highlander.ogg') \ No newline at end of file + world << sound('sound/music/highlander.ogg') + + +/obj/item/weapon/beach_ball/dodgeball + name = "dodgeball" + icon_state = "dodgeball" + item_state = "dodgeball" + desc = "Used for playing the most violent and degrading of childhood games." + +/obj/item/weapon/beach_ball/holoball/dodgeball/throw_impact(atom/hit_atom) + if((ishuman(hit_atom))) + var/mob/living/carbon/M = hit_atom + playsound(src, 'sound/items/dodgeball.ogg', 50, 1) + M.apply_damage(10, HALLOSS) + if(prob(5)) + M.Weaken(3) + visible_message("\red [M] HAS BEEN ELIMINATED!!", 3) \ No newline at end of file diff --git a/code/modules/admin/verbs/onlyoneteam.dm b/code/modules/admin/verbs/onlyoneteam.dm new file mode 100644 index 00000000000..73352469b79 --- /dev/null +++ b/code/modules/admin/verbs/onlyoneteam.dm @@ -0,0 +1,84 @@ +/client/proc/only_one_team() + 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 + + + for (var/obj/item/I in H) + if (istype(I, /obj/item/weapon/implant)) + continue + del(I) + + + + H.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(H), slot_l_ear) +// 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/beach_ball/dodgeball(H), slot_l_hand) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/white(H), slot_shoes) + + + + if(prob(50)) + team_alpha += H + + H.equip_to_slot_or_del(new /obj/item/clothing/under/red(H), slot_w_uniform) + + var/obj/item/weapon/card/id/W = new(H) + W.name = "[H.real_name]'s ID Card" + W.icon_state = "centcom" + W.access = get_all_accesses() + W.access += get_all_centcom_access() + W.assignment = "Highlander" + W.registered_name = H.real_name + H.equip_to_slot_or_del(W, slot_wear_id) + + else + team_bravo += H + + H.equip_to_slot_or_del(new /obj/item/clothing/under/blue(H), slot_w_uniform) + + var/obj/item/weapon/card/id/W = new(H) + W.name = "[H.real_name]'s ID Card" + W.icon_state = "centcom" + W.access = get_all_accesses() + W.access += get_all_centcom_access() + W.assignment = "Professional Pee-Wee League Dodgeball Player" + W.registered_name = H.real_name + H.equip_to_slot_or_del(W, slot_wear_id) + message_admins("\blue [key_name_admin(usr)] used DODGEBAWWWWWWWL!", 1) + log_admin("[key_name(usr)] used dodgeball.") + + +/obj/item/weapon/beach_ball/dodgeball + name = "dodgeball" + icon_state = "dodgeball" + item_state = "dodgeball" + desc = "Used for playing the most violent and degrading of childhood games." + +/obj/item/weapon/beach_ball/dodgeball/throw_impact(atom/hit_atom) + if((ishuman(hit_atom))) + var/mob/living/carbon/M = hit_atom + if( + + + playsound(src, 'sound/items/dodgeball.ogg', 50, 1) + visible_message("\red [M] HAS BEEN ELIMINATED!!", 3) + spawn(0) + var/mobloc = get_turf(M.loc) + var/atom/movable/overlay/animation = new /atom/movable/overlay( mobloc ) + animation.name = "water" + animation.density = 0 + animation.anchored = 1 + animation.icon = 'icons/mob/mob.dmi' + animation.icon_state = "liquify" + animation.layer = 5 + animation.master = holder + del(M) \ No newline at end of file diff --git a/icons/obj/basketball.dmi b/icons/obj/basketball.dmi index 0461da64953..fd48de1ea36 100644 Binary files a/icons/obj/basketball.dmi and b/icons/obj/basketball.dmi differ diff --git a/sound/items/dodgeball.ogg b/sound/items/dodgeball.ogg new file mode 100644 index 00000000000..48ee657923f Binary files /dev/null and b/sound/items/dodgeball.ogg differ