Makes bloodsuckers unguttable and undecappable (#12335)
* Bloodsuckers cant be gutted or beheaded anymore * Mistakes were made
This commit is contained in:
@@ -148,6 +148,8 @@
|
||||
#define TRAIT_NORUNNING "norunning" // You walk!
|
||||
#define TRAIT_NOMARROW "nomarrow" // You don't make blood, with chemicals or nanites.
|
||||
#define TRAIT_NOPULSE "nopulse" // Your heart doesn't beat.
|
||||
#define TRAIT_NOGUT "nogutting" //Your chest cant be gutted of organs
|
||||
#define TRAIT_NODECAP "nodecapping" //Your head cant be cut off in combat
|
||||
#define TRAIT_EXEMPT_HEALTH_EVENTS "exempt-health-events"
|
||||
#define TRAIT_NO_MIDROUND_ANTAG "no-midround-antag" //can't be turned into an antag by random events
|
||||
#define TRAIT_PUGILIST "pugilist" //This guy punches people for a living
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
var/passive_blood_drain = -0.1 //The amount of blood we loose each bloodsucker life() tick
|
||||
// LISTS
|
||||
var/static/list/defaultTraits = list (TRAIT_STABLEHEART, TRAIT_NOBREATH, TRAIT_SLEEPIMMUNE, TRAIT_NOCRITDAMAGE, TRAIT_RESISTCOLD, TRAIT_RADIMMUNE, TRAIT_NIGHT_VISION, \
|
||||
TRAIT_NOSOFTCRIT, TRAIT_NOHARDCRIT, TRAIT_AGEUSIA, TRAIT_COLDBLOODED, TRAIT_NONATURALHEAL, TRAIT_NOMARROW, TRAIT_NOPULSE, TRAIT_VIRUSIMMUNE)
|
||||
TRAIT_NOSOFTCRIT, TRAIT_NOHARDCRIT, TRAIT_AGEUSIA, TRAIT_COLDBLOODED, TRAIT_NONATURALHEAL, TRAIT_NOMARROW, TRAIT_NOPULSE, TRAIT_VIRUSIMMUNE, TRAIT_NODECAP, TRAIT_NOGUT)
|
||||
|
||||
/datum/antagonist/bloodsucker/on_gain()
|
||||
SSticker.mode.bloodsuckers |= owner // Add if not already in here (and you might be, if you were picked at round start)
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
return FALSE
|
||||
if(HAS_TRAIT(C, TRAIT_NODISMEMBER))
|
||||
return FALSE
|
||||
|
||||
var/obj/item/bodypart/affecting = C.get_bodypart(BODY_ZONE_CHEST)
|
||||
affecting.receive_damage(clamp(brute_dam/2 * affecting.body_damage_coeff, 15, 50), clamp(burn_dam/2 * affecting.body_damage_coeff, 0, 50)) //Damage the chest based on limb's existing damage
|
||||
C.visible_message("<span class='danger'><B>[C]'s [src.name] has been violently dismembered!</B></span>")
|
||||
@@ -44,6 +43,10 @@
|
||||
throw_at(target_turf, throw_range, throw_speed)
|
||||
return TRUE
|
||||
|
||||
/obj/item/bodypart/head/dismember()
|
||||
if(HAS_TRAIT(owner, TRAIT_NODECAP))
|
||||
return FALSE
|
||||
..()
|
||||
|
||||
/obj/item/bodypart/chest/dismember()
|
||||
if(!owner)
|
||||
@@ -53,6 +56,8 @@
|
||||
return FALSE
|
||||
if(HAS_TRAIT(C, TRAIT_NODISMEMBER))
|
||||
return FALSE
|
||||
if(HAS_TRAIT(C, TRAIT_NOGUT)) //Just for not allowing gutting
|
||||
return FALSE
|
||||
. = list()
|
||||
var/organ_spilled = 0
|
||||
var/turf/T = get_turf(C)
|
||||
|
||||
Reference in New Issue
Block a user