Explorar el Código

Follow up r16316 and bugreport:6047 - Fixed Enchant Deadly Poison damage on skills that should/shouln't have halved/affected damage on RE mode.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@16321 54d463be-8e91-2dee-dedb-b68131a5f0ec
ignizh hace 13 años
padre
commit
cd16317a46
Se han modificado 1 ficheros con 19 adiciones y 15 borrados
  1. 19 15
      src/map/battle.c

+ 19 - 15
src/map/battle.c

@@ -2498,23 +2498,27 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo
 				  skill_num == CR_SHIELDBOOMERANG || skill_num == PA_SHIELDCHAIN ||
 				  skill_num == LG_SHIELDPRESS ) )
 				ATK_ADDRATE(sc->data[SC_GLOOMYDAY_SK]->val2);
+#ifdef RENEWAL_EDP
+			// First, we halve the damage, then we apply the atk & weapon atk bonus. [Igniz]
+			// Skills that have halved damage
+			if(sc->data[SC_EDP] &&
+					(skill_num == AS_SONICBLOW ||
+					skill_num == ASC_BREAKER ||
+					skill_num == GC_COUNTERSLASH ||
+					skill_num == GC_CROSSIMPACT))
+						ATK_RATE(50);
 			// renewal EDP doesn't affect your final damage but your atk and weapon atk
-			if( sc->data[SC_EDP] ){
-				switch(skill_num){
-					case AS_SPLASHER:	case AS_VENOMKNIFE:	break;
-#ifndef RENEWAL_EDP
-					case ASC_BREAKER:	case ASC_METEORASSAULT: break;
-#else
-					case AS_SONICBLOW:
-					case ASC_BREAKER:
-					case GC_COUNTERSLASH:
-					case GC_CROSSIMPACT:
-					ATK_RATE(50); // only modifier is halved but still benefit with the damage bonus
-#endif
-				default:
+			if(sc->data[SC_EDP] && 
+				skill_num != AS_GRIMTOOTH &&
+				skill_num != ASC_METEORASSAULT &&
+				skill_num != AS_SPLASHER &&
+				skill_num != AS_VENOMKNIFE &&
+				skill_num != AS_SONICBLOW &&
+				skill_num != ASC_BREAKER &&
+				skill_num != GC_COUNTERSLASH &&
+				skill_num != GC_CROSSIMPACT)
 					ATK_ADDRATE(sc->data[SC_EDP]->val3);
-				}
-			}
+#endif
 		}
 
 		switch (skill_num) {