Merge pull request #3583 from Verkister/chompychomp

Adds a funky fresh feature to beartraps.
This commit is contained in:
Spades
2018-05-05 08:32:38 -04:00
committed by GitHub
4 changed files with 30 additions and 5 deletions
@@ -0,0 +1,18 @@
/obj/item/weapon/beartrap
slot_flags = SLOT_MASK
item_icons = list(
slot_wear_mask_str = 'icons/mob/mask_vr.dmi'
)
/obj/item/weapon/beartrap/equipped()
if(ishuman(src.loc))
var/mob/living/carbon/human/H = src.loc
if(H.wear_mask == src)
H.verbs |= /mob/living/proc/shred_limb_temp
else
H.verbs -= /mob/living/proc/shred_limb_temp
..()
/obj/item/weapon/beartrap/dropped(var/mob/user)
user.verbs -= /mob/living/proc/shred_limb_temp
..()
@@ -664,7 +664,7 @@
var/list/choices = list()
for(var/mob/living/carbon/human/M in oviewers(1))
choices += M
if(!choices.len)
to_chat(src,"<span class='warning'>There's nobody nearby to use this on.</span>")
@@ -712,7 +712,7 @@
if(can_shred(T) != T)
to_chat(src,"<span class='warning'>Looks like you lost your chance...</span>")
return
//Removing an internal organ
if(T_int && T_int.damage >= 25) //Internal organ and it's been severely damaged
T.apply_damage(15, BRUTE, T_ext) //Damage the external organ they're going through.
@@ -727,7 +727,7 @@
//Removing an external organ
else if(!T_int && (T_ext.damage >= 25 || T_ext.brute_dam >= 25))
T_ext.droplimb(1,DROPLIMB_EDGE) //Clean cut so it doesn't kill the prey completely.
//Is it groin/chest? You can't remove those.
if(T_ext.cannot_amputate)
T.apply_damage(25, BRUTE, T_ext)
@@ -740,14 +740,20 @@
visible_message("<span class='warning'>[src] tears off [T]'s [T_ext.name]!</span>","<span class='warning'>You tear off [T]'s [T_ext.name]!</span>")
//Not targeting an internal organ w/ > 25 damage , and the limb doesn't have < 25 damage.
else
else
if(T_int)
T_int.damage = 25 //Internal organs can only take damage, not brute damage.
T.apply_damage(25, BRUTE, T_ext)
visible_message("<span class='danger'>[src] severely damages [T]'s [T_ext.name]!</span>")
add_attack_logs(src,T,"Shredded (hardvore)")
/mob/living/proc/shred_limb_temp()
set name = "Damage/Remove Prey's Organ (beartrap)"
set desc = "Severely damages prey's organ. If the limb is already severely damaged, it will be torn off."
set category = "Abilities"
shred_limb()
/mob/living/proc/flying_toggle()
set name = "Toggle Flight"
set desc = "While flying over open spaces, you will use up some nutrition. If you run out nutrition, you will fall. Additionally, you can't fly if you are too heavy."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

+1
View File
@@ -1042,6 +1042,7 @@
#include "code\game\objects\items\weapons\tools.dm"
#include "code\game\objects\items\weapons\towels.dm"
#include "code\game\objects\items\weapons\traps.dm"
#include "code\game\objects\items\weapons\traps_vr.dm"
#include "code\game\objects\items\weapons\trays.dm"
#include "code\game\objects\items\weapons\weaponry.dm"
#include "code\game\objects\items\weapons\weldbackpack.dm"