mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-16 17:05:20 +01:00
Add a loadReader helper function to DataLoader
Also minor name changing on a few DataLoader methods
This commit is contained in:
@@ -16,6 +16,7 @@ import org.reflections.Reflections;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.Reader;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
@@ -44,9 +45,9 @@ public class ActivityManager extends BasePlayerManager {
|
||||
activityWatcherTypeMap.put(typeName.value(), ConstructorAccess.get(item));
|
||||
});
|
||||
|
||||
try(InputStream is = DataLoader.load("ActivityConfig.json"); InputStreamReader isr = new InputStreamReader(is)) {
|
||||
try(Reader reader = DataLoader.loadReader("ActivityConfig.json")) {
|
||||
List<ActivityConfigItem> activities = Grasscutter.getGsonFactory().fromJson(
|
||||
isr,
|
||||
reader,
|
||||
TypeToken.getParameterized(List.class, ActivityConfigItem.class).getType());
|
||||
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ public class CombineManger extends BaseGameSystem {
|
||||
|
||||
public static void initialize() {
|
||||
// Read the data we need for strongbox.
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("ReliquaryDecompose.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("ReliquaryDecompose.json")) {
|
||||
List<ReliquaryDecomposeEntry> decomposeEntries = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, ReliquaryDecomposeEntry.class).getType());
|
||||
|
||||
for (ReliquaryDecomposeEntry entry : decomposeEntries) {
|
||||
|
||||
@@ -38,7 +38,7 @@ public class DropSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
public synchronized void load() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("Drop.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("Drop.json")) {
|
||||
getDropData().clear();
|
||||
List<DropInfo> banners = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, DropInfo.class).getType());
|
||||
if(banners.size() > 0) {
|
||||
|
||||
@@ -46,7 +46,7 @@ public class DungeonChallenge extends WorldChallenge {
|
||||
|
||||
public static void initialize() {
|
||||
// Read the data we need for dungeon rewards drops.
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("DungeonDrop.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("DungeonDrop.json")) {
|
||||
List<DungeonDrop> dungeonDropList = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, DungeonDrop.class).getType());
|
||||
|
||||
for (DungeonDrop entry : dungeonDropList) {
|
||||
|
||||
@@ -30,7 +30,7 @@ public class ExpeditionSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
public synchronized void load() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("ExpeditionReward.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("ExpeditionReward.json")) {
|
||||
getExpeditionRewardDataList().clear();
|
||||
List<ExpeditionRewardInfo> banners = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, ExpeditionRewardInfo.class).getType());
|
||||
if(banners.size() > 0) {
|
||||
|
||||
@@ -76,7 +76,7 @@ public class GachaSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
public synchronized void load() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("Banners.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("Banners.json")) {
|
||||
getGachaBanners().clear();
|
||||
List<GachaBanner> banners = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, GachaBanner.class).getType());
|
||||
if(banners.size() > 0) {
|
||||
|
||||
@@ -30,7 +30,7 @@ public class AnnouncementSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
private int loadConfig() {
|
||||
try (var fileReader = new InputStreamReader(DataLoader.load("Announcement.json"))) {
|
||||
try (var fileReader = DataLoader.loadReader("Announcement.json")) {
|
||||
List<AnnounceConfigItem> announceConfigItems = Grasscutter.getGsonFactory().fromJson(fileReader,
|
||||
TypeToken.getParameterized(List.class, AnnounceConfigItem.class).getType());
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ public class EnergyManager extends BasePlayerManager {
|
||||
|
||||
public static void initialize() {
|
||||
// Read the data we need for monster energy drops.
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("EnergyDrop.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("EnergyDrop.json")) {
|
||||
List<EnergyDropEntry> energyDropList = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, EnergyDropEntry.class).getType());
|
||||
|
||||
for (EnergyDropEntry entry : energyDropList) {
|
||||
|
||||
@@ -60,7 +60,7 @@ public class ShopSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
private void loadShop() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("Shop.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("Shop.json")) {
|
||||
getShopData().clear();
|
||||
List<ShopTable> banners = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, ShopTable.class).getType());
|
||||
if(banners.size() > 0) {
|
||||
@@ -104,7 +104,7 @@ public class ShopSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
private void loadShopChest() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("ShopChest.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("ShopChest.json")) {
|
||||
getShopChestData().clear();
|
||||
List<ShopChestTable> shopChestTableList = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, ShopChestTable.class).getType());
|
||||
if (shopChestTableList.size() > 0) {
|
||||
@@ -119,7 +119,7 @@ public class ShopSystem extends BaseGameSystem {
|
||||
}
|
||||
|
||||
private void loadShopChestBatchUse() {
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("ShopChestBatchUse.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("ShopChestBatchUse.json")) {
|
||||
getShopChestBatchUseData().clear();
|
||||
List<ShopChestBatchUseTable> shopChestBatchUseTableList = Grasscutter.getGsonFactory().fromJson(fileReader, TypeToken.getParameterized(Collection.class, ShopChestBatchUseTable.class).getType());
|
||||
if (shopChestBatchUseTableList.size() > 0) {
|
||||
|
||||
@@ -25,7 +25,7 @@ public class TowerSystem extends BaseGameSystem {
|
||||
private TowerScheduleConfig towerScheduleConfig;
|
||||
|
||||
public synchronized void load(){
|
||||
try (Reader fileReader = new InputStreamReader(DataLoader.load("TowerSchedule.json"))) {
|
||||
try (Reader fileReader = DataLoader.loadReader("TowerSchedule.json")) {
|
||||
towerScheduleConfig = Grasscutter.getGsonFactory().fromJson(fileReader, TowerScheduleConfig.class);
|
||||
} catch (Exception e) {
|
||||
Grasscutter.getLogger().error("Unable to load tower schedule config.", e);
|
||||
|
||||
@@ -19,6 +19,7 @@ import emu.grasscutter.server.game.GameServer;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.Reader;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -41,9 +42,9 @@ public class WorldDataSystem extends BaseGameSystem {
|
||||
// set the special chest first
|
||||
chestInteractHandlerMap.put("SceneObj_Chest_Flora", new BossChestInteractHandler());
|
||||
|
||||
try(InputStream is = DataLoader.load("ChestReward.json"); InputStreamReader isr = new InputStreamReader(is)) {
|
||||
try(Reader reader = DataLoader.loadReader("ChestReward.json")) {
|
||||
List<ChestReward> chestReward = Grasscutter.getGsonFactory().fromJson(
|
||||
isr,
|
||||
reader,
|
||||
TypeToken.getParameterized(List.class, ChestReward.class).getType());
|
||||
|
||||
chestReward.forEach(reward ->
|
||||
|
||||
Reference in New Issue
Block a user