Rename and clean up MapleStorage

This commit is contained in:
P0nk
2021-09-09 22:51:39 +02:00
parent 18e1f6c50b
commit e9c8a82b47
4 changed files with 52 additions and 53 deletions

View File

@@ -166,7 +166,7 @@ public class Character extends AbstractCharacterObject {
private PlayerShop playerShop = null; private PlayerShop playerShop = null;
private Shop shop = null; private Shop shop = null;
private SkinColor skinColor = SkinColor.NORMAL; private SkinColor skinColor = SkinColor.NORMAL;
private MapleStorage storage = null; private Storage storage = null;
private MapleTrade trade = null; private MapleTrade trade = null;
private MonsterBook monsterbook; private MonsterBook monsterbook;
private CashShop cashshop; private CashShop cashshop;
@@ -5863,7 +5863,7 @@ public class Character extends AbstractCharacterObject {
} }
} }
public MapleStorage getStorage() { public Storage getStorage() {
return storage; return storage;
} }

View File

@@ -33,7 +33,7 @@ import config.YamlConfig;
import constants.inventory.ItemConstants; import constants.inventory.ItemConstants;
import net.packet.InPacket; import net.packet.InPacket;
import server.ItemInformationProvider; import server.ItemInformationProvider;
import server.MapleStorage; import server.Storage;
import tools.FilePrinter; import tools.FilePrinter;
import tools.PacketCreator; import tools.PacketCreator;
@@ -47,7 +47,7 @@ public class StorageProcessor {
public static void storageAction(InPacket p, Client c) { public static void storageAction(InPacket p, Client c) {
ItemInformationProvider ii = ItemInformationProvider.getInstance(); ItemInformationProvider ii = ItemInformationProvider.getInstance();
Character chr = c.getPlayer(); Character chr = c.getPlayer();
MapleStorage storage = chr.getStorage(); Storage storage = chr.getStorage();
byte mode = p.readByte(); byte mode = p.readByte();
if (chr.getLevel() < 15){ if (chr.getLevel() < 15){

View File

@@ -53,7 +53,7 @@ import net.server.services.ServicesManager;
import net.server.services.type.WorldServices; import net.server.services.type.WorldServices;
import net.server.task.*; import net.server.task.*;
import scripting.event.EventInstanceManager; import scripting.event.EventInstanceManager;
import server.MapleStorage; import server.Storage;
import server.TimerManager; import server.TimerManager;
import server.maps.*; import server.maps.*;
import tools.DatabaseConnection; import tools.DatabaseConnection;
@@ -96,7 +96,7 @@ public class World {
private MonitoredWriteLock chnWLock = MonitoredWriteLockFactory.createLock(chnLock); private MonitoredWriteLock chnWLock = MonitoredWriteLockFactory.createLock(chnLock);
private Map<Integer, SortedMap<Integer, Character>> accountChars = new HashMap<>(); private Map<Integer, SortedMap<Integer, Character>> accountChars = new HashMap<>();
private Map<Integer, MapleStorage> accountStorages = new HashMap<>(); private Map<Integer, Storage> accountStorages = new HashMap<>();
private MonitoredReentrantLock accountCharsLock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.WORLD_CHARS, true); private MonitoredReentrantLock accountCharsLock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.WORLD_CHARS, true);
private Set<Integer> queuedGuilds = new HashSet<>(); private Set<Integer> queuedGuilds = new HashSet<>();
@@ -435,7 +435,7 @@ public class World {
} }
private void registerAccountStorage(Integer accountId) { private void registerAccountStorage(Integer accountId) {
MapleStorage storage = MapleStorage.loadOrCreateFromDB(accountId, this.id); Storage storage = Storage.loadOrCreateFromDB(accountId, this.id);
accountCharsLock.lock(); accountCharsLock.lock();
try { try {
accountStorages.put(accountId, storage); accountStorages.put(accountId, storage);
@@ -453,7 +453,7 @@ public class World {
} }
} }
public MapleStorage getAccountStorage(Integer accountId) { public Storage getAccountStorage(Integer accountId) {
return accountStorages.get(accountId); return accountStorages.get(accountId);
} }

View File

@@ -43,28 +43,27 @@ import java.util.*;
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Lock;
/** /**
*
* @author Matze * @author Matze
*/ */
public class MapleStorage { public class Storage {
private static Map<Integer, Integer> trunkGetCache = new HashMap<>(); private static final Map<Integer, Integer> trunkGetCache = new HashMap<>();
private static Map<Integer, Integer> trunkPutCache = new HashMap<>(); private static final Map<Integer, Integer> trunkPutCache = new HashMap<>();
private int id; private final int id;
private int currentNpcid; private int currentNpcid;
private int meso; private int meso;
private byte slots; private byte slots;
private Map<InventoryType, List<Item>> typeItems = new HashMap<>(); private final Map<InventoryType, List<Item>> typeItems = new HashMap<>();
private List<Item> items = new LinkedList<>(); private List<Item> items = new LinkedList<>();
private Lock lock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.STORAGE, true); private final Lock lock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.STORAGE, true);
private MapleStorage(int id, byte slots, int meso) { private Storage(int id, byte slots, int meso) {
this.id = id; this.id = id;
this.slots = slots; this.slots = slots;
this.meso = meso; this.meso = meso;
} }
private static MapleStorage create(int id, int world) throws SQLException { private static Storage create(int id, int world) throws SQLException {
try (Connection con = DatabaseConnection.getConnection(); try (Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("INSERT INTO storages (accountid, world, slots, meso) VALUES (?, ?, 4, 0)")) { PreparedStatement ps = con.prepareStatement("INSERT INTO storages (accountid, world, slots, meso) VALUES (?, ?, 4, 0)")) {
ps.setInt(1, id); ps.setInt(1, id);
@@ -75,8 +74,8 @@ public class MapleStorage {
return loadOrCreateFromDB(id, world); return loadOrCreateFromDB(id, world);
} }
public static MapleStorage loadOrCreateFromDB(int id, int world) { public static Storage loadOrCreateFromDB(int id, int world) {
MapleStorage ret; Storage ret;
try (Connection con = DatabaseConnection.getConnection(); try (Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("SELECT storageid, slots, meso FROM storages WHERE accountid = ? AND world = ?")) { PreparedStatement ps = con.prepareStatement("SELECT storageid, slots, meso FROM storages WHERE accountid = ? AND world = ?")) {
ps.setInt(1, id); ps.setInt(1, id);
@@ -84,7 +83,7 @@ public class MapleStorage {
try (ResultSet rs = ps.executeQuery()) { try (ResultSet rs = ps.executeQuery()) {
if (rs.next()) { if (rs.next()) {
ret = new MapleStorage(rs.getInt("storageid"), (byte) rs.getInt("slots"), rs.getInt("meso")); ret = new Storage(rs.getInt("storageid"), (byte) rs.getInt("slots"), rs.getInt("meso"));
for (Pair<Item, InventoryType> item : ItemFactory.STORAGE.loadItems(ret.id, false)) { for (Pair<Item, InventoryType> item : ItemFactory.STORAGE.loadItems(ret.id, false)) {
ret.items.add(item.getLeft()); ret.items.add(item.getLeft());
} }