summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2013-07-24 00:03:51 +0200
committerHaru <haru@dotalux.com>2013-07-24 04:15:17 +0200
commit078bbbada6272b56ecf22a98ee63345a8e35822e (patch)
tree6577437263a2e5c22ffc93edc6f4e040b34abf2c
parent356a3ab31d7569eac9b2fa996c8d641eba7c9f99 (diff)
downloadhercules-078bbbada6272b56ecf22a98ee63345a8e35822e.tar.gz
hercules-078bbbada6272b56ecf22a98ee63345a8e35822e.tar.bz2
hercules-078bbbada6272b56ecf22a98ee63345a8e35822e.tar.xz
hercules-078bbbada6272b56ecf22a98ee63345a8e35822e.zip
Fixed SA_DISPELL failing outside PvP against party
- Follow-up to a4802eae - Fixes bugreport #7572 http://hercules.ws/board/tracker/issue-7572-dispell-2 - SA_DISPELL would fail outside PvP if caster and target are in the same party AND in the same guild at the same time. - Special thanks for kyeme (bugreport), Xgear (review.) Signed-off-by: Haru <haru@dotalux.com>
-rw-r--r--src/map/skill.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 28c5245bb..1cdec9322 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -6634,7 +6634,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
if(iStatus->isimmune(bl) || !tsc || !tsc->count)
break;
- if( sd && dstsd && !map_flag_vs(sd->bl.m) && sd->status.guild_id == dstsd->status.guild_id ) {
+ if( sd && dstsd && !map_flag_vs(sd->bl.m)
+ && (sd->status.party_id == 0 || sd->status.party_id != dstsd->status.party_id) ) {
+ // Outside PvP it should only affect party members
clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
break;
}