diff --git a/src/map/mob.c b/src/map/mob.c index 50b4580915..89c6ad8778 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -3509,7 +3509,7 @@ int mob_clone_spawn(struct map_session_data *sd, int16 m, int16 x, int16 y, cons /** * The clone should be able to cast the skill (e.g. have the required weapon) bugreport:5299) **/ - if( !skill_check_condition_castbegin(sd,skill_id,sd->status.skill[skill_id].lv) ) + if( !skill_check_condition_castbegin(sd,skill_id,sd->status.skill[sk_idx].lv) ) continue; memset (&ms[i], 0, sizeof(struct mob_skill)); diff --git a/src/map/pc.c b/src/map/pc.c index c77cbf967d..ab5baabfa0 100755 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -1650,7 +1650,7 @@ void pc_calc_skilltree(struct map_session_data *sd) if (sd->status.skill[sk_need_idx].id == 0 || sd->status.skill[sk_need_idx].flag == SKILL_FLAG_TEMPORARY || sd->status.skill[sk_need_idx].flag == SKILL_FLAG_PLAGIARIZED) sk_need = 0; //Not learned. else if (sd->status.skill[sk_need_idx].flag >= SKILL_FLAG_REPLACED_LV_0) //Real learned level - sk_need = sd->status.skill[skill_tree[c][i].need[j].id].flag - SKILL_FLAG_REPLACED_LV_0; + sk_need = sd->status.skill[sk_need_idx].flag - SKILL_FLAG_REPLACED_LV_0; else sk_need = pc_checkskill(sd,sk_need_id);