From 96635c8c8183e9db6aa0f610b46f2fe9f0b37aab Mon Sep 17 00:00:00 2001 From: Inkfish Date: Thu, 7 May 2009 12:43:37 +0000 Subject: [PATCH] * Update Waterball code due to info updated * A piece of GX casttime def reduction code I forgot to merge git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@13737 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/skill.c | 4 ++-- src/map/status.c | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/map/skill.c b/src/map/skill.c index 18c09f1350..e65b87639c 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -2832,8 +2832,8 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int int x, y; struct skill_unit* unit; - if( src->type == BL_PC && skilllv > maxlv ) - range = maxlv / 2; + if( skilllv > maxlv && (src->type == BL_PC || skilllv < 10) ) + range = maxlv / 2; for( y = src->y - range; y <= src->y + range; ++y ) for( x = src->x - range; x <= src->x + range; ++x ) diff --git a/src/map/status.c b/src/map/status.c index c7b7b15671..792c225d05 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -3685,6 +3685,13 @@ static signed short status_calc_flee2(struct block_list *bl, struct status_chang static signed char status_calc_def(struct block_list *bl, struct status_change *sc, int def) { + if( bl->type == BL_PC ) + { + struct unit_data *ud = unit_bl2ud( bl); + if( ud && ud->skilltimer != INVALID_TIMER && (ud->skillid == CR_GRANDCROSS || ud->skillid == NPC_GRANDDARKNESS) ) + def = def*2/3; + } + if(!sc || !sc->count) return (signed char)cap_value(def,CHAR_MIN,CHAR_MAX);