Remove the DB power requirement loader
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
3f6c75b363
commit
15437246ce
1 file changed
-84
@@ -9,7 +9,6 @@
|
||||
|
||||
package engine.objects;
|
||||
|
||||
import engine.gameManager.DbManager;
|
||||
import engine.gameManager.PowersManager;
|
||||
import engine.parsers.objects.PowerGrant;
|
||||
import engine.parsers.objects.RuneTemplate;
|
||||
@@ -18,10 +17,6 @@ import engine.server.MBServerStatics;
|
||||
import engine.util.Hasher;
|
||||
import org.pmw.tinylog.Logger;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
@@ -83,26 +78,7 @@ public class PowerReq extends AbstractGameObject implements Comparable<PowerReq>
|
||||
this.skillReqs.put(Hasher.SBStringHash(entry.getKey()), entry.getValue().byteValue());
|
||||
}
|
||||
|
||||
/**
|
||||
* ResultSet Constructor
|
||||
*/
|
||||
public PowerReq(ResultSet rs) throws SQLException {
|
||||
super(rs);
|
||||
this.token = rs.getInt("powerToken");
|
||||
this.powersBase = PowersManager.getPowerByToken(this.token);
|
||||
this.level = rs.getShort("level");
|
||||
int type = rs.getInt("type");
|
||||
this.powerReqs = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW);
|
||||
this.skillReqs = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW);
|
||||
if (type == 1)
|
||||
this.skillReqs.put(rs.getInt("requiredToken"), rs.getByte("requiredAmount"));
|
||||
else if (type == 2)
|
||||
this.powerReqs.put(rs.getInt("requiredToken"), rs.getByte("requiredAmount"));
|
||||
}
|
||||
|
||||
public static ArrayList<PowerReq> getPowerReqsForRune(int id) {
|
||||
// if (PowerReq.runePowers == null)
|
||||
// fillRunePowers();
|
||||
if (PowerReq.runePowers.containsKey(id))
|
||||
return PowerReq.runePowers.get(id);
|
||||
return new ArrayList<>();
|
||||
@@ -135,58 +111,6 @@ public class PowerReq extends AbstractGameObject implements Comparable<PowerReq>
|
||||
Logger.info("Loaded " + entryCount + " power requirements for " + PowerReq.runePowers.size() + " runes");
|
||||
}
|
||||
|
||||
public static ConcurrentHashMap<Integer, ArrayList<PowerReq>> fillRunePowers() {
|
||||
|
||||
PowerReq.runePowers = new ConcurrentHashMap<>(MBServerStatics.CHM_INIT_CAP, MBServerStatics.CHM_LOAD, MBServerStatics.CHM_THREAD_LOW);
|
||||
|
||||
try (Connection connection = DbManager.getConnection();
|
||||
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM static_power_powerrequirement")) {
|
||||
|
||||
ResultSet rs = preparedStatement.executeQuery();
|
||||
|
||||
if (PowerReq.runePowers.size() > 0) {
|
||||
return PowerReq.runePowers;
|
||||
}
|
||||
|
||||
while (rs.next()) {
|
||||
ArrayList<PowerReq> runePR = null;
|
||||
int runeID = rs.getInt("runeID");
|
||||
int token = rs.getInt("powerToken");
|
||||
if (PowerReq.runePowers.containsKey(runeID))
|
||||
runePR = PowerReq.runePowers.get(runeID);
|
||||
else {
|
||||
runePR = new ArrayList<>();
|
||||
PowerReq.runePowers.put(runeID, runePR);
|
||||
}
|
||||
boolean found = false;
|
||||
for (PowerReq pr : runePR) {
|
||||
if (pr.token == token) {
|
||||
int type = rs.getInt("type");
|
||||
if (type == 1)
|
||||
pr.addSkill(rs.getInt("requiredToken"), rs.getByte("requiredAmount"));
|
||||
else
|
||||
pr.addPower(rs.getInt("requiredToken"), rs.getByte("requiredAmount"));
|
||||
found = true;
|
||||
}
|
||||
}
|
||||
if (!found) {
|
||||
PowerReq pr = new PowerReq(rs);
|
||||
runePR.add(pr);
|
||||
}
|
||||
}
|
||||
rs.close();
|
||||
|
||||
//order the lists by level so prerequisites are met
|
||||
for (ArrayList<PowerReq> runePR : PowerReq.runePowers.values()) {
|
||||
Collections.sort(runePR);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
Logger.error("SQL Error number: " + e.getErrorCode(), e);
|
||||
}
|
||||
|
||||
return PowerReq.runePowers;
|
||||
}
|
||||
|
||||
/*
|
||||
* Getters
|
||||
*/
|
||||
@@ -213,14 +137,6 @@ public class PowerReq extends AbstractGameObject implements Comparable<PowerReq>
|
||||
return this.token;
|
||||
}
|
||||
|
||||
private void addPower(int token, byte amount) {
|
||||
this.powerReqs.put(token, amount);
|
||||
}
|
||||
|
||||
private void addSkill(int token, byte amount) {
|
||||
this.skillReqs.put(token, amount);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Database
|
||||
|
||||
Reference in new issue
Block a user