Files
Server/src/engine/objects/MaxSkills.java
T
MagicBotandClaude Opus 5.5 8b9aa43c1b Remove the dead skill and power DB loaders
Deletes the uncalled static_rune_skill_adjusts, static_rune_maxskills,
static_skill_skillsgranted, static_skill_skillreq and static_power_powergrant
loaders and their ResultSet constructors. LOAD_RUNE_POWERS stays for the 14
Magister Captain guard contract ids. No value changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 12:42:19 -04:00

93 lines
3.1 KiB
Java

// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
// Magicbane Emulator Project © 2013 - 2026
// https://www.magicbane.com
package engine.objects;
import engine.mbEnums;
import engine.parsers.objects.RuneTemplate;
import engine.util.Hasher;
import org.pmw.tinylog.Logger;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
public class MaxSkills {
public static HashMap<Integer, ArrayList<MaxSkills>> MaxSkillsSet = new HashMap<>();
private int runeID;
private int skillToken;
private int skillLevel;
private int maxSkillPercent;
public MaxSkills(int runeID, int skillToken, int skillLevel, int maxSkillPercent) {
super();
this.runeID = runeID;
this.skillToken = skillToken;
this.skillLevel = skillLevel;
this.maxSkillPercent = maxSkillPercent;
}
public static void LoadAllMaxSkills() {
ArrayList<MaxSkills> maxSkillsList;
int entryCount = 0;
// Talents only: class/discipline/race adjusts are skill grants, and contracts that key on those runes would read them as caps
for (RuneTemplate rune : RuneTemplate._runes.values()) {
if (rune.rune_type != mbEnums.RuneType.TALENT || rune.rune_skill_adj.isEmpty())
continue;
maxSkillsList = new ArrayList<>();
for (Map.Entry<String, ArrayList<int[]>> skillAdjust : rune.rune_skill_adj.entrySet())
for (int[] adjust : skillAdjust.getValue())
maxSkillsList.add(new MaxSkills(rune.template_id, Hasher.SBStringHash(skillAdjust.getKey()), adjust[1], adjust[0]));
MaxSkillsSet.put(rune.template_id, maxSkillsList);
entryCount += maxSkillsList.size();
}
Logger.info("Loaded " + entryCount + " max skills for " + MaxSkillsSet.size() + " runes");
}
public int getRuneID() {
return runeID;
}
public void setRuneID(int runeID) {
this.runeID = runeID;
}
public int getSkillLevel() {
return skillLevel;
}
public void setSkillLevel(int skillLevel) {
this.skillLevel = skillLevel;
}
public int getSkillToken() {
return skillToken;
}
public void setSkillToken(int skillToken) {
this.skillToken = skillToken;
}
public int getMaxSkillPercent() {
return maxSkillPercent;
}
public void setMaxSkillPercent(int maxSkillPercent) {
this.maxSkillPercent = maxSkillPercent;
}
}