diff options
author | shennetsind <ind@henn.et> | 2013-07-29 10:40:11 -0300 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2013-07-29 10:40:11 -0300 |
commit | 15a3f6a5270943af44eb82fa01203464ce396aec (patch) | |
tree | 34678144388e95bb9ba330f25b7a4544d207e412 /src/map | |
parent | 1caae981b4f000b67bdd0b118fb76797c2bfa06c (diff) | |
parent | 4f441379e35619da60ddd94d44d3a5b5bb8a49b4 (diff) | |
download | hercules-15a3f6a5270943af44eb82fa01203464ce396aec.tar.gz hercules-15a3f6a5270943af44eb82fa01203464ce396aec.tar.bz2 hercules-15a3f6a5270943af44eb82fa01203464ce396aec.tar.xz hercules-15a3f6a5270943af44eb82fa01203464ce396aec.zip |
Merge branch 'master' of https://github.com/HerculesWS/Hercules
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/skill.c | 15 | ||||
-rw-r--r-- | src/map/status.c | 8 |
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] |