summaryrefslogtreecommitdiff
path: root/src/map/mob.cpp
diff options
context:
space:
mode:
authorBen Longbons <b.r.longbons@gmail.com>2014-06-30 22:02:27 -0700
committerBen Longbons <b.r.longbons@gmail.com>2014-06-30 22:02:27 -0700
commit0a768e842faf9a69f576fc9ac92bfa1dd2533d5f (patch)
treecccddb6c101f5983f35fde73c0e49e0999978066 /src/map/mob.cpp
parentaa4df026d44bd205f8bfce8a3b8d6a1144332f32 (diff)
downloadtmwa-0a768e842faf9a69f576fc9ac92bfa1dd2533d5f.tar.gz
tmwa-0a768e842faf9a69f576fc9ac92bfa1dd2533d5f.tar.bz2
tmwa-0a768e842faf9a69f576fc9ac92bfa1dd2533d5f.tar.xz
tmwa-0a768e842faf9a69f576fc9ac92bfa1dd2533d5f.zip
Invulnerability should not be the default
Diffstat (limited to 'src/map/mob.cpp')
-rw-r--r--src/map/mob.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/map/mob.cpp b/src/map/mob.cpp
index fad3083..f73dc89 100644
--- a/src/map/mob.cpp
+++ b/src/map/mob.cpp
@@ -272,12 +272,16 @@ void mob_mutate(dumb_ptr<mob_data> md, mob_stat stat, int intensity)
int real_intensity2 = (((new_stat - old_stat) << 8) / mut_base);
if (real_intensity < 0)
+ {
if (real_intensity2 > real_intensity)
real_intensity = real_intensity2;
+ }
if (real_intensity > 0)
+ {
if (real_intensity2 < real_intensity)
real_intensity = real_intensity2;
+ }
}
real_intensity *= sign;
@@ -2457,6 +2461,9 @@ int mob_damage(dumb_ptr<block_list> src, dumb_ptr<mob_data> md, int damage,
}
}
+ if (damage > md->hp)
+ damage = md->hp;
+
md->hp -= damage;
if (md->hp > 0)