Equip speed buffs no longer stack with speed consumables other then speed potion.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12509 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
1e54725b26
commit
70acc1974c
@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
|
|||||||
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.
|
||||||
|
|
||||||
2008/04/06
|
2008/04/06
|
||||||
|
* Equip speed buffs no longer stack with speed consumables. (r12509) [Kevin]
|
||||||
|
- (Speed potion not included).
|
||||||
* Sprint, Fusion, and Increase AGI now stack independently.
|
* Sprint, Fusion, and Increase AGI now stack independently.
|
||||||
- The others still don't take affect if you have any of these three. (r12508) [Kevin]
|
- The others still don't take affect if you have any of these three. (r12508) [Kevin]
|
||||||
* Mind Sensing no longer gives an xp bonus on bosses. (r12507) [Kevin]
|
* Mind Sensing no longer gives an xp bonus on bosses. (r12507) [Kevin]
|
||||||
|
@ -3701,7 +3701,10 @@ static signed short status_calc_mdef2(struct block_list *bl, struct status_chang
|
|||||||
|
|
||||||
static unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc, int speed)
|
static unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc, int speed)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
//Default speed coming in means there's no speed_rate adjustments.
|
||||||
int new_speed = speed;
|
int new_speed = speed;
|
||||||
|
bool default_speed = (speed == 100);
|
||||||
|
|
||||||
if(!sc || !sc->count)
|
if(!sc || !sc->count)
|
||||||
return cap_value(speed,10,USHRT_MAX);
|
return cap_value(speed,10,USHRT_MAX);
|
||||||
@ -3715,7 +3718,7 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
|
|||||||
new_speed += 300;
|
new_speed += 300;
|
||||||
|
|
||||||
if(!sc->data[SC_GATLINGFEVER])
|
if(!sc->data[SC_GATLINGFEVER])
|
||||||
{ //These two stack with everything (but only one of them)
|
{ //These two stack with everything (but only one of either)
|
||||||
if(sc->data[SC_SPEEDUP1])
|
if(sc->data[SC_SPEEDUP1])
|
||||||
new_speed -= new_speed * 50/100;
|
new_speed -= new_speed * 50/100;
|
||||||
else if(sc->data[SC_AVOID])
|
else if(sc->data[SC_AVOID])
|
||||||
@ -3732,10 +3735,12 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
|
|||||||
new_speed -= new_speed * 25/100;
|
new_speed -= new_speed * 25/100;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//These only apply if you don't have increase agi and/or fusion and/or sprint
|
//These only apply if you don't have increase agi and/or fusion and/or sprint
|
||||||
if(speed == new_speed)
|
if(speed == new_speed)
|
||||||
{
|
{
|
||||||
if(sc->data[SC_SPEEDUP0])
|
//Don't allow buff from non speed potion consumables to stack with equips!
|
||||||
|
if(sc->data[SC_SPEEDUP0] && default_speed)
|
||||||
new_speed -= new_speed * 25/100;
|
new_speed -= new_speed * 25/100;
|
||||||
else if(sc->data[SC_CARTBOOST])
|
else if(sc->data[SC_CARTBOOST])
|
||||||
new_speed -= new_speed * 20/100;
|
new_speed -= new_speed * 20/100;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user