summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-09-10 16:32:06 +0000
committerrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-09-10 16:32:06 +0000
commitb970380ed01b23c948c6cc1b9fc9e8f8a2deca53 (patch)
tree4535f49b3c7c9ad0d9869fb8f4b3288d770757e2 /src/map/status.c
parentd8bd7d857896c04afb43b4c7012735a09b9644f7 (diff)
downloadhercules-b970380ed01b23c948c6cc1b9fc9e8f8a2deca53.tar.gz
hercules-b970380ed01b23c948c6cc1b9fc9e8f8a2deca53.tar.bz2
hercules-b970380ed01b23c948c6cc1b9fc9e8f8a2deca53.tar.xz
hercules-b970380ed01b23c948c6cc1b9fc9e8f8a2deca53.zip
Fixed bugreport:6650 where WZ_QUAGMIRE affects caster in non PK map.
Fixed bugreport:6635 where SO_FIREWALK & SO_ELECTRIC walk still active after changing map. Updated EDP to it's Renewal damage formula bonus. NOTE: result damage still quite huge than official since renewal atk is not yet fully implemented. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16770 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/map/status.c b/src/map/status.c
index e3bca4513..d6e96e522 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -968,8 +968,8 @@ void initChangeTables(void) {
StatusChangeFlagTable[SC_EXTRACT_SALAMINE_JUICE] |= SCB_ASPD;
#ifdef RENEWAL_EDP
- // renewal EDP increases your atk and weapon atk
- StatusChangeFlagTable[SC_EDP] |= SCB_BATK|SCB_WATK;
+ // renewal EDP increases your weapon atk
+ StatusChangeFlagTable[SC_EDP] |= SCB_WATK;
#endif
if( !battle_config.display_hallucination ) //Disable Hallucination.
@@ -4399,11 +4399,6 @@ static unsigned short status_calc_batk(struct block_list *bl, struct status_chan
batk += 70;
if(sc->data[SC_ANGRIFFS_MODUS])
batk += batk * sc->data[SC_ANGRIFFS_MODUS]->val2/100;
-#ifdef RENEWAL_EDP
- // renewal EDP increases your base atk by atk x skill level
- if( sc->data[SC_EDP] )
- batk = batk * sc->data[SC_EDP]->val1;
-#endif
if( sc->data[SC_ZANGETSU] )
batk += batk * sc->data[SC_ZANGETSU]->val2 / 100;
return (unsigned short)cap_value(batk,0,USHRT_MAX);
@@ -4487,9 +4482,8 @@ static unsigned short status_calc_watk(struct block_list *bl, struct status_chan
if(sc->data[SC_ANGRIFFS_MODUS])
watk += watk * sc->data[SC_ANGRIFFS_MODUS]->val2/100;
#ifdef RENEWAL_EDP
- // renewal EDP increases your weapon atk by watk x Skill Level - 1
- if( sc->data[SC_EDP] && sc->data[SC_EDP]->val1 > 1 )
- watk = watk * (sc->data[SC_EDP]->val1 - 1);
+ if( sc->data[SC_EDP] )
+ watk = watk * (100 + sc->data[SC_EDP]->val1 * 80) / 100;
#endif
return (unsigned short)cap_value(watk,0,USHRT_MAX);
@@ -6983,7 +6977,9 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val
break;
case SC_EDP: // [Celest]
val2 = val1 + 2; //Chance to Poison enemies.
+#ifndef RENEWAL_EDP
val3 = 50*(val1+1); //Damage increase (+50 +50*lv%)
+#endif
if( sd )//[Ind] - iROwiki says each level increases its duration by 3 seconds
tick += pc_checkskill(sd,GC_RESEARCHNEWPOISON)*3000;
break;