summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt3
-rw-r--r--src/map/battle.c25
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;
}
/*==========================================