diff options
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/unit.c | 11 |
2 files changed, 13 insertions, 2 deletions
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; |