diff options
author | Inkfish <Inkfish@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2009-05-07 12:43:37 +0000 |
---|---|---|
committer | Inkfish <Inkfish@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2009-05-07 12:43:37 +0000 |
commit | 7666e881212f15d7d8ed22ef6ee82f98b15c175c (patch) | |
tree | 474a19c532e544e5b37829610003225db1b2916c /src | |
parent | 81a85e322a784f6237b1948c53dca39bffb42f18 (diff) | |
download | hercules-7666e881212f15d7d8ed22ef6ee82f98b15c175c.tar.gz hercules-7666e881212f15d7d8ed22ef6ee82f98b15c175c.tar.bz2 hercules-7666e881212f15d7d8ed22ef6ee82f98b15c175c.tar.xz hercules-7666e881212f15d7d8ed22ef6ee82f98b15c175c.zip |
* Update Waterball code due to info updated
* A piece of GX casttime def reduction code I forgot to merge
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13737 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | 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 18c09f135..e65b87639 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 c7b7b1567..792c225d0 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); |