* Some fixes for Heat
- won't cancel combo wait. (bugreport:3228) - should work with hp/sp drain bonus. (bugreport:3507) - consumes 10 sp if the attack doesn't connect. (bugreport:3038) git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14017 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
1b8628e876
commit
a464adf45b
@ -3,6 +3,11 @@ Date Added
|
|||||||
AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
|
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.
|
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||||
|
|
||||||
|
09/08/18
|
||||||
|
* Some fixes for Heat [Inkfish]
|
||||||
|
- Heat and other ground skills' activation won't cancel combo wait. (bugreport:3228)
|
||||||
|
- Heat should work with hp/sp drain bonus. (bugreport:3507)
|
||||||
|
- Heat consumes 10 sp if the attack doesn't connect. (bugreport:3038)
|
||||||
09/08/17
|
09/08/17
|
||||||
* Equipment DEF penalty shouldn't be applied to players in Mental Strength. (bugreport:3454) [Inkfish]
|
* Equipment DEF penalty shouldn't be applied to players in Mental Strength. (bugreport:3454) [Inkfish]
|
||||||
09/08/14
|
09/08/14
|
||||||
|
@ -1739,6 +1739,7 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds
|
|||||||
unit_cancel_combo(src); // Cancel combo wait
|
unit_cancel_combo(src); // Cancel combo wait
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
if( src == dsrc ) // Ground skills are exceptions. [Inkfish]
|
||||||
status_change_end(src,SC_COMBO,-1);
|
status_change_end(src,SC_COMBO,-1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1917,7 +1918,8 @@ int skill_attack (int attack_type, struct block_list* src, struct block_list *ds
|
|||||||
if(skillid == CR_GRANDCROSS || skillid == NPC_GRANDDARKNESS)
|
if(skillid == CR_GRANDCROSS || skillid == NPC_GRANDDARKNESS)
|
||||||
dmg.flag |= BF_WEAPON;
|
dmg.flag |= BF_WEAPON;
|
||||||
|
|
||||||
if(sd && dmg.flag&BF_WEAPON && src != bl && src == dsrc && damage > 0) {
|
if( sd && dmg.flag&BF_WEAPON && src != bl && ( src == dsrc || ( dsrc->type == BL_SKILL && ( skillid == SG_SUN_WARM || skillid == SG_MOON_WARM || skillid == SG_STAR_WARM ) ) ) && damage > 0 )
|
||||||
|
{
|
||||||
if (battle_config.left_cardfix_to_right)
|
if (battle_config.left_cardfix_to_right)
|
||||||
battle_drain(sd, bl, dmg.damage, dmg.damage, tstatus->race, tstatus->mode&MD_BOSS);
|
battle_drain(sd, bl, dmg.damage, dmg.damage, tstatus->race, tstatus->mode&MD_BOSS);
|
||||||
else
|
else
|
||||||
@ -7464,8 +7466,12 @@ int skill_unit_onplace_timer (struct skill_unit *src, struct block_list *bl, uns
|
|||||||
status_zap(bl, 0, 15); // sp damage to players
|
status_zap(bl, 0, 15); // sp damage to players
|
||||||
else // mobs
|
else // mobs
|
||||||
if( status_charge(ss, 0, 2) ) // costs 2 SP per hit
|
if( status_charge(ss, 0, 2) ) // costs 2 SP per hit
|
||||||
skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick+count*sg->interval,0);
|
{
|
||||||
else { //should end when out of sp.
|
if( !skill_attack(BF_WEAPON,ss,&src->bl,bl,sg->skill_id,sg->skill_lv,tick+count*sg->interval,0) )
|
||||||
|
status_charge(ss, 0, 8); //costs additional 8 SP if miss
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{ //should end when out of sp.
|
||||||
sg->limit = DIFF_TICK(tick,sg->tick);
|
sg->limit = DIFF_TICK(tick,sg->tick);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user