summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-28 16:42:32 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-28 16:42:32 +0000
commit2fbedc46150f0b296d165ff58defd3a5e6a7deb9 (patch)
treedfb2d83b6246cdea6f645af0a05e5ba365345105 /src
parente07b2da8d90f955dbe01737e9bfdb73ddaa3bd83 (diff)
downloadhercules-2fbedc46150f0b296d165ff58defd3a5e6a7deb9.tar.gz
hercules-2fbedc46150f0b296d165ff58defd3a5e6a7deb9.tar.bz2
hercules-2fbedc46150f0b296d165ff58defd3a5e6a7deb9.tar.xz
hercules-2fbedc46150f0b296d165ff58defd3a5e6a7deb9.zip
- Added inf2 4096 (INF2_ALLOW_ENEMY) which is to be used in conjunction with INF2_PARTY_ONLY/INF2_GUILD_ONLY when said skill should ALSO be allowed to be used on enemies.
- Updated Soul Change to use inf2 4096 (INF2_ALLOW_ENEMY). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7376 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/pc.c2
-rw-r--r--src/map/skill.c17
-rw-r--r--src/map/skill.h2
3 files changed, 9 insertions, 12 deletions
diff --git a/src/map/pc.c b/src/map/pc.c
index 63d097b14..fc7e5c7a8 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -6358,7 +6358,7 @@ int pc_checkitem(struct map_session_data *sd)
continue;
if( battle_config.item_check && !itemdb_available(id) ){
if(battle_config.error_log)
- ShowWarning("illeagal item id %d in %d[%s] cart.\n",id,sd->bl.id,sd->status.name);
+ ShowWarning("illegal item id %d in %d[%s] cart.\n",id,sd->bl.id,sd->status.name);
pc_cart_delitem(sd,i,sd->status.cart[i].amount,1);
continue;
}
diff --git a/src/map/skill.c b/src/map/skill.c
index 7f460e507..b43112109 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -5545,17 +5545,12 @@ int skill_castend_id (int tid, unsigned int tick, int id, int data)
inf2 = skill_get_inf2(ud->skillid);
if(inf2 & (INF2_PARTY_ONLY|INF2_GUILD_ONLY) && src != target) {
- int fail_flag = 1;
- if(inf2 & INF2_PARTY_ONLY && battle_check_target(src, target, BCT_PARTY) > 0)
- fail_flag = 0;
- else if(inf2 & INF2_GUILD_ONLY && battle_check_target(src, target, BCT_GUILD) > 0)
- fail_flag = 0;
-
- if (ud->skillid == PF_SOULCHANGE && map_flag_vs(target->m))
- //Soul Change overrides this restriction during pvp/gvg [Skotlex]
- fail_flag = 0;
-
- if(fail_flag)
+ inf2 =
+ (inf2&INF2_PARTY_ONLY?BCT_PARTY:0)|
+ (inf2&INF2_GUILD_ONLY?BCT_GUILD:0)|
+ (inf2&INF2_ALLOW_ENEMY?BCT_ENEMY:0);
+
+ if(battle_check_target(src, target, inf2) <= 0)
break;
}
diff --git a/src/map/skill.h b/src/map/skill.h
index a5b1e25cf..650fb6ae7 100644
--- a/src/map/skill.h
+++ b/src/map/skill.h
@@ -40,6 +40,8 @@
#define INF2_NO_TARGET_SELF 512
#define INF2_PARTY_ONLY 1024
#define INF2_GUILD_ONLY 2048
+//For Party/Guild only skills that can ALSO be used on enemies.
+#define INF2_ALLOW_ENEMY 4096
//Walk intervals at which chase-skills are attempted to be triggered.
#define WALK_SKILL_INTERVAL 5