diff options
-rw-r--r-- | Changelog-Trunk.txt | 3 | ||||
-rw-r--r-- | src/map/battle.c | 25 |
2 files changed, 16 insertions, 12 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 830cc2ada..2de2104f4 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -3,6 +3,9 @@ Date Added AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+2006/08/24
+ * Applied some change from mpeg on Ninja Skills [Toms]
+ * Put HVAN_Explosion based on max_hp instead of current hp [Toms]
2006/08/23
* Fixed mob_clone_spawn completely ignoring the mode variable. [Skotlex]
* Fixed Energy Coat reducing and consuming more than it should when you
diff --git a/src/map/battle.c b/src/map/battle.c index 9a7402bcb..1ed59317b 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -246,8 +246,8 @@ int battle_calc_damage(struct block_list *src,struct block_list *bl,int damage,i if(!damage) return 0; } - if (skill_num == PA_PRESSURE || skill_num == NJ_ZENYNAGE) - return damage; //These two bypass everything else. + if (skill_num == PA_PRESSURE) + return damage; //This skill bypass everything else. sc = status_get_sc(bl); @@ -879,6 +879,7 @@ static struct Damage battle_calc_weapon_attack( case ITM_TOMAHAWK: //Tomahawk is a ranged attack! [Skotlex] case CR_GRANDCROSS: case NPC_GRANDDARKNESS: + case NJ_HUUMA: case NJ_TATAMIGAESHI: wd.flag=(wd.flag&~BF_RANGEMASK)|BF_LONG; break; @@ -2610,14 +2611,21 @@ struct Damage battle_calc_misc_attack( if (!md.damage) md.damage = 2; md.damage = md.damage + rand()%md.damage; + if (sd) + { + if ( md.damage > sd->status.zeny ) + md.damage=sd->status.zeny; + pc_payzeny(sd, md.damage); + } + if(is_boss(target)) - md.damage=md.damage*60/100; + md.damage=md.damage*60/100; break; case GS_FLING: md.damage = sd?sd->status.job_level:status_get_lv(src); break; case HVAN_EXPLOSION: //[orn] - md.damage = sstatus->hp * (50 + 50 * skill_lv) / 100 ; + md.damage = sstatus->max_hp * (50 + 50 * skill_lv) / 100 ; break ; case ASC_BREAKER: md.damage = 500+rand()%500 + 5*skill_lv * sstatus->int_; @@ -2694,7 +2702,7 @@ struct Damage battle_calc_misc_attack( if(md.damage < 0) md.damage = 0; - else if(md.damage && tstatus->mode&MD_PLANT && skill_num != PA_PRESSURE && skill_num != NJ_ZENYNAGE) //Pressure can vaporize plants. // damage=1 on plant with Throw zeny ? + else if(md.damage && tstatus->mode&MD_PLANT && skill_num != PA_PRESSURE) //Pressure can vaporize plants md.damage = 1; if(flag.elefix) @@ -2704,13 +2712,6 @@ struct Damage battle_calc_misc_attack( if (map_flag_gvg(target->m)) md.damage=battle_calc_gvg_damage(src,target,md.damage,md.div_,skill_num,skill_lv,md.flag); - if ( sd && md.damage && skill_num == NJ_ZENYNAGE ) - { - if ( md.damage > sd->status.zeny ) - md.damage=sd->status.zeny; - pc_payzeny(sd, md.damage); - } - return md; } /*========================================== |