summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
authorMichieru <Michieru@users.noreply.github.com>2014-09-15 22:45:23 +0200
committerMichieru <Michieru@users.noreply.github.com>2014-09-15 22:45:23 +0200
commita4dcd61e0ba326d26f70ab4b6538f84111dbdef0 (patch)
tree07188a17742280a82c5164dcf68f1fa687754dd9 /src/map/battle.c
parentd7eb5284c49f6678a91afc7ef40b5fd81660c905 (diff)
parentcb0de0393e20f2a85928d2c61bfe8a039486c3d6 (diff)
downloadhercules-a4dcd61e0ba326d26f70ab4b6538f84111dbdef0.tar.gz
hercules-a4dcd61e0ba326d26f70ab4b6538f84111dbdef0.tar.bz2
hercules-a4dcd61e0ba326d26f70ab4b6538f84111dbdef0.tar.xz
hercules-a4dcd61e0ba326d26f70ab4b6538f84111dbdef0.zip
Merge pull request #355 from csnv/tinyfixes
Fixed song display, changed devotion conditions
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 07a195503..fbc166874 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -5393,8 +5393,7 @@ void battle_reflect_damage(struct block_list *target, struct block_list *src, st
sc = NULL;
if( sc ) {
- if (sc->data[SC_DEVOTION] && !(wd->flag & BF_SKILL))
- return; // No reflect for basic attacks on devoted characters
+
if (wd->flag & BF_SHORT && !(skill->get_inf(skill_id) & (INF_GROUND_SKILL | INF_SELF_SKILL))) {
if( sc->data[SC_CRESCENTELBOW] && !is_boss(src) && rnd()%100 < sc->data[SC_CRESCENTELBOW]->val2 ){
@@ -5461,7 +5460,9 @@ void battle_reflect_damage(struct block_list *target, struct block_list *src, st
if( wd->dmg_lv >= ATK_BLOCK ) {/* yes block still applies, somehow gravity thinks it makes sense. */
if( sc ) {
- if( sc->data[SC_REFLECTSHIELD] && skill_id != WS_CARTTERMINATION && skill_id != GS_DESPERADO ) {
+ if( sc->data[SC_REFLECTSHIELD] && skill_id != WS_CARTTERMINATION && skill_id != GS_DESPERADO
+ && !(!(wd->flag&BF_SKILL) && sc->data[SC_DEVOTION])
+ ) {
NORMALIZE_RDAMAGE(damage * sc->data[SC_REFLECTSHIELD]->val2 / 100);
#ifndef RENEWAL