From 5161d6894dc0afd8fd4a6380ddbb179da3d72623 Mon Sep 17 00:00:00 2001 From: skotlex Date: Wed, 19 Dec 2007 16:41:56 +0000 Subject: - Corected the SC_MIRACLE + Anger code using the wrong skill level to calculate damage bonus. - Corrected SC_MIRACLE to trigger Bless of the Stars on all defeated mobs. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11950 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 3 +++ src/map/battle.c | 4 ++-- src/map/mob.c | 13 ++++++------- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index cd6c93f73..8a595585c 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -3,6 +3,9 @@ Date Added AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK. IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. +2007/12/19 + * Corrected SC_MIRACLE to trigger Bless of the Stars on all defeated mobs. + [Skotlex] 2007/12/18 * Fixed a possible buffer overflow in @partyoption [ultramage] * Updated respawn time interpretation according to latest kRO update [Playtester] diff --git a/src/map/battle.c b/src/map/battle.c index 759b88f83..f9dbb636e 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -1763,8 +1763,8 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo if (sc && sc->data[SC_MIRACLE]) i = 2; //Star anger else - ARR_FIND(0, 3, i, t_class == sd->hate_mob[i] && (skill=pc_checkskill(sd,sg_info[i].anger_id))); - if (i < 3) + ARR_FIND(0, 3, i, t_class == sd->hate_mob[i]); + if (i < 3 && (skill=pc_checkskill(sd,sg_info[i].anger_id))) { skillratio = sd->status.base_level + sstatus->dex + sstatus->luk; if (i == 2) skillratio += sstatus->str; //Star Anger diff --git a/src/map/mob.c b/src/map/mob.c index b5089cab5..8b01df25b 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -1864,13 +1864,12 @@ int mob_dead(struct mob_data *md, struct block_list *src, int type) bonus += md->sc.data[SC_RICHMANKIM]->val2; if(sd) { temp = status_get_class(&md->bl); - ARR_FIND(0, 3, i, temp == sd->hate_mob[i]); - if (i < 3 && ( - battle_config.allow_skill_without_day || - sg_info[i].day_func() || - (i==2 && sd->sc.data[SC_MIRACLE]) //Miracle only applies to Star target - )) - bonus += (i==2?20:10)*pc_checkskill(sd,sg_info[i].bless_id); + if(sd->sc.data[SC_MIRACLE]) i = 2; //All mobs are Star Targets + else + ARR_FIND(0, 3, i, temp == sd->hate_mob[i] && + (battle_config.allow_skill_without_day || sg_info[i].day_func())); + if(i<3 && (temp=pc_checkskill(sd,sg_info[i].bless_id))) + bonus += (i==2?20:10)*temp; } if(battle_config.mobs_level_up && md->level > md->db->lv) // [Valaris] bonus += (md->level-md->db->lv)*battle_config.mobs_level_up_exp_rate; -- cgit v1.2.3-60-g2f50