Merge pull request #15651 from timothyteakettle/oof-ouch-my-bones!
adds paper skin and glass bones quirks
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
species_category = SPECIES_CATEGORY_JELLY
|
||||
wings_icons = SPECIES_WINGS_JELLY
|
||||
ass_image = 'icons/ass/assslime.png'
|
||||
blacklisted_quirks = list(/datum/quirk/glass_bones)
|
||||
|
||||
/datum/species/jelly/on_species_loss(mob/living/carbon/C)
|
||||
C.faction -= "slime"
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
wings_icons = SPECIES_WINGS_SKELETAL
|
||||
|
||||
ass_image = 'icons/ass/assplasma.png'
|
||||
blacklisted_quirks = list(/datum/quirk/paper_skin)
|
||||
|
||||
/datum/species/plasmaman/spec_life(mob/living/carbon/human/H)
|
||||
var/datum/gas_mixture/environment = H.loc.return_air()
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
|
||||
species_category = SPECIES_CATEGORY_SKELETON //they have their own category that's disassociated from undead, paired with plasmapeople
|
||||
wings_icons = SPECIES_WINGS_SKELETAL
|
||||
blacklisted_quirks = list(/datum/quirk/paper_skin)
|
||||
|
||||
/datum/species/skeleton/New()
|
||||
if(SSevents.holidays && SSevents.holidays[HALLOWEEN]) //skeletons are stronger during the spooky season!
|
||||
|
||||
@@ -228,6 +228,8 @@
|
||||
var/mangled_state = get_mangled_state()
|
||||
var/bio_state = owner.get_biological_state()
|
||||
var/easy_dismember = HAS_TRAIT(owner, TRAIT_EASYDISMEMBER) // if we have easydismember, we don't reduce damage when redirecting damage to different types (slashing weapons on mangled/skinless limbs attack at 100% instead of 50%)
|
||||
var/glass_bones = HAS_TRAIT(owner, TRAIT_GLASS_BONES)
|
||||
var/paper_skin = HAS_TRAIT(owner, TRAIT_PAPER_SKIN)
|
||||
|
||||
if(wounding_type == WOUND_BLUNT)
|
||||
if(sharpness == SHARP_EDGED)
|
||||
@@ -242,9 +244,11 @@
|
||||
if(wounding_type == WOUND_SLASH)
|
||||
wounding_type = WOUND_BLUNT
|
||||
wounding_dmg *= (easy_dismember ? 1 : 0.5)
|
||||
wounding_dmg *= (glass_bones ? 1.5 : 1)
|
||||
else if(wounding_type == WOUND_PIERCE)
|
||||
wounding_type = WOUND_BLUNT
|
||||
wounding_dmg *= (easy_dismember ? 1 : 0.75)
|
||||
wounding_dmg *= (glass_bones ? 1.5 : 1)
|
||||
if((mangled_state & BODYPART_MANGLED_BONE) && try_dismember(wounding_type, wounding_dmg, wound_bonus, bare_wound_bonus))
|
||||
return
|
||||
// if we're flesh only, all blunt attacks become weakened slashes in terms of wound damage
|
||||
@@ -252,12 +256,17 @@
|
||||
if(wounding_type == WOUND_BLUNT)
|
||||
wounding_type = WOUND_SLASH
|
||||
wounding_dmg *= (easy_dismember ? 1 : 0.5)
|
||||
wounding_dmg *= (paper_skin ? 1.5 : 1)
|
||||
if((mangled_state & BODYPART_MANGLED_FLESH) && try_dismember(wounding_type, wounding_dmg, wound_bonus, bare_wound_bonus))
|
||||
return
|
||||
// standard humanoids
|
||||
if(BIO_FLESH_BONE)
|
||||
// if we've already mangled the skin (critical slash or piercing wound), then the bone is exposed, and we can damage it with sharp weapons at a reduced rate
|
||||
// So a big sharp weapon is still all you need to destroy a limb
|
||||
if(wounding_type == WOUND_SLASH || wounding_type == WOUND_PIERCE)
|
||||
wounding_dmg *= (paper_skin ? 1.5 : 1)
|
||||
else
|
||||
wounding_dmg *= (glass_bones ? 1.5 : 1)
|
||||
if(mangled_state == BODYPART_MANGLED_FLESH && sharpness)
|
||||
playsound(src, "sound/effects/wounds/crackandbleed.ogg", 100)
|
||||
if(wounding_type == WOUND_SLASH && !easy_dismember)
|
||||
|
||||
Reference in New Issue
Block a user