|
@@ -10699,15 +10699,15 @@ static bool pc_readdb_skilltree(char* fields[], int columns, int current)
|
|
|
return false;
|
|
|
}
|
|
|
if (skill_lv > (skill_lv_max = skill_get_max(skill_id))) {
|
|
|
- ShowWarning("pc_readdb_skilltree: Skill %hu's level %hu exceeds job %d's max level %hu. Capping skill level..\n", skill_id, skill_lv, class_, skill_lv_max);
|
|
|
+ ShowWarning("pc_readdb_skilltree: Skill %hu's level %hu exceeds job %d's max level %hu. Capping skill level.\n", skill_id, skill_lv, class_, skill_lv_max);
|
|
|
skill_lv = skill_lv_max;
|
|
|
}
|
|
|
if (baselv > (baselv_max = pc_class_maxbaselv(class_))) {
|
|
|
- ShowWarning("pc_readdb_skilltree: Skill %hu's base level requirement %d exceeds job %d's max base level %d. Capping skill base level..\n", skill_id, baselv, class_, baselv_max);
|
|
|
+ ShowWarning("pc_readdb_skilltree: Skill %hu's base level requirement %d exceeds job %d's max base level %d. Capping skill base level.\n", skill_id, baselv, class_, baselv_max);
|
|
|
baselv = baselv_max;
|
|
|
}
|
|
|
if (joblv > (joblv_max = pc_class_maxjoblv(class_))) {
|
|
|
- ShowWarning("pc_readdb_skilltree: Skill %hu's job level requirement %d exceeds job %d's max job level %d. Capping skill job level..\n", skill_id, joblv, class_, joblv_max);
|
|
|
+ ShowWarning("pc_readdb_skilltree: Skill %hu's job level requirement %d exceeds job %d's max job level %d. Capping skill job level.\n", skill_id, joblv, class_, joblv_max);
|
|
|
joblv = joblv_max;
|
|
|
}
|
|
|
|
|
@@ -10733,14 +10733,19 @@ static bool pc_readdb_skilltree(char* fields[], int columns, int current)
|
|
|
skill_id = (uint16)atoi(fields[i * 2 + offset]);
|
|
|
skill_lv = (uint16)atoi(fields[i * 2 + offset + 1]);
|
|
|
|
|
|
- if (skill_id == 0)
|
|
|
+ if (skill_id == 0) {
|
|
|
+ if (skill_tree[idx][skill_idx].need[i].skill_id > 0) { // Remove pre-requisite
|
|
|
+ skill_tree[idx][skill_idx].need[i].skill_id = 0;
|
|
|
+ skill_tree[idx][skill_idx].need[i].skill_lv = 0;
|
|
|
+ }
|
|
|
continue;
|
|
|
+ }
|
|
|
if (skill_id > MAX_SKILL_ID || !skill_get_index(skill_id)) {
|
|
|
ShowWarning("pc_readdb_skilltree: Unable to load requirement skill %hu into job %d's tree.", skill_id, class_);
|
|
|
return false;
|
|
|
}
|
|
|
if (skill_lv > (skill_lv_max = skill_get_max(skill_id))) {
|
|
|
- ShowWarning("pc_readdb_skilltree: Skill %hu's level %hu exceeds job %d's max level %hu. Capping skill level..\n", skill_id, skill_lv, class_, skill_lv_max);
|
|
|
+ ShowWarning("pc_readdb_skilltree: Skill %hu's level %hu exceeds job %d's max level %hu. Capping skill level.\n", skill_id, skill_lv, class_, skill_lv_max);
|
|
|
skill_lv = skill_lv_max;
|
|
|
}
|
|
|
|