diff options
author | shennetsind <ind@henn.et> | 2014-03-22 17:07:13 -0300 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2014-03-22 17:07:13 -0300 |
commit | 2b4d6abbc5baddc2207e73f0b84c7e6c73e271a4 (patch) | |
tree | e8d15f8f4a252cda88f3e3173f366ff9881edc4c /src/map/battle.c | |
parent | 9ea7b143192568a259aa6e7e223420e8d5762b9e (diff) | |
parent | d097f2c4b4a31885c6b04f5868563e1f48414192 (diff) | |
download | hercules-2b4d6abbc5baddc2207e73f0b84c7e6c73e271a4.tar.gz hercules-2b4d6abbc5baddc2207e73f0b84c7e6c73e271a4.tar.bz2 hercules-2b4d6abbc5baddc2207e73f0b84c7e6c73e271a4.tar.xz hercules-2b4d6abbc5baddc2207e73f0b84c7e6c73e271a4.zip |
Merge branch 'master' of https://github.com/HerculesWS/Hercules
Diffstat (limited to 'src/map/battle.c')
-rw-r--r-- | src/map/battle.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 91db3202c..6836aa016 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -3750,7 +3750,10 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list * md.damage = 0; if (tsd) md.damage>>=1; #endif - if (md.damage < 0 || md.damage > INT_MAX>>1) + // Some monsters have totaldef higher than md.damage in some cases, leading to md.damage < 0 + if( md.damage < 0 ) + md.damage = 0; + if( md.damage > INT_MAX>>1 ) //Overflow prevention, will anyone whine if I cap it to a few billion? //Not capped to INT_MAX to give some room for further damage increase. md.damage = INT_MAX>>1; |