diff --git a/data/core/game_balance.json b/data/core/game_balance.json index dc2794d4782fa..ad3cdf4e410c9 100644 --- a/data/core/game_balance.json +++ b/data/core/game_balance.json @@ -194,5 +194,12 @@ "info": "If false, examining workbench-type furniture will auto-execute pickup and undeploy (where applicable) actions, no crafting-related options will be listed.", "stype": "bool", "value": true + }, + { + "type": "EXTERNAL_OPTION", + "name": "ZOMBIES_DONT_BLEED", + "info": "If true, zombies won't bleed and won't take direct damage to the torso when they get bleeding effect.", + "stype": "bool", + "value": false } ] diff --git a/src/monster.cpp b/src/monster.cpp index 834f6b373060a..7cfc385922aad 100644 --- a/src/monster.cpp +++ b/src/monster.cpp @@ -1283,7 +1283,8 @@ bool monster::is_immune_effect( const efftype_id &effect ) const if( effect == effect_bleed ) { return !has_flag( MF_WARM ) || - !made_of( material_id( "flesh" ) ); + !made_of( material_id( "flesh" ) ) || + ( get_option( "ZOMBIES_DONT_BLEED" ) && in_species( species_ZOMBIE ) ); } if( effect == effect_paralyzepoison ||