summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-01-29 22:00:51 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-01-29 22:00:51 +0000
commit8a9600ded15d1846c9e38de0b660a0f6a72e20a9 (patch)
tree2f580058851d7028bef31d2c570aa62c1f955141 /src/map/status.c
parent9d6ca2f45f252753ae27650565dd3728f14d3bf3 (diff)
downloadhercules-8a9600ded15d1846c9e38de0b660a0f6a72e20a9.tar.gz
hercules-8a9600ded15d1846c9e38de0b660a0f6a72e20a9.tar.bz2
hercules-8a9600ded15d1846c9e38de0b660a0f6a72e20a9.tar.xz
hercules-8a9600ded15d1846c9e38de0b660a0f6a72e20a9.zip
- Corrected the homunculus deletion functions so that the homunculus is deleted together with the character.
- Added npc_check_areanpc so that Wand of Hermod will correctly check for nearby warps. - Emergency avoid now stacks with other speed boost statuses - Item skills and skills that bring up a menu now are cleared on death. - Minor cleanings git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9742 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 0620b0c0f..9b228701c 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -3654,9 +3654,12 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
speed += 300;
if(sc->data[SC_GATLINGFEVER].timer==-1)
- { //% increases (they don't stack, with the exception of Speedup1? @.@)
+ { //% increases (they don't stack, with a few exception)
if(sc->data[SC_SPEEDUP1].timer!=-1)
speed -= speed * 50/100;
+ else if(sc->data[SC_AVOID].timer!=-1)
+ speed -= speed * sc->data[SC_AVOID].val2/100;
+
if(sc->data[SC_RUN].timer!=-1)
speed -= speed * 50/100;
else if(sc->data[SC_SPEEDUP0].timer!=-1)
@@ -3669,8 +3672,6 @@ static unsigned short status_calc_speed(struct block_list *bl, struct status_cha
speed -= speed * 20/100;
else if(sc->data[SC_BERSERK].timer!=-1)
speed -= speed * 20/100;
- else if(sc->data[SC_AVOID].timer!=-1)
- speed -= speed * sc->data[SC_AVOID].val2/100;
else if(sc->data[SC_WINDWALK].timer!=-1)
speed -= speed * sc->data[SC_WINDWALK].val3/100;
}