/obj/item/weapon/banhammer desc = "A banhammer" name = "banhammer" icon = 'icons/obj/items.dmi' icon_state = "toyhammer" flags = FPRINT | TABLEPASS slot_flags = SLOT_BELT throwforce = 0 w_class = 1.0 throw_speed = 7 throw_range = 15 attack_verb = list("banned") /obj/item/weapon/banhammer/suicide_act(mob/user) viewers(user) << "[user] is hitting \himself with the [src.name]! It looks like \he's trying to ban \himself from life." return (BRUTELOSS|FIRELOSS|TOXLOSS|OXYLOSS) /obj/item/weapon/nullrod name = "null rod" desc = "A rod of pure obsidian, its very presence disrupts and dampens the powers of paranormal phenomenae." icon_state = "nullrod" item_state = "nullrod" flags = FPRINT | TABLEPASS slot_flags = SLOT_BELT force = 15 throw_speed = 1 throw_range = 4 throwforce = 10 w_class = 1 suicide_act(mob/user) viewers(user) << "[user] is impaling \himself with the [src.name]! It looks like \he's trying to commit suicide." return (BRUTELOSS|FIRELOSS) /obj/item/weapon/nullrod/attack(mob/M as mob, mob/living/user as mob) //Paste from old-code to decult with a null rod. M.attack_log += text("\[[time_stamp()]\] Has been attacked with [src.name] by [user.name] ([user.ckey])") user.attack_log += text("\[[time_stamp()]\] Used the [src.name] to attack [M.name] ([M.ckey])") if(!iscarbon(user)) M.LAssailant = null else M.LAssailant = user msg_admin_attack("[user.name] ([user.ckey]) attacked [M.name] ([M.ckey]) with [src.name] (INTENT: [uppertext(user.a_intent)]) (JMP)") if (!(istype(user, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey") user << "\red You don't have the dexterity to do this!" return if ((M_CLUMSY in user.mutations) && prob(50)) user << "\red The rod slips out of your hand and hits your head." user.take_organ_damage(10) user.Paralyse(20) return if(M.mind) if(M.mind.vampire) if(ishuman(M)) if(!(VAMP_FULL in M.mind.vampire.powers)) M << "The nullrod's power interferes with your own!" M.mind.vampire.nullified = max(5, M.mind.vampire.nullified + 2) ..() /obj/item/weapon/nullrod/afterattack(atom/A, mob/user as mob) if (istype(A, /turf/simulated/floor)) user << "\blue You hit the floor with the [src]." call(/obj/effect/rune/proc/revealrunes)(src) /obj/item/weapon/sord name = "\improper SORD" desc = "This thing is so unspeakably shitty you are having a hard time even holding it." icon_state = "sord" item_state = "sord" flags = FPRINT | TABLEPASS slot_flags = SLOT_BELT force = 2 throwforce = 1 w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") suicide_act(mob/user) viewers(user) << "[user] is impaling \himself with the [src.name]! It looks like \he's trying to commit suicide." return(BRUTELOSS) /obj/item/weapon/sord/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() /obj/item/weapon/claymore name = "claymore" desc = "What are you standing around staring at this for? Get to killing!" icon_state = "claymore" item_state = "claymore" flags = FPRINT | TABLEPASS | CONDUCT hitsound = 'sound/weapons/bladeslice.ogg' slot_flags = SLOT_BELT force = 40 throwforce = 10 w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") IsShield() return 1 suicide_act(mob/user) viewers(user) << "[user] is falling on the [src.name]! It looks like \he's trying to commit suicide." return(BRUTELOSS) /obj/item/weapon/katana name = "katana" desc = "Woefully underpowered in D20" icon_state = "katana" item_state = "katana" flags = FPRINT | TABLEPASS | CONDUCT slot_flags = SLOT_BELT | SLOT_BACK force = 40 throwforce = 10 w_class = 3 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") suicide_act(mob/user) viewers(user) << "[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku." return(BRUTELOSS) /obj/item/weapon/katana/IsShield() return 1 /obj/item/weapon/katana/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1) return ..() /obj/item/weapon/harpoon name = "harpoon" sharp = 1 desc = "Tharr she blows!" icon_state = "harpoon" item_state = "harpoon" force = 20 throwforce = 15 w_class = 3 attack_verb = list("jabbed","stabbed","ripped") obj/item/weapon/wirerod name = "Wired rod" desc = "A rod with some wire wrapped around the top. It'd be easy to attach something to the top bit." icon_state = "wiredrod" item_state = "rods" flags = FPRINT | TABLEPASS | CONDUCT force = 9 throwforce = 10 w_class = 3 m_amt = 1875 attack_verb = list("hit", "bludgeoned", "whacked", "bonked") obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob) ..() if(istype(I, /obj/item/weapon/shard)) var/obj/item/weapon/twohanded/spear/S = new /obj/item/weapon/twohanded/spear user.put_in_hands(S) user << "You fasten the glass shard to the top of the rod with the cable." del(I) del(src) else if(istype(I, /obj/item/weapon/wirecutters)) var/obj/item/weapon/melee/baton/cattleprod/P = new /obj/item/weapon/melee/baton/cattleprod user.put_in_hands(P) user << "You fasten the wirecutters to the top of the rod with the cable, prongs outward." del(I) del(src)