diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-01-11 13:00:27 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-01-11 13:00:27 +0000 |
commit | 369132832b478fdea844555803e9b1dd06692259 (patch) | |
tree | 99d87501555030aa13a0b4898c1d852f1d104a46 /src | |
parent | 346d82c7d47afa212738d1a5b07eb3780ad46620 (diff) | |
download | hercules-369132832b478fdea844555803e9b1dd06692259.tar.gz hercules-369132832b478fdea844555803e9b1dd06692259.tar.bz2 hercules-369132832b478fdea844555803e9b1dd06692259.tar.xz hercules-369132832b478fdea844555803e9b1dd06692259.zip |
- Implemented the extra damage bonus to TK_JUMPKICK when it is used while running (however what the bonus's equation is has been lost to time, so someone else correct it).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12053 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/battle.c | 4 | ||||
-rw-r--r-- | src/map/skill.c | 11 |
2 files changed, 10 insertions, 5 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 122688a1a..0ada71a5e 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -1485,7 +1485,9 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo case TK_JUMPKICK: skillratio += -70 + 10*skill_lv; if (sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == skill_num) - skillratio += 10*status_get_lv(src)/3; + skillratio += 10*status_get_lv(src)/3; //Tumble bonus + if (wflag) + skillratio += 10*status_get_lv(src)/3; //Running bonus (TODO: What is the real bonus?) break; case GS_TRIPLEACTION: skillratio += 50*skill_lv; diff --git a/src/map/skill.c b/src/map/skill.c index 4ccda7030..a7516a6eb 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -5168,7 +5168,7 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data) struct mob_data* md = NULL; struct unit_data* ud = unit_bl2ud(src); struct status_change *sc = NULL; - int inf,inf2; + int inf,inf2,flag=0; nullpo_retr(0, ud); @@ -5297,7 +5297,10 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data) if(hd && !skill_check_condition_hom(hd,ud->skillid, ud->skilllv,1)) //[orn] break; - + + if (ud->state.running && ud->skillid == TK_JUMPKICK) + flag = 1; + if (ud->walktimer != -1 && ud->skillid != TK_RUN) unit_stop_walking(src,1); @@ -5312,9 +5315,9 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data) map_freeblock_lock(); if (skill_get_casttype(ud->skillid) == CAST_NODAMAGE) - skill_castend_nodamage_id(src,target,ud->skillid,ud->skilllv,tick,0); + skill_castend_nodamage_id(src,target,ud->skillid,ud->skilllv,tick,flag); else - skill_castend_damage_id(src,target,ud->skillid,ud->skilllv,tick,0); + skill_castend_damage_id(src,target,ud->skillid,ud->skilllv,tick,flag); sc = status_get_sc(src); if(sc && sc->count) { |