Files
Paradise/code/game/objects/items/weapons/weaponry.dm
Jesus Hussein Chris 95f7280781 Generic attack sounds for all melee weapons
Overrides the generic sounds with more suitable ones where needed.
Weapons that do no damage don't have sound effects.

Conflicts:
	code/game/gamemodes/wizard/artefact.dm
	code/game/objects/items/stacks/sheets/glass.dm
	code/game/objects/items/weapons/melee/misc.dm
	code/game/objects/items/weapons/storage/toolbox.dm
	code/game/objects/items/weapons/stunbaton.dm
	code/game/objects/items/weapons/weaponry.dm
	code/game/objects/weapons.dm
	code/modules/hydroponics/hydroitemdefines.dm
	code/modules/surgery/tools.dm
2014-01-22 10:15:43 -05:00

174 lines
5.9 KiB
Plaintext

/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) << "<span class='suicide'>[user] is hitting \himself with the [src.name]! It looks like \he's trying to ban \himself from life.</span>"
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) << "<span class='suicide'>[user] is impaling \himself with the [src.name]! It looks like \he's trying to commit suicide.</span>"
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()]\] <font color='orange'>Has been attacked with [src.name] by [user.name] ([user.ckey])</font>")
user.attack_log += text("\[[time_stamp()]\] <font color='red'>Used the [src.name] to attack [M.name] ([M.ckey])</font>")
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)]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
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 << "<span class='warning'>The nullrod's power interferes with your own!</span>"
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) << "<span class='suicide'>[user] is impaling \himself with the [src.name]! It looks like \he's trying to commit suicide.</span>"
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) << "<span class='suicide'>[user] is falling on the [src.name]! It looks like \he's trying to commit suicide.</span>"
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) << "<span class='suicide'>[user] is slitting \his stomach open with the [src.name]! It looks like \he's trying to commit seppuku.</span>"
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 << "<span class='notice'>You fasten the glass shard to the top of the rod with the cable.</span>"
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 << "<span class='notice'>You fasten the wirecutters to the top of the rod with the cable, prongs outward.</span>"
del(I)
del(src)