diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-22 14:38:18 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-22 14:38:18 +0000 |
commit | 56e909438c6cf5011eb8ccdbcf0052d79de9d620 (patch) | |
tree | 0b2387a0c981877535b4989dd5d98b1b4298a51d /src/map/battle.c | |
parent | a4a17c165ecc718ca8f0ac0a25a4a39ee471c72d (diff) | |
download | hercules-56e909438c6cf5011eb8ccdbcf0052d79de9d620.tar.gz hercules-56e909438c6cf5011eb8ccdbcf0052d79de9d620.tar.bz2 hercules-56e909438c6cf5011eb8ccdbcf0052d79de9d620.tar.xz hercules-56e909438c6cf5011eb8ccdbcf0052d79de9d620.zip |
- Fixed a possible null pointer in script command misc_effect
- Modified Investigate to take into consideration final def/vit-def rather than base values for damage adjustment.
- Added missing include unit.h in pet.c
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6695 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/battle.c')
-rw-r--r-- | src/map/battle.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 4d856966e..a8f892aa0 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -1606,8 +1606,6 @@ static struct Damage battle_calc_weapon_attack( break;
case MO_INVESTIGATE:
skillratio += 75*skill_lv;
- ATK_RATE(2*(def1 + def2));
- flag.idef= flag.idef2= 1;
break;
case MO_EXTREMITYFIST:
if (sd)
@@ -1903,15 +1901,22 @@ static struct Damage battle_calc_weapon_attack( vit_def = def2 + (vit_def>0?rand()%vit_def:0);
}
- if (sd && battle_config.player_defense_type)
+ if (sd && battle_config.player_defense_type) {
vit_def += def1*battle_config.player_defense_type;
- else if (md && battle_config.monster_defense_type)
+ def1 = 0;
+ } else if (md && battle_config.monster_defense_type) {
vit_def += def1*battle_config.monster_defense_type;
- else if(pd && battle_config.pet_defense_type)
+ def1 = 0;
+ } else if(pd && battle_config.pet_defense_type) {
vit_def += def1*battle_config.pet_defense_type;
- else
+ def1 = 0;
+ }
+ if(skill_num == MO_INVESTIGATE) { //Must use adjusted defense
+ ATK_RATE(2*(def1 + vit_def));
+ } else {
ATK_RATE2(flag.idef?100:100-def1, flag.idef2?100:100-def1);
- ATK_ADD2(flag.idef?0:-vit_def, flag.idef2?0:-vit_def);
+ ATK_ADD2(flag.idef?0:-vit_def, flag.idef2?0:-vit_def);
+ }
}
//Post skill/vit reduction damage increases
|