From 6bce3af9caeb640d8097602e7cfd743792a8b035 Mon Sep 17 00:00:00 2001 From: markzd Date: Thu, 3 Jan 2013 09:12:36 +0000 Subject: - Fixed an warning of type casting. (bugreport:7081) - Removed an unecessary type cast before atoi. - Fixed Ray of Genesis Attack Formula. (bugreport:7053) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17074 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/atcommand.c | 2 +- src/map/battle.c | 19 +++++++++---------- src/map/script.c | 2 +- 3 files changed, 11 insertions(+), 12 deletions(-) (limited to 'src/map') diff --git a/src/map/atcommand.c b/src/map/atcommand.c index 1c7e37392..c6292a7a9 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -8611,7 +8611,7 @@ ACMD_FUNC(set) { if( is_str ) set_var(sd, reg, (void*) val); else - set_var(sd, reg, (void*)__64BPRTSIZE((int)(atoi(val)))); + set_var(sd, reg, (void*)__64BPRTSIZE((atoi(val)))); } diff --git a/src/map/battle.c b/src/map/battle.c index 89e374e95..48ae06a8a 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2731,7 +2731,7 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo RE_LVL_DMOD(100); break; case LG_RAYOFGENESIS: - skillratio = skillratio + 200 + 300 * skill_lv; + skillratio = 300 + 300 * skill_lv; RE_LVL_DMOD(100); break; case LG_EARTHDRIVE: @@ -2989,12 +2989,6 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo if(sd) ATK_ADD(30*pc_checkskill(sd, RA_TOOTHOFWUG)); break; - case LG_RAYOFGENESIS: - if( sc && sc->data[SC_BANDING] ) {// Increase only if the RG is under Banding. - short lv = (short)skill_lv; - ATK_ADDRATE( 190 * ((sd) ? skill_check_pc_partner(sd,(short)skill_id,&lv,skill_get_splash(skill_id,skill_lv),0) : 1)); - } - break; case SR_GATEOFHELL: ATK_ADD (sstatus->max_hp - status_get_hp(src)); if(sc && sc->data[SC_COMBO] && sc->data[SC_COMBO]->val1 == SR_FALLENEMPIRE){ @@ -3930,9 +3924,14 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list RE_LVL_DMOD(100); break; case LG_RAYOFGENESIS: - skillratio = (skillratio + 200) * skill_lv; - RE_LVL_DMOD(100); - break; + { + int16 lv = skill_lv; + int bandingBonus = 0; + if( sc && sc->data[SC_BANDING] ) + bandingBonus = 200 * (sd ? skill_check_pc_partner(sd,skill_id,&lv,skill_get_splash(skill_id,skill_lv),0) : 1); + skillratio = ((300 * skill_lv) + bandingBonus) * (sd ? sd->status.job_level : 1) / 25; + } + break; case LG_SHIELDSPELL:// [(Casters Base Level x 4) + (Shield MDEF x 100) + (Casters INT x 2)] % if( sd ) { skillratio = status_get_lv(src) * 4 + sd->bonus.shieldmdef * 100 + status_get_int(src) * 2; diff --git a/src/map/script.c b/src/map/script.c index 143be2f03..3409d44db 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -15026,7 +15026,7 @@ BUILDIN_FUNC(searchitem) for( i = 0; i < count; ++start, ++i ) {// Set array - void* v = (void*)__64BPRTSIZE(items[i]->nameid); + void* v = (void*)__64BPRTSIZE((int)items[i]->nameid); set_reg(st, sd, reference_uid(id, start), name, v, reference_getref(data)); } -- cgit v1.2.3-70-g09d2