From f51106c9312e9f1b434fc4460416d80db56ac547 Mon Sep 17 00:00:00 2001 From: Michieru Date: Sat, 4 Oct 2014 12:30:03 +0200 Subject: Fix skill Weapon Crush (bug:6985) --- src/map/skill.c | 4 ++-- src/map/unit.c | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/map/skill.c b/src/map/skill.c index 748ca8bce..ff4e2f791 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -6617,9 +6617,9 @@ int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uin if( skill_id == GC_WEAPONCRUSH){ d = skill->get_time(skill_id,skill_lv); if(bl->type == BL_PC) - d += skill_lv * 15 + (sstatus->dex - tstatus->dex); + d += 1000 * ( skill_lv * 15 + ( sstatus->dex - tstatus->dex ) ); else - d += skill_lv * 30 + (sstatus->dex - tstatus->dex) / 2; + d += 1000 * ( skill_lv * 30 + ( sstatus->dex - tstatus->dex ) / 2 ); }else d = skill->get_time(skill_id,skill_lv) + (sstatus->dex - tstatus->dex)*500; diff --git a/src/map/unit.c b/src/map/unit.c index 36eed87fe..13465e166 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -1103,6 +1103,17 @@ int unit_skilluse_id2(struct block_list *src, int target_id, uint16 skill_id, ui return 0; } break; + case GC_WEAPONCRUSH: + if( sc && sc->data[SC_COMBOATTACK] && sc->data[SC_COMBOATTACK]->val1 == GC_WEAPONBLOCKING ) { + if( (target=map->id2bl(sc->data[SC_COMBOATTACK]->val2)) == NULL ) { + clif->skill_fail(sd,skill_id,USESKILL_FAIL_GC_WEAPONBLOCKING,0); + return 0; + } + } else { + clif->skill_fail(sd,skill_id,USESKILL_FAIL_GC_WEAPONBLOCKING,0); + return 0; + } + break; } if (target) target_id = target->id; -- cgit v1.2.3-70-g09d2