- 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://svn.code.sf.net/p/rathena/svn/trunk@11950 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2007-12-19 16:41:56 +00:00
parent a6875211ef
commit c5415465da
3 changed files with 11 additions and 9 deletions

View File

@ -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]

View File

@ -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

View File

@ -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;