summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-05 17:59:28 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-05 17:59:28 +0000
commitf97561eb2ee94d591170e1f578c0cf736669b210 (patch)
tree53d275f73c8848a1d59d642d032a745263015a76 /src/map/status.c
parentf7cf35aaad2512e7f329954946aac5e2a24cdfb7 (diff)
downloadhercules-f97561eb2ee94d591170e1f578c0cf736669b210.tar.gz
hercules-f97561eb2ee94d591170e1f578c0cf736669b210.tar.bz2
hercules-f97561eb2ee94d591170e1f578c0cf736669b210.tar.xz
hercules-f97561eb2ee94d591170e1f578c0cf736669b210.zip
- Fixed skill_unitsetting using layout->count for the for instead of group->count
- Added SC_INCDEXRATE/SC_INCAGIRATE. NPC_POWERUP/NPC_AGIUP now correctly increase dex/agi by 40% per level. - Fixed char-sql server not deleting character variables git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6984 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 172de6f00..0b057fcad 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -255,8 +255,8 @@ void initChangeTables(void) {
add_sc(NPC_STOP, SC_STOP);
set_sc(NPC_BREAKWEAPON, SC_BROKENWEAPON, SI_BROKENWEAPON, SCB_NONE);
set_sc(NPC_BREAKARMOR, SC_BROKENARMOR, SI_BROKENARMOR, SCB_NONE);
- set_sc(NPC_POWERUP, SC_INCHITRATE, SI_BLANK, SCB_HIT);
- set_sc(NPC_AGIUP, SC_INCFLEERATE, SI_BLANK, SCB_FLEE);
+ set_sc(NPC_POWERUP, SC_INCDEXRATE, SI_BLANK, SCB_DEX);
+ set_sc(NPC_AGIUP, SC_INCAGIRATE, SI_BLANK, SCB_AGI);
add_sc(NPC_INVISIBLE, SC_CLOAKING);
set_sc(LK_AURABLADE, SC_AURABLADE, SI_AURABLADE, SCB_NONE);
set_sc(LK_PARRYING, SC_PARRYING, SI_PARRYING, SCB_NONE);
@@ -2664,6 +2664,8 @@ static unsigned short status_calc_agi(struct block_list *bl, struct status_chang
if(sc->data[SC_CONCENTRATE].timer!=-1 && sc->data[SC_QUAGMIRE].timer == -1)
agi += (agi-sc->data[SC_CONCENTRATE].val3)*sc->data[SC_CONCENTRATE].val2/100;
+ if(sc->data[SC_INCAGIRATE].timer!=-1)
+ agi += agi*sc->data[SC_INCAGIRATE].val1/100;
if(sc->data[SC_INCALLSTATUS].timer!=-1)
agi += sc->data[SC_INCALLSTATUS].val1;
if(sc->data[SC_INCAGI].timer!=-1)
@@ -2765,6 +2767,9 @@ static unsigned short status_calc_dex(struct block_list *bl, struct status_chang
if(sc->data[SC_CONCENTRATE].timer!=-1 && sc->data[SC_QUAGMIRE].timer == -1)
dex += (dex-sc->data[SC_CONCENTRATE].val4)*sc->data[SC_CONCENTRATE].val2/100;
+
+ if(sc->data[SC_INCDEXRATE].timer!=-1)
+ dex += dex*sc->data[SC_INCDEXRATE].val1/100;
if(sc->data[SC_INCALLSTATUS].timer!=-1)
dex += sc->data[SC_INCALLSTATUS].val1;
if(sc->data[SC_INCDEX].timer!=-1)