summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
authorrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-08-18 07:52:11 +0000
committerrud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-08-18 07:52:11 +0000
commit611350370ef3ecf8fc939005df37a14b55a8f69c (patch)
tree1da4119c85685bed98adb79cad4cbcd144ca0ba8 /src/map/battle.c
parent15e7b5f4c91f2bd50fdaee6edcaa19ef849d3875 (diff)
downloadhercules-611350370ef3ecf8fc939005df37a14b55a8f69c.tar.gz
hercules-611350370ef3ecf8fc939005df37a14b55a8f69c.tar.bz2
hercules-611350370ef3ecf8fc939005df37a14b55a8f69c.tar.xz
hercules-611350370ef3ecf8fc939005df37a14b55a8f69c.zip
Implemented Renewal Casting System.
Fixed bugreport:2018 where CH_PALMSTRIKE deals damage to hidden targets. Fixed bugreport:6473, bugreport:6325 SC_DEADLYINFECT should now spread status ailments properly. Fixed bugreport:5541, bugreport:6179, bugreport:6281 where self buff skill is transfer to targets when doing a combo. Updated AC_VULTURE where in renewal it doesn't show the hit bonus anymore in the status window. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16661 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index bde3bfb65..47cb4a88c 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -1587,6 +1587,10 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo
if(sd && flag.arrow)
hitrate += sd->bonus.arrow_hit;
+#ifdef RENEWAL
+ if( sd ) //in Renewal hit bonus from Vultures Eye is not anymore shown in status window
+ hitrate += pc_checkskill(sd,AC_VULTURE);
+#endif
if(skill_num)
switch(skill_num)
{ //Hit skill modifiers
@@ -4258,6 +4262,10 @@ struct Damage battle_calc_misc_attack(struct block_list *src,struct block_list *
}
hitrate+= sstatus->hit - flee;
+#ifdef RENEWAL
+ if( sd ) //in Renewal hit bonus from Vultures Eye is not anymore shown in status window
+ hitrate += pc_checkskill(sd,AC_VULTURE);
+#endif
hitrate = cap_value(hitrate, battle_config.min_hitrate, battle_config.max_hitrate);
if(rnd()%100 < hitrate)
@@ -4676,6 +4684,12 @@ enum damage_lv battle_weapon_attack(struct block_list* src, struct block_list* t
skill_get_time(MO_CALLSPIRITS, sc->data[SC_GT_ENERGYGAIN]->val1),
sc->data[SC_GT_ENERGYGAIN]->val1);
}
+ if( tsc && tsc->data[SC_GT_ENERGYGAIN] ) {
+ if( tsd && rnd()%100 < 10 + 5 * tsc->data[SC_GT_ENERGYGAIN]->val1)
+ pc_addspiritball(tsd,
+ skill_get_time(MO_CALLSPIRITS, tsc->data[SC_GT_ENERGYGAIN]->val1),
+ tsc->data[SC_GT_ENERGYGAIN]->val1);
+ }
}
@@ -5577,6 +5591,7 @@ static const struct _battle_data {
{ "max_cloth_color", &battle_config.max_cloth_color, 4, 0, INT_MAX, },
{ "pet_hair_style", &battle_config.pet_hair_style, 100, 0, INT_MAX, },
{ "castrate_dex_scale", &battle_config.castrate_dex_scale, 150, 1, INT_MAX, },
+ { "vcast_stat_scale", &battle_config.vcast_stat_scale, 530, 1, INT_MAX, },
{ "area_size", &battle_config.area_size, 14, 0, INT_MAX, },
{ "zeny_from_mobs", &battle_config.zeny_from_mobs, 0, 0, 1, },
{ "mobs_level_up", &battle_config.mobs_level_up, 0, 0, 1, },