summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
authorshennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-02-09 01:37:48 +0000
committershennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-02-09 01:37:48 +0000
commit3d56a0bf4a4ac9da69eac47560b18e2f770d2747 (patch)
tree0964f7a067aa4f55e90707cf25ff6c875469037a /src/map/battle.c
parentafe5db9b8300ed02e0a57c75b28d5c02baed58da (diff)
downloadhercules-3d56a0bf4a4ac9da69eac47560b18e2f770d2747.tar.gz
hercules-3d56a0bf4a4ac9da69eac47560b18e2f770d2747.tar.bz2
hercules-3d56a0bf4a4ac9da69eac47560b18e2f770d2747.tar.xz
hercules-3d56a0bf4a4ac9da69eac47560b18e2f770d2747.zip
Added some renewal behaviors of skills from bugreport:5302 (all under renewal mode)
- Steel body no longer sets def and mdef at 90, instead it reduces incoming damage by 1/10. - Storm Gust no longer possesses a hit counter; instead every hit have a chance to freeze of 20+(5 x skill_level). - Thunder Storm skill ratio was increased from 80% to 100% - Misc: added isOFF macro to replace REMODE == 0 compiler-level-checks. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15553 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index fe637a5ce..efcf199aa 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -544,7 +544,14 @@ int battle_calc_damage(struct block_list *src,struct block_list *bl,struct Damag
//Reduction: 6% + 6% every 20%
damage -= damage * 6 * (1+per) / 100;
}
-
+/**
+ * In renewal steel body reduces all incoming damage by 1/10
+ **/
+#if REMODE
+ if( sc->data[SC_STEELBODY] ) {
+ damage = damage > 10 ? damage / 10 : 1;
+ }
+#endif
// FIXME:
// So Reject Sword calculates the redirected damage before calculating WoE/BG reduction? This is weird. [Inkfish]
if((sce=sc->data[SC_REJECTSWORD]) && flag&BF_WEAPON &&
@@ -727,7 +734,7 @@ int battle_calc_gvg_damage(struct block_list *src,struct block_list *bl,int dama
if(class_ == MOBID_EMPERIUM && flag&BF_SKILL) {
//Skill immunity.
switch (skill_num) {
-#if REMODE == 0
+#if isOFF(REMODE)
case MO_TRIPLEATTACK:
#endif
case HW_GRAVITATION:
@@ -2862,9 +2869,14 @@ struct Damage battle_calc_magic_attack(struct block_list *src,struct block_list
case MG_FIREWALL:
skillratio -= 50;
break;
+ /**
+ * in Renewal Thunder Storm boost is 100% (in pre-re, 80%)
+ **/
+ #if isOFF(REMODE)
case MG_THUNDERSTORM:
skillratio -= 20;
break;
+ #endif
case MG_FROSTDIVER:
skillratio += 10*skill_lv;
break;