summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/skill.c15
-rw-r--r--src/map/status.c8
2 files changed, 14 insertions, 9 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 9ef768382..d2a9b7fbe 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -4957,15 +4957,21 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
break ;
}
case AL_HEAL:
- case ALL_RESURRECTION:
- case PR_ASPERSIO:
+
/**
* Arch Bishop
**/
case AB_RENOVATIO:
case AB_HIGHNESSHEAL:
+ case AL_INCAGI:
+ if( sd && dstsd && pc_ismadogear(dstsd) ){
+ clif->skill_fail(sd,skill_id,USESKILL_FAIL_TOTARGET,0);
+ return 0;
+ }
+ case ALL_RESURRECTION:
+ case PR_ASPERSIO:
//Apparently only player casted skills can be offensive like this.
- if (sd && battle->check_undead(tstatus->race,tstatus->def_ele)) {
+ if (sd && battle->check_undead(tstatus->race,tstatus->def_ele) && skill_id != AL_INCAGI) {
if (battle->check_target(src, bl, BCT_ENEMY) < 1) {
//Offensive heal does not works on non-enemies. [Skotlex]
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
@@ -5037,8 +5043,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
heal = heal * ( 15 + 5 * skill_lv ) / 10;
}
if( iStatus->isimmune(bl) ||
- (dstmd && (dstmd->class_ == MOBID_EMPERIUM || mob_is_battleground(dstmd))) ||
- (dstsd && pc_ismadogear(dstsd)) )//Mado is immune to heal
+ (dstmd && (dstmd->class_ == MOBID_EMPERIUM || mob_is_battleground(dstmd))) )
heal=0;
if( sd && dstsd && sd->status.partner_id == dstsd->status.char_id && (sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.sex == 0 )
diff --git a/src/map/status.c b/src/map/status.c
index 4c5b5c7c2..a8b61f2d6 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -6711,17 +6711,17 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val
if(sc->data[SC_DEC_AGI])
return 0;
- case SC_INC_AGI:
case SC_CONCENTRATION:
case SC_SPEARQUICKEN:
case SC_TRUESIGHT:
case SC_WINDWALK:
case SC_CARTBOOST:
case SC_ASSNCROS:
- if (sc->data[SC_QUAGMIRE])
- return 0;
if(sc->option&OPTION_MADOGEAR)
- return 0;//Mado is immune to increase agi, wind walk, cart boost, etc (others above) [Ind]
+ return 0;//Mado is immune to wind walk, cart boost, etc (others above) [Ind]
+ case SC_INC_AGI:
+ if (sc->data[SC_QUAGMIRE])
+ return 0;
break;
case SC_CLOAKING:
//Avoid cloaking with no wall and low skill level. [Skotlex]