@@ -13,48 +13,66 @@
|
||||
set name = "Arm Blade (20)"
|
||||
|
||||
if(src.mind.changeling.recursive_enhancement)
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/arm_blade/greater))
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/changeling/arm_blade/greater))
|
||||
src << "<span class='notice'>We prepare an extra sharp blade.</span>"
|
||||
return 1
|
||||
|
||||
else
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/arm_blade))
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/changeling/arm_blade))
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/melee/arm_blade
|
||||
name = "arm blade"
|
||||
desc = "A grotesque blade made out of bone and flesh that cleaves through people as a hot knife through butter."
|
||||
//Claws
|
||||
/datum/power/changeling/claw
|
||||
name = "Claw"
|
||||
desc = "We reform one of our arms into a deadly claw."
|
||||
helptext = "We may retract our claw by dropping it."
|
||||
enhancedtext = "The claw will have armor peneratration."
|
||||
ability_icon_state = "ling_claw"
|
||||
genomecost = 1
|
||||
verbpath = /mob/proc/changeling_claw
|
||||
|
||||
//Grows a scary, and powerful arm blade.
|
||||
/mob/proc/changeling_claw()
|
||||
set category = "Changeling"
|
||||
set name = "Claw (15)"
|
||||
|
||||
if(src.mind.changeling.recursive_enhancement)
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/changeling/claw/greater, 1, 15))
|
||||
src << "<span class='notice'>We prepare an extra sharp claw.</span>"
|
||||
return 1
|
||||
|
||||
else
|
||||
if(changeling_generic_weapon(/obj/item/weapon/melee/changeling/claw, 1, 15))
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/weapon/melee/changeling
|
||||
name = "arm weapon"
|
||||
desc = "A grotesque weapon made out of bone and flesh that cleaves through people as a hot knife through butter."
|
||||
icon = 'icons/obj/weapons.dmi'
|
||||
icon_state = "arm_blade"
|
||||
w_class = ITEMSIZE_HUGE
|
||||
force = 40
|
||||
sharp = 1
|
||||
edge = 1
|
||||
pry = 1
|
||||
force = 5
|
||||
anchored = 1
|
||||
throwforce = 0 //Just to be on the safe side
|
||||
throw_range = 0
|
||||
throw_speed = 0
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
var/mob/living/creator //This is just like ninja swords, needed to make sure dumb shit that removes the sword doesn't make it stay around.
|
||||
var/weapType = "weapon"
|
||||
var/weapLocation = "arm"
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/greater
|
||||
name = "arm greatblade"
|
||||
desc = "A grotesque blade made out of bone and flesh that cleaves through people and armor as a hot knife through butter."
|
||||
armor_penetration = 30
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/New(location)
|
||||
/obj/item/weapon/melee/changeling/New(location)
|
||||
..()
|
||||
processing_objects |= src
|
||||
if(ismob(loc))
|
||||
visible_message("<span class='warning'>A grotesque blade forms around [loc.name]\'s arm!</span>",
|
||||
"<span class='warning'>Our arm twists and mutates, transforming it into a deadly blade.</span>",
|
||||
visible_message("<span class='warning'>A grotesque weapon forms around [loc.name]\'s arm!</span>",
|
||||
"<span class='warning'>Our arm twists and mutates, transforming it into a deadly weapon.</span>",
|
||||
"<span class='italics'>You hear organic matter ripping and tearing!</span>")
|
||||
src.creator = loc
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/dropped(mob/user)
|
||||
visible_message("<span class='warning'>With a sickening crunch, [creator] reforms their arm blade into an arm!</span>",
|
||||
/obj/item/weapon/melee/changeling/dropped(mob/user)
|
||||
visible_message("<span class='warning'>With a sickening crunch, [creator] reforms their arm!</span>",
|
||||
"<span class='notice'>We assimilate the weapon back into our body.</span>",
|
||||
"<span class='italics'>You hear organic matter ripping and tearing!</span>")
|
||||
playsound(src, 'sound/effects/blobattack.ogg', 30, 1)
|
||||
@@ -62,16 +80,16 @@
|
||||
if(src)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/Destroy()
|
||||
/obj/item/weapon/melee/changeling/Destroy()
|
||||
processing_objects -= src
|
||||
creator = null
|
||||
..()
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/suicide_act(mob/user)
|
||||
/obj/item/weapon/melee/changeling/suicide_act(mob/user)
|
||||
viewers(user) << "<span class='danger'>[user] is impaling \himself the [src.name]! It looks like \he's trying to commit suicide.</span>"
|
||||
return(BRUTELOSS)
|
||||
|
||||
/obj/item/weapon/melee/arm_blade/process() //Stolen from ninja swords.
|
||||
/obj/item/weapon/melee/changeling/process() //Stolen from ninja swords.
|
||||
if(!creator || loc != creator || !creator.item_is_in_hands(src))
|
||||
// Tidy up a bit.
|
||||
if(istype(loc,/mob/living))
|
||||
@@ -87,3 +105,33 @@
|
||||
spawn(1)
|
||||
if(src)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/melee/changeling/arm_blade
|
||||
name = "arm blade"
|
||||
desc = "A grotesque blade made out of bone and flesh that cleaves through people as a hot knife through butter."
|
||||
icon_state = "arm_blade"
|
||||
force = 40
|
||||
armor_penetration = 15
|
||||
sharp = 1
|
||||
edge = 1
|
||||
pry = 1
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
|
||||
/obj/item/weapon/melee/changeling/arm_blade/greater
|
||||
name = "arm greatblade"
|
||||
desc = "A grotesque blade made out of bone and flesh that cleaves through people and armor as a hot knife through butter."
|
||||
armor_penetration = 30
|
||||
|
||||
/obj/item/weapon/melee/changeling/claw
|
||||
name = "hand claw"
|
||||
desc = "A grotesque claw made out of bone and flesh that cleaves through people as a hot knife through butter."
|
||||
icon_state = "ling_claw"
|
||||
force = 15
|
||||
sharp = 1
|
||||
edge = 1
|
||||
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut")
|
||||
|
||||
/obj/item/weapon/melee/changeling/claw/greater
|
||||
name = "hand greatclaw"
|
||||
force = 20
|
||||
armor_penetration = 20
|
||||
@@ -130,7 +130,7 @@
|
||||
break_to_parts()
|
||||
return
|
||||
|
||||
if(istype(W, /obj/item/weapon/melee/arm_blade))
|
||||
if(istype(W, /obj/item/weapon/melee/changeling/arm_blade))
|
||||
user.visible_message("<span class='danger'>\The [src] was sliced apart by [user]!</span>")
|
||||
break_to_parts()
|
||||
return
|
||||
|
||||
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 34 KiB |