summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/skill.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index e779e9859..1022700fe 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -14058,8 +14058,8 @@ static int skill_check_condition_castbegin(struct map_session_data *sd, uint16 s
if (sd->chat_id != 0)
return 0;
- if ((sd->autocast.itemskill_conditions_checked || !sd->autocast.itemskill_check_conditions)
- && sd->autocast.type == AUTOCAST_ITEM) {
+ if (((sd->autocast.itemskill_conditions_checked || !sd->autocast.itemskill_check_conditions)
+ && sd->autocast.type == AUTOCAST_ITEM) || sd->autocast.type == AUTOCAST_IMPROVISE) {
return 1;
}
@@ -15024,8 +15024,8 @@ static int skill_check_condition_castend(struct map_session_data *sd, uint16 ski
if (sd->chat_id != 0)
return 0;
- if ((sd->autocast.itemskill_conditions_checked || !sd->autocast.itemskill_check_conditions)
- && sd->autocast.type == AUTOCAST_ITEM) {
+ if (((sd->autocast.itemskill_conditions_checked || !sd->autocast.itemskill_check_conditions)
+ && sd->autocast.type == AUTOCAST_ITEM) || sd->autocast.type == AUTOCAST_IMPROVISE) {
return 1;
}
@@ -15230,8 +15230,10 @@ static int skill_consume_requirement(struct map_session_data *sd, uint16 skill_i
nullpo_ret(sd);
- if (!sd->autocast.itemskill_check_conditions && sd->autocast.type == AUTOCAST_ITEM)
+ if ((!sd->autocast.itemskill_check_conditions && sd->autocast.type == AUTOCAST_ITEM)
+ || sd->autocast.type == AUTOCAST_IMPROVISE) {
return 1;
+ }
req = skill->get_requirement(sd,skill_id,skill_lv);