summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-18 13:50:27 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-07-18 13:50:27 +0000
commitea64ed822782ca2e9f2dadf954a85da6d559ed54 (patch)
tree38c41238b84b59049d60a838bd2dec68227ae8d1 /src/map/skill.c
parentff6317b65b37c6439076afd810193baf893b3611 (diff)
downloadhercules-ea64ed822782ca2e9f2dadf954a85da6d559ed54.tar.gz
hercules-ea64ed822782ca2e9f2dadf954a85da6d559ed54.tar.bz2
hercules-ea64ed822782ca2e9f2dadf954a85da6d559ed54.tar.xz
hercules-ea64ed822782ca2e9f2dadf954a85da6d559ed54.zip
- Corrected Fog of Wall's "targetted spells fail 75% of the time" feature by making it behave like GTB, that is, you just get a skill-failed on cast-end, no skill-animation at all.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7728 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 5334a328a..5ff138468 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -2626,11 +2626,15 @@ int skill_castend_damage_id (struct block_list* src, struct block_list *bl, int
if (status_isdead(src) || (src != bl && status_isdead(bl)))
return 1;
- if (skillid && skill_get_type(skillid) == BF_MAGIC && status_isimmune(bl))
+ if (skillid && skill_get_type(skillid) == BF_MAGIC)
{
- if (sd) clif_skill_fail(sd,skillid,0,0);
- //GTB makes all targetted skills silently fail.
- return 1;
+ sc = status_get_sc(bl);
+ if (status_isimmune(bl) || (
+ sc && sc->count && sc->data[SC_FOGWALL].timer != -1 && rand()%100 < 75)
+ ) { //GTB/Fogwall makes all targetted skills silently fail.
+ if (sd) clif_skill_fail(sd,skillid,0,0);
+ return 1;
+ }
}
sc = status_get_sc(src);