summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-12 02:00:52 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-12 02:00:52 +0000
commit0d8ea8e9069b6156741327a96a5b20401c4964a4 (patch)
treec93abfdf3f254173e6b6d253ce7171454fda8db8 /src/map/status.c
parent9684bc0bf1ced9df4c7885c767ba25142c075018 (diff)
downloadhercules-0d8ea8e9069b6156741327a96a5b20401c4964a4.tar.gz
hercules-0d8ea8e9069b6156741327a96a5b20401c4964a4.tar.bz2
hercules-0d8ea8e9069b6156741327a96a5b20401c4964a4.tar.xz
hercules-0d8ea8e9069b6156741327a96a5b20401c4964a4.zip
- Fixed Dancers/Bards being able to use normal attacks while performing.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8245 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/map/status.c b/src/map/status.c
index f3b0f46c5..7a563acd2 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -954,6 +954,23 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int
default: return 0;
}
}
+
+ if (sc->data[SC_DANCING].timer != -1 && flag!=2)
+ {
+ if(sc->data[SC_LONGING].timer != -1)
+ { //Allow everything except dancing/re-dancing. [Skotlex]
+ if (skill_num == BD_ENCORE ||
+ skill_get_inf2(skill_num)&(INF2_SONG_DANCE|INF2_ENSEMBLE_SKILL)
+ )
+ return 0;
+ } else
+ if (skill_num != BD_ADAPTATION && skill_num != CG_LONGINGFREEDOM
+ && skill_num != BA_MUSICALSTRIKE && skill_num != DC_THROWARROW)
+ return 0;
+ if (sc->data[SC_DANCING].val1 == CG_HERMODE && skill_num == BD_ADAPTATION)
+ return 0; //Can't amp out of Wand of Hermode :/ [Skotlex]
+ }
+
if (skill_num && //Do not block item-casted skills.
(src->type != BL_PC || ((TBL_PC*)src)->skillitem != skill_num)
) { //Skills blocked through status changes...
@@ -975,21 +992,6 @@ int status_check_skilluse(struct block_list *src, struct block_list *target, int
)
return 0;
- if (flag!=2 && sc->data[SC_DANCING].timer != -1)
- {
- if(sc->data[SC_LONGING].timer != -1)
- { //Allow everything except dancing/re-dancing. [Skotlex]
- if (skill_num == BD_ENCORE ||
- skill_get_inf2(skill_num)&(INF2_SONG_DANCE|INF2_ENSEMBLE_SKILL)
- )
- return 0;
- } else
- if (skill_num != BD_ADAPTATION && skill_num != CG_LONGINGFREEDOM
- && skill_num != BA_MUSICALSTRIKE && skill_num != DC_THROWARROW)
- return 0;
- if (sc->data[SC_DANCING].val1 == CG_HERMODE && skill_num == BD_ADAPTATION)
- return 0; //Can't amp out of Wand of Hermode :/ [Skotlex]
- }
}
}