summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-11-20 18:02:08 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-11-20 18:02:08 +0000
commit99f319c197d5e783eef978859535287b45c9f989 (patch)
treebbb4923460a5d9616a83f98ffd8f4dada9f88feb /src/map/skill.c
parent386421a953a51e90fa56da5e294ecdac58647549 (diff)
downloadhercules-99f319c197d5e783eef978859535287b45c9f989.tar.gz
hercules-99f319c197d5e783eef978859535287b45c9f989.tar.bz2
hercules-99f319c197d5e783eef978859535287b45c9f989.tar.xz
hercules-99f319c197d5e783eef978859535287b45c9f989.zip
- You now can't use other skills while a skill-induced "window" is up (teleport, refining, etc). However, be warned that we aren't quite sure how the server will clear this out if you decide to hit cancel on the window, so skill-blockage is likely to happen (temporary solution: whenever you change maps or warp the state is reset server-side).
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9276 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index acef1a96d..610fc5790 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -852,6 +852,9 @@ int skillnotok (int skillid, struct map_session_data *sd)
if (battle_config.gm_skilluncond && pc_isGM(sd) >= battle_config.gm_skilluncond)
return 0; // gm's can do anything damn thing they want
+ if(sd->menuskill_id && skillid != sd->menuskill_id)
+ return 1; //Can't use skills while a menu is open.
+
// Check skill restrictions [Celest]
if(!map_flag_vs(m) && skill_get_nocast (skillid) & 1)
return 1;
@@ -8309,7 +8312,7 @@ int skill_check_condition (struct map_session_data *sd, int skill, int lv, int t
case GD_BATTLEORDER:
case GD_REGENERATION:
case GD_RESTORE:
- //Emergency Recall is handled on skill_notok
+ //Emergency Recall is handled on skillnotok
if (!agit_flag) {
clif_skill_fail(sd,skill,0,0);
return 0;