Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
96bd6af
potato time
May 10, 2026
d979478
seconds
May 10, 2026
265972d
arteries
May 10, 2026
665eb6d
artery
May 10, 2026
8083198
pull back on injury bleeds
May 10, 2026
1dc67aa
still wrong
May 10, 2026
c48d24c
doubly effective painkillers
May 10, 2026
6c0fe9e
heal injuries when drunk
May 10, 2026
a5c413e
other way
May 10, 2026
c20a967
blood refactor
May 11, 2026
530e58c
injury delta_time, bandage buff
May 11, 2026
edbed4a
cleanup
May 11, 2026
095417a
artery delta_time
May 11, 2026
a69e6b9
simplify
May 11, 2026
ac45a21
oxyloss fix
May 11, 2026
2e34e75
more adjustments
May 11, 2026
b3c7cf6
nutrition_ratio
May 11, 2026
89177cd
splits lifeblood blood
May 11, 2026
30ae89a
fracture bleeds and break ribs
May 11, 2026
3f0863f
continue fixing
May 12, 2026
326507d
eat chems through bandage
May 12, 2026
3390e7d
borbop why
May 12, 2026
06a7ba6
potatos attempt
May 12, 2026
c30b260
can_feel_pain
May 13, 2026
dabe40c
continue drawing less
May 13, 2026
4277b17
harmless delta_times
May 13, 2026
acfe325
blood_req delta_time
May 13, 2026
f6c3355
nutrient delta_time
May 13, 2026
55316b8
revert blood_req
May 13, 2026
a94c5f4
another audit and balancing
May 13, 2026
e6e2089
embed
May 14, 2026
fa84f6d
artery stuff
May 14, 2026
30ca4a1
DRAW IT LESS
May 14, 2026
ec23800
more fixes
May 15, 2026
349baac
germ defines
May 15, 2026
09036f2
bandage
May 15, 2026
36fb33b
we all die this time
May 15, 2026
5fedfae
stack tracing
May 16, 2026
149fc36
emote fix
May 16, 2026
d823f12
sleep soul
May 16, 2026
ddeb4f5
too fast
May 16, 2026
8a54249
continue refining pain
May 16, 2026
f904cde
fix
May 16, 2026
afc657e
more balanceslop
May 17, 2026
ddfce79
fixes
May 17, 2026
be54898
burn bleed
May 17, 2026
52c82db
heart crit fix
May 17, 2026
e9bc798
i hate thresholds
May 17, 2026
f6b48ac
fixes rous
May 18, 2026
4f6e7ba
death to cpr
May 18, 2026
aaa47c7
fix the boat please
May 18, 2026
021ee1c
cpr rework
May 19, 2026
cf573cd
chest arteries and misc
May 19, 2026
48135a6
to make lungs work
May 23, 2026
858c99b
emergency fiex
May 23, 2026
fbe897f
fix runtimes
May 23, 2026
0f6167a
brain pain
May 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions code/__DEFINES/DNA.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@
#define FACEHAIR 3
#define EYECOLOR 4
#define LIPS 5
#define NOBLOOD 6
#define NOTRANSSTING 7
#define NOZOMBIE 9
#define NO_UNDERWEAR 11
Expand All @@ -78,7 +77,7 @@

//organ defines
#define STANDARD_ORGAN_THRESHOLD 100
#define STANDARD_ORGAN_HEALING 0.001
#define STANDARD_ORGAN_HEALING (50 / 100000)
/// designed to fail organs when left to decay for ~15 minutes
#define STANDARD_ORGAN_DECAY 0.00222

Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/chat/span.dm
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@
#define span_artery(str) ("<span class='artery'>" + str + "</span>")
#define span_love(str) ("<span class='love'>" + str + "</span>")
#define span_animatedpain(str) ("<span class='animatedpain'>" + str + "</span>")
#define span_bolddanger(str) ("<span class='bolddanger'>" + str + "</span>")

//Sizes
// arbitary names. ordered by smallest to biggest
Expand Down
2 changes: 1 addition & 1 deletion code/__DEFINES/chemical_effects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#define CE_STABLE "stable"
/// Boosts spleen blood regen
#define CE_BLOODRESTORE "bloodrestore"
/// Reduces shock
/// Reduces shock by a flat amount, applied across bodyparts
#define CE_PAINKILLER "painkiller"
/// Liver filtering
#define CE_ALCOHOL "alcohol"
Expand Down
4 changes: 3 additions & 1 deletion code/__DEFINES/combat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@
#define BLEEDOUT (1<<6)

//Health Defines
#define HEALTH_THRESHOLD_CRIT 0
#define HEALTH_THRESHOLD_CRIT 100
#define HEALTH_THRESHOLD_FULLCRIT 0
#define HEALTH_THRESHOLD_DEAD -100

Expand Down Expand Up @@ -116,6 +116,8 @@
#define CRAWLING_ADD_SLOWDOWN 7
//slowdown for dislocated limbs
#define DISLOCATED_ADD_SLOWDOWN 2
//slowdown for fractured limbs
#define FRACTURED_ADD_SLOWDOWN 3

//Attack types for checking shields/hit reactions
#define MELEE_ATTACK 1
Expand Down
9 changes: 9 additions & 0 deletions code/__DEFINES/dcs/signals/signals_mob/signals_carbon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,15 @@
///From mob/living/carbon/human/suicide()
#define COMSIG_HUMAN_SUICIDE_ACT "human_suicide_act"

///Called when a carbon attempts to breath, before the breath has actually occurred
#define COMSIG_CARBON_ATTEMPT_BREATHE "carbon_attempt_breathe"
// Prevents the breath
#define COMSIG_CARBON_BLOCK_BREATH (1 << 0)
/// Allow the breath but prevent inake, think losebreath
#define BREATHE_SKIP_BREATH (1<<1)
///Called when a carbon breathes, before the breath has actually occurred
#define COMSIG_CARBON_PRE_BREATHE "carbon_pre_breathe"

///from base of /mob/living/carbon/regenerate_limbs(): (excluded_limbs)
#define COMSIG_CARBON_REGENERATE_LIMBS "living_regen_limbs"

Expand Down
6 changes: 6 additions & 0 deletions code/__DEFINES/dcs/signals/signals_mob/signals_living.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,12 @@
///from base of mob/update_transform()
#define COMSIG_LIVING_POST_UPDATE_TRANSFORM "living_post_update_transform"

/// From /mob/living/proc/update_blood_status(), sent when the return value of /mob/living/proc/can_have_blood() changes, but before the new blood status is applied : (had_blood, has_blood, old_blood_volume)
#define COMSIG_LIVING_PRE_UPDATE_BLOOD_STATUS "living_pre_update_blood_status"

/// From /mob/living/proc/update_blood_status(), sent when the return value of /mob/living/proc/can_have_blood() changes : (had_blood, has_blood, old_blood_volume, new_blood_volume)
#define COMSIG_LIVING_UPDATE_BLOOD_STATUS "living_update_blood_status"

///Signal sent when a keybind is deactivated
#define DEACTIVATE_KEYBIND(A) "[A]_DEACTIVATED"
#define COMSIG_KB_LIVING_VIEW_PET_COMMANDS "keybinding_living_view_pet_commands"
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/economy.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#define M_STEEL M_IRON+W_MODERATE // one steel bar
#define M_SILVER M_IRON*3 // one silver bar
#define M_GOLD M_IRON*5 // one gold bar
#define M_BLACKSTEEL M_IRON*7 // one blacksteel bar

// Skill costs - a rarity value add, items requiring a high skill to produce are rarer and has more intrinsic value. So craftsmen can make a profit.
#define SKILL_1 2
Expand Down
10 changes: 5 additions & 5 deletions code/__DEFINES/footsteps.dm
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ GLOBAL_LIST_INIT(footstep, list(
'sound/foley/footsteps/FTGRA_A3.ogg',
'sound/foley/footsteps/FTGRA_A4.ogg'), 15, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/waterenter.ogg'), 50, FALSE),
'sound/foley/waterenter.ogg'), 40, FALSE),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/watermove (1).ogg',
'sound/foley/watermove (2).ogg'), 100, FALSE),
Expand Down Expand Up @@ -129,7 +129,7 @@ GLOBAL_LIST_INIT(barefootstep, list(
'sound/foley/footsteps/softbarefoot (2).ogg',
'sound/foley/footsteps/softbarefoot (3).ogg'), 50, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/waterenter.ogg'), 50, FALSE),
'sound/foley/waterenter.ogg'), 40, FALSE),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/watermove (1).ogg',
'sound/foley/watermove (2).ogg'), 100, FALSE),
Expand Down Expand Up @@ -164,7 +164,7 @@ GLOBAL_LIST_INIT(clawfootstep, list(
FOOTSTEP_GRASS = list(list(
'sound/blank.ogg'), 25, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/waterenter.ogg'), 50, FALSE),
'sound/foley/waterenter.ogg'), 40, FALSE),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/watermove (1).ogg',
'sound/foley/watermove (2).ogg'), 100, FALSE),
Expand All @@ -180,7 +180,7 @@ GLOBAL_LIST_INIT(heavyfootstep, list(
'sound/foley/footsteps/bigwalk (3).ogg',
'sound/foley/footsteps/bigwalk (4).ogg'), 100, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/waterenter.ogg'), 50, FALSE),
'sound/foley/waterenter.ogg'), 40, FALSE),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/watermove (1).ogg',
'sound/foley/watermove (2).ogg'), 100, FALSE),
Expand All @@ -200,7 +200,7 @@ GLOBAL_LIST_INIT(metalfootstep, list(
'sound/foley/footsteps/armor/powerarmor (2).ogg',
'sound/foley/footsteps/armor/powerarmor (3).ogg',), 100, 0),
FOOTSTEP_WATER = list(list(
'sound/foley/waterenter.ogg'), 50, FALSE),
'sound/foley/waterenter.ogg'), 40, FALSE),
FOOTSTEP_SHALLOW = list(list(
'sound/foley/watermove (1).ogg',
'sound/foley/watermove (2).ogg'), 100, FALSE),
Expand Down
4 changes: 3 additions & 1 deletion code/__DEFINES/heal_flags.dm
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,11 @@
#define HEAL_POSTIVE_DISEASES (1<<20)
/// Restores hydration, hunger, etc.
#define HEAL_ESSENTIALS (1<<21)
/// Heals pain and shock
#define HEAL_PAIN_SHOCK (1<<22)

/// Combination flag to only heal the main damage types.
#define HEAL_DAMAGE (HEAL_BRUTE|HEAL_BURN|HEAL_TOX|HEAL_OXY|HEAL_CLONE|HEAL_STAM)
#define HEAL_DAMAGE (HEAL_BRUTE|HEAL_BURN|HEAL_TOX|HEAL_OXY|HEAL_CLONE|HEAL_STAM|HEAL_PAIN_SHOCK)
/// Combination flag to only heal things messed up things about the mob's body itself.
#define HEAL_BODY (HEAL_LIMBS|HEAL_ORGANS|HEAL_REFRESH_ORGANS|HEAL_WOUNDS|HEAL_TRAUMAS|HEAL_BLOOD|HEAL_TEMP|HEAL_ESSENTIALS)
/// Combination flag to heal negative things affecting the mob.
Expand Down
13 changes: 13 additions & 0 deletions code/__DEFINES/living.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,16 @@
#define PIXEL_X_OFFSET "x"
#define PIXEL_Y_OFFSET "y"
#define PIXEL_Z_OFFSET "z"

// Bleed check results
/// We cannot bleed (here, or in general) at all
#define BLEED_NONE 0
/// We cannot make a splatter, but we can add our DNA
#define BLEED_ADD_DNA 1
/// We can bleed just fine
#define BLEED_SPLATTER 2

/// Checks if the mob can have blood
#define CAN_HAVE_BLOOD(mob) (mob.living_flags & LIVING_CAN_HAVE_BLOOD)
/// Queues a blood update for the next life tick for the mob
#define QUEUE_BLOOD_UPDATE(mob) mob.living_flags |= BLOOD_UPDATE_QUEUED
113 changes: 52 additions & 61 deletions code/__DEFINES/medical.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,27 @@
#define BODY_ZONE_PRECISE_L_FOOT "l_foot"
#define BODY_ZONE_PRECISE_R_FOOT "r_foot"

#define ALL_BODYPARTS list(\
BODY_ZONE_PRECISE_SKULL, BODY_ZONE_PRECISE_EARS, \
BODY_ZONE_PRECISE_L_EYE, BODY_ZONE_PRECISE_R_EYE, \
BODY_ZONE_PRECISE_NOSE, BODY_ZONE_PRECISE_MOUTH, \
BODY_ZONE_PRECISE_NECK, \
BODY_ZONE_HEAD, \
BODY_ZONE_PRECISE_STOMACH, BODY_ZONE_PRECISE_GROIN, \
BODY_ZONE_CHEST, \
BODY_ZONE_PRECISE_R_HAND, BODY_ZONE_PRECISE_L_HAND, \
BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, \
BODY_ZONE_PRECISE_R_FOOT, BODY_ZONE_PRECISE_L_FOOT, \
BODY_ZONE_R_LEG, BODY_ZONE_L_LEG, \
)

#define GENERIC_FRACTURE_BODYPARTS list(\
BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, \
BODY_ZONE_R_LEG, BODY_ZONE_L_LEG, \
BODY_ZONE_PRECISE_R_HAND, BODY_ZONE_PRECISE_L_HAND, \
BODY_ZONE_PRECISE_R_FOOT, BODY_ZONE_PRECISE_L_FOOT, \
)

///the side we are facing
#define BODY_ZONE_FACING_FRONT "front_face"
#define BODY_ZONE_FACING_L_ARM "l_arm_face"
Expand Down Expand Up @@ -106,7 +127,7 @@
/// Destroyed organs don't function and cannot be repaired, needs a transplant
#define ORGAN_DESTROYED (1<<5)
/// Not only is the organ failing, it is completely septic and spreading germs around
#define ORGAN_DEAD (1<<6)
#define ORGAN_NECROTIC (1<<6)
/// Organ has been cut away from the owner and can be safely removed during surgery
#define ORGAN_CUT_AWAY (1<<7)
/// Organ should update limb efficiency when damaged or healed
Expand All @@ -118,7 +139,7 @@

DEFINE_BITFIELD(organ_flags, list(
"ORGAN_DESTROYED" = ORGAN_DESTROYED,
"ORGAN_DEAD" = ORGAN_DEAD,
"ORGAN_NECROTIC" = ORGAN_NECROTIC,
"ORGAN_CUT_AWAY" = ORGAN_CUT_AWAY,
"ORGAN_FROZEN" = ORGAN_FROZEN,
"ORGAN_INDESTRUCTIBLE" = ORGAN_INDESTRUCTIBLE,
Expand Down Expand Up @@ -156,9 +177,6 @@ DEFINE_BITFIELD(organ_flags, list(
#define LIMB_EFFICIENCY_OPTIMAL 100
#define LIMB_EFFICIENCY_DISABLING 50

/// This is used as a reference point for dynamic wounds, so it's better off as a define.
#define ARTERY_LIMB_BLEEDRATE 25

/// Multiplier applied to reagents in blood when factoring in total volume for "purity"
#define BLOODLETTING_MULT 5

Expand All @@ -172,24 +190,6 @@ DEFINE_BITFIELD(organ_flags, list(
#define BBC_STAGE_DETECTABLE 0.15
#define BBC_SPREAD_RATE BBC_STAGE_DETECTABLE * 0.5

#define ALL_BODYPARTS list(\
BODY_ZONE_PRECISE_L_EYE, BODY_ZONE_PRECISE_R_EYE, \
BODY_ZONE_PRECISE_MOUTH, \
BODY_ZONE_HEAD, BODY_ZONE_PRECISE_NECK, \
BODY_ZONE_CHEST, \
BODY_ZONE_PRECISE_GROIN, \
BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, \
BODY_ZONE_R_LEG, BODY_ZONE_L_LEG, \
BODY_ZONE_PRECISE_R_HAND, BODY_ZONE_PRECISE_L_HAND, \
BODY_ZONE_PRECISE_R_FOOT, BODY_ZONE_PRECISE_L_FOOT, \
)

#define GENERIC_FRACTURE_BODYPARTS list(\
BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, \
BODY_ZONE_R_LEG, BODY_ZONE_L_LEG, \
BODY_ZONE_PRECISE_R_HAND, BODY_ZONE_PRECISE_L_HAND, \
BODY_ZONE_PRECISE_R_FOOT, BODY_ZONE_PRECISE_L_FOOT, \
)
// ~should take around 20 minutes for a body to fully rot
#define MIN_ORGAN_DECAY_INFECTION 0.25
#define MAX_ORGAN_DECAY_INFECTION 0.5
Expand Down Expand Up @@ -231,16 +231,6 @@ DEFINE_BITFIELD(organ_flags, list(
/// Maximum amount of germs surgery can cause
#define SURGERY_GERM_MAXIMUM 800


// ~germ defines
/// Medical equipment should start out as this
#define GERM_LEVEL_STERILE 0
/// Maximum germ level you can reach by standing still.
#define GERM_LEVEL_AMBIENT 250
/// Maximum germ level any atom can normally achieve
#define GERM_LEVEL_MAXIMUM 1000


/// Germ levels for carbon mob hygiene
#define GERM_LEVEL_START_MIN 0
#define GERM_LEVEL_START_MAX 100
Expand All @@ -260,9 +250,9 @@ DEFINE_BITFIELD(organ_flags, list(
/// Water sanitization per unit
#define SANITIZATION_PER_UNIT_WATER 10
/// CE_ANTIBIOTIC bodypart/organ sanitization per CE unit
#define SANITIZATION_ANTIBIOTIC 0.1
#define SANITIZATION_ANTIBIOTIC 0.05
/// Bodypart/organ sanitization for laying down
#define SANITIZATION_LYING 1
#define SANITIZATION_LYING 0.5

//~brain damage related defines
/// We need to take at least this much brainloss gained at once to roll for brain traumas, any less it won't roll
Expand All @@ -286,33 +276,24 @@ DEFINE_BITFIELD(organ_flags, list(
#define GETPULSE_ADVANCED 1 // More accurate. (med scanner, sleeper, etc.)
#define GETPULSE_PERFECT 2 // Perfectly accurate. (currently no non-adminbus means, you get the exact value 0-5)


// ~CPR types
/// Mouth to mouth - Heals oxygen deprivation
#define CPR_MOUTH "m2m"
#define CPR_CHEST "cardio"

/// Mouth to mouth cooldown duration
#define M2M_COOLDOWN 0.3 SECONDS
///Cpr cooldown duration
#define CPR_COOLDOWN 0.3 SECONDS

#define CPR_TIME 4 SECONDS
#define M2M_TIME 0.5 SECONDS

// ~simple brainloss defines
#define GETBRAINLOSS(mob) mob.getOrganLoss(ORGAN_SLOT_BRAIN)
#define ADJUSTBRAINLOSS(mob, amount) mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, amount)
#define SETBRAINLOSS(mob, amount) mob.setOrganLoss(ORGAN_SLOT_BRAIN, amount)


// ~arteries
#define ARTERY_MAX_HEALTH 100
#define ARTERIAL_BLOOD_FLOW 10
#define ARTERIAL_BLOOD_FLOW 20

#define ARTERY_HEAD /obj/item/organ/artery/head
#define ARTERY_MOUTH /obj/item/organ/artery/mouth
#define ARTERY_CHEST /obj/item/organ/artery/chest
#define ARTERY_HEART /obj/item/organ/artery/heart
#define ARTERY_NECK /obj/item/organ/artery/neck
#define ARTERY_L_ARM /obj/item/organ/artery/l_arm
#define ARTERY_R_ARM /obj/item/organ/artery/r_arm
Expand All @@ -321,33 +302,38 @@ DEFINE_BITFIELD(organ_flags, list(

// ~wound categories
/// doesn't actually wound
#define WOUND_NONE 0
#define WOUND_NONE 0
/// any brute weapon/attack that doesn't have sharpness. rolls for blunt bone wounds
#define WOUND_BLUNT 1
#define WOUND_BLUNT (1<<0)
/// any sharp weapon, edged or pointy, can cause arteries to be torn
#define WOUND_ARTERY 2
#define WOUND_ARTERY (1<<1)
/// any sharp weapon, edged or pointy, can cause tendons to be torn
#define WOUND_TENDON 3
#define WOUND_TENDON (1<<2)
/// any sharp weapon, edged or pointy, can cause nerves to be torn
#define WOUND_NERVE 4
#define WOUND_NERVE (1<<3)
/// britification lol
#define WOUND_TEETH 5
#define WOUND_TEETH (1<<4)
/// any kind of organ spilling
#define WOUND_SPILL 6
#define WOUND_SPILL (1<<5)
/// any brute weapon/attack with sharpness = SHARP_EDGED. rolls for slash wounds
#define WOUND_SLASH 7
#define WOUND_SLASH (1<<6)
/// any brute weapon/attack with sharpness = SHARP_POINTY. rolls for piercing wounds
#define WOUND_PIERCE 8
#define WOUND_PUNCTURE (1<<7)
/// any concentrated burn attack (lasers really). rolls for burning wounds
#define WOUND_BURN 9
#define WOUND_BURN (1<<8)
///any wounds from bites
#define WOUND_BITE 10
#define WOUND_BITE (1<<9)
///any wounds from lashes
#define WOUND_LASH 11
#define WOUND_LASH (1<<10)
///any wounds from internal bruising (only really a thing for weird chems that should cause brutes)
#define WOUND_INTERNAL_BRUISE 12
#define WOUND_INTERNAL_BRUISE (1<<11)
///wounds coming from divine sources
#define WOUND_DIVINE 13
#define WOUND_DIVINE (1<<12)

#define SEWABLE_WOUND_TYPES (WOUND_SLASH|WOUND_PUNCTURE|WOUND_BITE|WOUND_LASH)
#define BRUTE_WOUND_TYPES (SEWABLE_WOUND_TYPES|WOUND_BLUNT|WOUND_INTERNAL_BRUISE)
#define FIRE_WOUND_TYPES (WOUND_BURN)
#define CUT_WOUND_TYPES (WOUND_SLASH|WOUND_PUNCTURE|WOUND_BITE)

// ~injury flags
/// This injury creates sounds hints when applied
Expand All @@ -362,7 +348,7 @@ DEFINE_BITFIELD(organ_flags, list(
#define INJURY_SALVED (1<<4)
/// This injury is disinfected, and the infection has been wiped AND won't progress
#define INJURY_DISINFECTED (1<<5)
/// This is a surgical injury and will not autoheal
/// This is a surgical injury and will not autoheal. Also not be healed by healing surgery step.
#define INJURY_SURGICAL (1<<6)
/// This injury is retracted and gives access to people's yummy guts and bones
#define INJURY_RETRACTED (1<<7)
Expand All @@ -381,3 +367,8 @@ DEFINE_BITFIELD(organ_flags, list(

/// How often can we annoy the player about their bleeding? This duration is extended if it's not serious bleeding
#define BLEEDING_MESSAGE_BASE_CD 15 SECONDS
/// Arbitrary value for "noticeable bleeding"
#define BLEED_RATE_NOTICABLE 1.5

/// Injuries bleed at (bleed_rate / BLEED_DAMAGE_RATIO) per tick
#define BLEED_DAMAGE_RATIO 30
Loading
Loading