summaryrefslogtreecommitdiff
path: root/vampirism.patch
diff options
context:
space:
mode:
Diffstat (limited to 'vampirism.patch')
-rw-r--r--vampirism.patch30
1 files changed, 7 insertions, 23 deletions
diff --git a/vampirism.patch b/vampirism.patch
index 26c90a3..0299e0d 100644
--- a/vampirism.patch
+++ b/vampirism.patch
@@ -68,15 +68,9 @@
if( !( has_trait( trait_NOPAIN ) ) ) {
add_msg_if_player( m_bad, _( "Your heart spasms painfully and stops." ) );
} else {
-@@ -4879,11 +4879,12 @@
- }
- g->events().send<event_type::dies_from_drug_overdose>( getID(), effect_jetinjector );
- set_part_hp_cur( bodypart_id( "torso" ), 0 );
-- } else if( get_effect_dur( effect_adrenaline ) > 50_minutes ) {
-+ } else if( ( get_effect_dur( effect_adrenaline ) > 50_minutes ) &&
-+ !( has_trait( trait_VAMP_SKIN ) ) ) {
- add_msg_if_player( m_bad, _( "Your heart spasms and stops." ) );
- g->events().send<event_type::dies_from_drug_overdose>( getID(), effect_adrenaline );
+@@ -4879,7 +4879,7 @@
+ }
+ g->events().send<event_type::dies_from_drug_overdose>( getID(), effect_jetinjector );
set_part_hp_cur( bodypart_id( "torso" ), 0 );
- } else if( get_effect_int( effect_drunk ) > 4 ) {
+ } else if( ( get_effect_int( effect_drunk ) > 4 ) && !( has_trait( trait_VAMP_SKIN ) ) ) {
@@ -506,7 +500,7 @@
@@ -2492,12 +2492,15 @@
}
- if( killer == &g->u && ( !guaranteed_hostile() || hit_by_player ) ) {
+ if( get_killer() == &g->u && ( !guaranteed_hostile() || hit_by_player ) ) {
+ bool vampire = g->u.has_trait( trait_THRESH_REAL_VAMP );
bool cannibal = g->u.has_trait( trait_CANNIBAL );
bool psycho = g->u.has_trait( trait_PSYCHOPATH ) || g->u.has_trait( trait_KILLER );
@@ -542,16 +536,6 @@
add_msg_if_player( m_bad,
_( "Your heart spasms painfully and stops, dragging you back to reality as you die." ) );
} else {
-@@ -1065,6 +1065,9 @@
- // Determine the strength of effects or dreams based upon category strength
- int strength = 0; // Category too weak for any effect or dream
- if( crossed_threshold() ) {
-+ if( has_trait( trait_THRESH_REAL_VAMP ) ) {
-+ highcat = "REAL_VAMP";
-+ }
- strength = 4; // Post-human.
- } else if( highest >= 20 && highest < 35 ) {
- strength = 1; // Low strength
--- a/src/suffer.cpp
+++ b/src/suffer.cpp
@@ -565,9 +549,9 @@
static const trait_id trait_WEB_SPINNER( "WEB_SPINNER" );
static const trait_id trait_WEB_WEAVER( "WEB_WEAVER" );
@@ -251,7 +251,8 @@
-
- void Character::suffer_while_underwater()
- {
+ if( has_trait( trait_DEBUG_STAMINA ) ) {
+ return;
+ }
- if( !has_trait( trait_GILLS ) && !has_trait( trait_GILLS_CEPH ) ) {
+ if( !has_trait( trait_GILLS ) && !has_trait( trait_GILLS_CEPH ) &&
+ !has_trait( trait_VAMP_SKIN ) ) {