2022-04-17 20:43:07 +08:00
|
|
|
package emu.grasscutter.data;
|
|
|
|
|
|
|
|
import java.lang.reflect.Field;
|
2022-04-22 07:37:25 +08:00
|
|
|
import java.util.ArrayList;
|
2022-04-17 20:43:07 +08:00
|
|
|
import java.util.HashMap;
|
2022-04-22 07:37:25 +08:00
|
|
|
import java.util.List;
|
2022-04-17 20:43:07 +08:00
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
import emu.grasscutter.Grasscutter;
|
2022-06-14 20:51:13 +08:00
|
|
|
import emu.grasscutter.data.binout.*;
|
2022-04-17 20:43:07 +08:00
|
|
|
import emu.grasscutter.utils.Utils;
|
2022-05-28 19:21:47 +08:00
|
|
|
import emu.grasscutter.data.excels.*;
|
2022-04-17 20:43:07 +08:00
|
|
|
import it.unimi.dsi.fastutil.ints.Int2ObjectLinkedOpenHashMap;
|
|
|
|
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
|
|
|
|
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
|
2022-04-30 05:29:34 +08:00
|
|
|
import it.unimi.dsi.fastutil.ints.IntArrayList;
|
|
|
|
import it.unimi.dsi.fastutil.ints.IntList;
|
2022-06-25 11:27:45 +08:00
|
|
|
import lombok.Getter;
|
2022-04-17 20:43:07 +08:00
|
|
|
|
2022-04-27 12:21:57 +08:00
|
|
|
public class GameData {
|
2022-04-17 20:43:07 +08:00
|
|
|
// BinOutputs
|
|
|
|
private static final Int2ObjectMap<String> abilityHashes = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Map<String, AbilityEmbryoEntry> abilityEmbryos = new HashMap<>();
|
2022-05-08 19:40:01 +08:00
|
|
|
private static final Map<String, AbilityModifierEntry> abilityModifiers = new HashMap<>();
|
2022-04-17 20:43:07 +08:00
|
|
|
private static final Map<String, OpenConfigEntry> openConfigEntries = new HashMap<>();
|
2022-04-21 04:45:38 +08:00
|
|
|
private static final Map<String, ScenePointEntry> scenePointEntries = new HashMap<>();
|
2022-05-13 18:12:25 +08:00
|
|
|
private static final Int2ObjectMap<MainQuestData> mainQuestData = new Int2ObjectOpenHashMap<>();
|
2022-06-14 20:51:13 +08:00
|
|
|
private static final Int2ObjectMap<HomeworldDefaultSaveData> homeworldDefaultSaveData = new Int2ObjectOpenHashMap<>();
|
2022-05-25 10:44:46 +08:00
|
|
|
private static final Int2ObjectMap<SceneNpcBornData> npcBornData = new Int2ObjectOpenHashMap<>();
|
2022-06-14 20:51:13 +08:00
|
|
|
|
2022-04-17 20:43:07 +08:00
|
|
|
// ExcelConfigs
|
|
|
|
private static final Int2ObjectMap<PlayerLevelData> playerLevelDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
|
|
|
|
private static final Int2ObjectMap<AvatarData> avatarDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarLevelData> avatarLevelDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarSkillDepotData> avatarSkillDepotDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarSkillData> avatarSkillDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarCurveData> avatarCurveDataMap = new Int2ObjectLinkedOpenHashMap<>();
|
2022-04-22 22:27:40 +08:00
|
|
|
private static final Int2ObjectMap<AvatarFetterLevelData> avatarFetterLevelDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-17 20:43:07 +08:00
|
|
|
private static final Int2ObjectMap<AvatarPromoteData> avatarPromoteDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarTalentData> avatarTalentDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<ProudSkillData> proudSkillDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
|
|
|
|
private static final Int2ObjectMap<ItemData> itemDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<ReliquaryLevelData> reliquaryLevelDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<ReliquaryAffixData> reliquaryAffixDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<ReliquaryMainPropData> reliquaryMainPropDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<ReliquarySetData> reliquarySetDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<WeaponLevelData> weaponLevelDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<WeaponPromoteData> weaponPromoteDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<WeaponCurveData> weaponCurveDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<EquipAffixData> equipAffixDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-03 15:51:51 +08:00
|
|
|
|
|
|
|
private static final Int2ObjectMap<EnvAnimalGatherConfigData> envAnimalGatherConfigDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-17 20:43:07 +08:00
|
|
|
private static final Int2ObjectMap<MonsterData> monsterDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<NpcData> npcDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<GadgetData> gadgetDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<MonsterCurveData> monsterCurveDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<MonsterDescribeData> monsterDescribeDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
|
|
|
|
private static final Int2ObjectMap<AvatarFlycloakData> avatarFlycloakDataMap = new Int2ObjectLinkedOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarCostumeData> avatarCostumeDataMap = new Int2ObjectLinkedOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<AvatarCostumeData> avatarCostumeDataItemIdMap = new Int2ObjectLinkedOpenHashMap<>();
|
|
|
|
|
2022-04-19 01:14:32 +08:00
|
|
|
private static final Int2ObjectMap<SceneData> sceneDataMap = new Int2ObjectLinkedOpenHashMap<>();
|
2022-04-22 07:37:25 +08:00
|
|
|
private static final Int2ObjectMap<FetterData> fetterDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-23 13:23:09 +08:00
|
|
|
private static final Int2ObjectMap<CodexQuestData> codexQuestDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexQuestData> codexQuestDataIdMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexAnimalData> codexAnimalDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexWeaponData> codexWeaponDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexWeaponData> codexWeaponDataIdMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexMaterialData> codexMaterialDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexMaterialData> codexMaterialDataIdMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexReliquaryData> codexReliquaryDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<CodexReliquaryData> codexReliquaryDataIdMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final ArrayList<CodexReliquaryData> codexReliquaryArrayList = new ArrayList<>();
|
2022-04-23 06:08:37 +08:00
|
|
|
private static final Int2ObjectMap<FetterCharacterCardData> fetterCharacterCardDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-23 23:48:06 +08:00
|
|
|
private static final Int2ObjectMap<RewardData> rewardDataMap = new Int2ObjectOpenHashMap<>();
|
2022-07-22 18:46:59 +08:00
|
|
|
|
2022-06-16 22:54:53 +08:00
|
|
|
private static final Int2ObjectMap<WorldAreaData> worldAreaDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-25 19:04:01 +08:00
|
|
|
private static final Int2ObjectMap<WorldLevelData> worldLevelDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-30 05:29:34 +08:00
|
|
|
private static final Int2ObjectMap<DailyDungeonData> dailyDungeonDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-18 14:50:55 +08:00
|
|
|
private static final Int2ObjectMap<DungeonEntryData> dungeonEntryDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
|
2022-04-28 23:20:37 +08:00
|
|
|
private static final Int2ObjectMap<DungeonData> dungeonDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-13 18:12:25 +08:00
|
|
|
private static final Int2ObjectMap<QuestData> questDataMap = new Int2ObjectOpenHashMap<>();
|
2022-04-29 00:46:19 +08:00
|
|
|
private static final Int2ObjectMap<ShopGoodsData> shopGoodsDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-05 01:06:13 +08:00
|
|
|
private static final Int2ObjectMap<CombineData> combineDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-04 14:13:42 +08:00
|
|
|
private static final Int2ObjectMap<RewardPreviewData> rewardPreviewDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-18 17:21:34 +08:00
|
|
|
private static final Int2ObjectMap<GatherData> gatherDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-06 14:10:23 +08:00
|
|
|
private static final Int2ObjectMap<TowerFloorData> towerFloorDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<TowerLevelData> towerLevelDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-08 17:11:02 +08:00
|
|
|
private static final Int2ObjectMap<TowerScheduleData> towerScheduleDataMap = new Int2ObjectOpenHashMap<>();
|
2022-07-22 18:46:59 +08:00
|
|
|
private static final Int2ObjectMap<BuffData> buffDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-05 03:05:03 +08:00
|
|
|
private static final Int2ObjectMap<ForgeData> forgeDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-16 17:25:20 +08:00
|
|
|
private static final Int2ObjectMap<HomeWorldLevelData> homeWorldLevelDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<FurnitureMakeConfigData> furnitureMakeConfigDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-20 13:46:00 +08:00
|
|
|
private static final Int2ObjectMap<InvestigationMonsterData> investigationMonsterDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-18 19:07:39 +08:00
|
|
|
private static final Int2ObjectMap<CityData> cityDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-22 20:27:41 +08:00
|
|
|
private static final Int2ObjectMap<WeatherData> weatherDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-24 16:12:52 +08:00
|
|
|
private static final Int2ObjectMap<BattlePassMissionData> battlePassMissionDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
private static final Int2ObjectMap<BattlePassRewardData> battlePassRewardDataMap = new Int2ObjectOpenHashMap<>();
|
2022-07-02 13:43:27 +08:00
|
|
|
private static final Int2ObjectMap<CookRecipeData> cookRecipeDataMap = new Int2ObjectOpenHashMap<>();
|
2022-07-02 17:14:43 +08:00
|
|
|
private static final Int2ObjectMap<CookBonusData> cookBonusDataMap = new Int2ObjectOpenHashMap<>();
|
2022-05-06 14:10:23 +08:00
|
|
|
|
2022-06-25 11:27:45 +08:00
|
|
|
@Getter private static final Int2ObjectMap<ActivityData> activityDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
@Getter private static final Int2ObjectMap<ActivityWatcherData> activityWatcherDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-26 20:16:50 +08:00
|
|
|
@Getter private static final Int2ObjectMap<MusicGameBasicData> musicGameBasicDataMap = new Int2ObjectOpenHashMap<>();
|
2022-07-05 20:41:07 +08:00
|
|
|
@Getter private static final Int2ObjectMap<PersonalLineData> personalLineDataMap = new Int2ObjectOpenHashMap<>();
|
|
|
|
@Getter private static final Int2ObjectMap<ChapterData> chapterDataMap = new Int2ObjectOpenHashMap<>();
|
2022-06-25 11:27:45 +08:00
|
|
|
|
2022-04-22 10:39:25 +08:00
|
|
|
// Cache
|
|
|
|
private static Map<Integer, List<Integer>> fetters = new HashMap<>();
|
2022-04-29 00:46:19 +08:00
|
|
|
private static Map<Integer, List<ShopGoodsData>> shopGoods = new HashMap<>();
|
2022-04-30 05:29:34 +08:00
|
|
|
private static final IntList scenePointIdList = new IntArrayList();
|
2022-04-19 01:14:32 +08:00
|
|
|
|
2022-04-17 20:43:07 +08:00
|
|
|
public static Int2ObjectMap<?> getMapByResourceDef(Class<?> resourceDefinition) {
|
|
|
|
Int2ObjectMap<?> map = null;
|
|
|
|
|
|
|
|
try {
|
2022-04-27 12:21:57 +08:00
|
|
|
Field field = GameData.class.getDeclaredField(Utils.lowerCaseFirstChar(resourceDefinition.getSimpleName()) + "Map");
|
2022-04-17 20:43:07 +08:00
|
|
|
field.setAccessible(true);
|
|
|
|
|
|
|
|
map = (Int2ObjectMap<?>) field.get(null);
|
|
|
|
|
|
|
|
field.setAccessible(false);
|
|
|
|
} catch (Exception e) {
|
|
|
|
Grasscutter.getLogger().error("Error fetching resource map for " + resourceDefinition.getSimpleName(), e);
|
|
|
|
}
|
|
|
|
|
|
|
|
return map;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<String> getAbilityHashes() {
|
|
|
|
return abilityHashes;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Map<String, AbilityEmbryoEntry> getAbilityEmbryoInfo() {
|
|
|
|
return abilityEmbryos;
|
|
|
|
}
|
|
|
|
|
2022-05-08 19:40:01 +08:00
|
|
|
public static Map<String, AbilityModifierEntry> getAbilityModifiers() {
|
|
|
|
return abilityModifiers;
|
|
|
|
}
|
|
|
|
|
2022-04-17 20:43:07 +08:00
|
|
|
public static Map<String, OpenConfigEntry> getOpenConfigEntries() {
|
|
|
|
return openConfigEntries;
|
|
|
|
}
|
|
|
|
|
2022-04-21 04:45:38 +08:00
|
|
|
public static Map<String, ScenePointEntry> getScenePointEntries() {
|
|
|
|
return scenePointEntries;
|
|
|
|
}
|
2022-04-28 23:20:37 +08:00
|
|
|
|
|
|
|
// TODO optimize
|
|
|
|
public static ScenePointEntry getScenePointEntryById(int sceneId, int pointId) {
|
|
|
|
return getScenePointEntries().get(sceneId + "_" + pointId);
|
|
|
|
}
|
2022-04-21 04:45:38 +08:00
|
|
|
|
2022-05-13 18:12:25 +08:00
|
|
|
public static Int2ObjectMap<MainQuestData> getMainQuestDataMap() {
|
|
|
|
return mainQuestData;
|
2022-05-11 18:56:40 +08:00
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-06-14 20:51:13 +08:00
|
|
|
public static Int2ObjectMap<HomeworldDefaultSaveData> getHomeworldDefaultSaveData() {
|
|
|
|
return homeworldDefaultSaveData;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-05-25 10:44:46 +08:00
|
|
|
public static Int2ObjectMap<SceneNpcBornData> getSceneNpcBornData() {
|
|
|
|
return npcBornData;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-04-17 20:43:07 +08:00
|
|
|
public static Int2ObjectMap<AvatarData> getAvatarDataMap() {
|
|
|
|
return avatarDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<ItemData> getItemDataMap() {
|
|
|
|
return itemDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarSkillDepotData> getAvatarSkillDepotDataMap() {
|
|
|
|
return avatarSkillDepotDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarSkillData> getAvatarSkillDataMap() {
|
|
|
|
return avatarSkillDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<PlayerLevelData> getPlayerLevelDataMap() {
|
|
|
|
return playerLevelDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-22 22:27:40 +08:00
|
|
|
public static Int2ObjectMap<AvatarFetterLevelData> getAvatarFetterLevelDataMap() {
|
|
|
|
return avatarFetterLevelDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-23 06:08:37 +08:00
|
|
|
public static Int2ObjectMap<FetterCharacterCardData> getFetterCharacterCardDataMap() {
|
|
|
|
return fetterCharacterCardDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-17 20:43:07 +08:00
|
|
|
public static Int2ObjectMap<AvatarLevelData> getAvatarLevelDataMap() {
|
|
|
|
return avatarLevelDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<WeaponLevelData> getWeaponLevelDataMap() {
|
|
|
|
return weaponLevelDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<ReliquaryAffixData> getReliquaryAffixDataMap() {
|
|
|
|
return reliquaryAffixDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<ReliquaryMainPropData> getReliquaryMainPropDataMap() {
|
|
|
|
return reliquaryMainPropDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<WeaponPromoteData> getWeaponPromoteDataMap() {
|
|
|
|
return weaponPromoteDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<WeaponCurveData> getWeaponCurveDataMap() {
|
|
|
|
return weaponCurveDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarCurveData> getAvatarCurveDataMap() {
|
|
|
|
return avatarCurveDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static int getRelicExpRequired(int rankLevel, int level) {
|
|
|
|
ReliquaryLevelData levelData = reliquaryLevelDataMap.get((rankLevel << 8) + level);
|
|
|
|
return levelData != null ? levelData.getExp() : 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static ReliquaryLevelData getRelicLevelData(int rankLevel, int level) {
|
|
|
|
return reliquaryLevelDataMap.get((rankLevel << 8) + level);
|
|
|
|
}
|
|
|
|
|
|
|
|
public static WeaponPromoteData getWeaponPromoteData(int promoteId, int promoteLevel) {
|
|
|
|
return weaponPromoteDataMap.get((promoteId << 8) + promoteLevel);
|
|
|
|
}
|
|
|
|
|
|
|
|
public static int getWeaponExpRequired(int rankLevel, int level) {
|
|
|
|
WeaponLevelData levelData = weaponLevelDataMap.get(level);
|
|
|
|
if (levelData == null) {
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
try {
|
|
|
|
return levelData.getRequiredExps()[rankLevel - 1];
|
|
|
|
} catch (Exception e) {
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public static AvatarPromoteData getAvatarPromoteData(int promoteId, int promoteLevel) {
|
|
|
|
return avatarPromoteDataMap.get((promoteId << 8) + promoteLevel);
|
|
|
|
}
|
|
|
|
|
|
|
|
public static int getAvatarLevelExpRequired(int level) {
|
|
|
|
AvatarLevelData levelData = avatarLevelDataMap.get(level);
|
|
|
|
return levelData != null ? levelData.getExp() : 0;
|
|
|
|
}
|
2022-04-22 22:27:40 +08:00
|
|
|
|
|
|
|
public static int getAvatarFetterLevelExpRequired(int level) {
|
|
|
|
AvatarFetterLevelData levelData = avatarFetterLevelDataMap.get(level);
|
|
|
|
return levelData != null ? levelData.getExp() : 0;
|
|
|
|
}
|
2022-04-17 20:43:07 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<ProudSkillData> getProudSkillDataMap() {
|
|
|
|
return proudSkillDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<MonsterData> getMonsterDataMap() {
|
|
|
|
return monsterDataMap;
|
|
|
|
}
|
2022-06-03 15:51:51 +08:00
|
|
|
public static Int2ObjectMap<EnvAnimalGatherConfigData> getEnvAnimalGatherConfigDataMap() {
|
|
|
|
return envAnimalGatherConfigDataMap;
|
|
|
|
}
|
2022-04-17 20:43:07 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<NpcData> getNpcDataMap() {
|
|
|
|
return npcDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<GadgetData> getGadgetDataMap() {
|
|
|
|
return gadgetDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<ReliquarySetData> getReliquarySetDataMap() {
|
|
|
|
return reliquarySetDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<EquipAffixData> getEquipAffixDataMap() {
|
|
|
|
return equipAffixDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<MonsterCurveData> getMonsterCurveDataMap() {
|
|
|
|
return monsterCurveDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<MonsterDescribeData> getMonsterDescribeDataMap() {
|
|
|
|
return monsterDescribeDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarTalentData> getAvatarTalentDataMap() {
|
|
|
|
return avatarTalentDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarFlycloakData> getAvatarFlycloakDataMap() {
|
|
|
|
return avatarFlycloakDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarCostumeData> getAvatarCostumeDataMap() {
|
|
|
|
return avatarCostumeDataMap;
|
|
|
|
}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<AvatarCostumeData> getAvatarCostumeDataItemIdMap() {
|
|
|
|
return avatarCostumeDataItemIdMap;
|
|
|
|
}
|
2022-04-19 01:14:32 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<SceneData> getSceneDataMap() {
|
|
|
|
return sceneDataMap;
|
|
|
|
}
|
2022-04-22 07:37:25 +08:00
|
|
|
|
2022-04-23 23:48:06 +08:00
|
|
|
public static Int2ObjectMap<RewardData> getRewardDataMap() {
|
|
|
|
return rewardDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-22 07:37:25 +08:00
|
|
|
public static Map<Integer, List<Integer>> getFetterDataEntries() {
|
2022-04-22 10:39:25 +08:00
|
|
|
if (fetters.isEmpty()) {
|
|
|
|
fetterDataMap.forEach((k, v) -> {
|
|
|
|
if (!fetters.containsKey(v.getAvatarId())) {
|
|
|
|
fetters.put(v.getAvatarId(), new ArrayList<>());
|
|
|
|
}
|
|
|
|
fetters.get(v.getAvatarId()).add(k);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
2022-04-22 07:37:25 +08:00
|
|
|
return fetters;
|
|
|
|
}
|
2022-04-25 19:04:01 +08:00
|
|
|
|
2022-05-23 13:23:09 +08:00
|
|
|
public static Int2ObjectMap<CodexQuestData> getCodexQuestDataIdMap(){return codexQuestDataIdMap;}
|
2022-05-14 07:33:07 +08:00
|
|
|
|
2022-05-23 13:23:09 +08:00
|
|
|
public static Int2ObjectMap<CodexAnimalData> getCodexAnimalDataMap(){return codexAnimalDataMap;}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<CodexWeaponData> getCodexWeaponDataIdMap(){return codexWeaponDataIdMap;}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<CodexMaterialData> getCodexMaterialDataIdMap(){return codexMaterialDataIdMap;}
|
|
|
|
|
|
|
|
public static Int2ObjectMap<CodexReliquaryData> getcodexReliquaryIdMap(){return codexReliquaryDataIdMap;}
|
|
|
|
|
|
|
|
public static ArrayList<CodexReliquaryData> getcodexReliquaryArrayList(){return codexReliquaryArrayList;}
|
2022-05-14 07:33:07 +08:00
|
|
|
|
2022-06-16 22:54:53 +08:00
|
|
|
public static Int2ObjectMap<WorldAreaData> getWorldAreaDataMap() {
|
|
|
|
return worldAreaDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-25 19:04:01 +08:00
|
|
|
public static Int2ObjectMap<WorldLevelData> getWorldLevelDataMap() {
|
|
|
|
return worldLevelDataMap;
|
|
|
|
}
|
2022-04-28 23:20:37 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<DungeonData> getDungeonDataMap() {
|
|
|
|
return dungeonDataMap;
|
|
|
|
}
|
2022-04-29 13:21:26 +08:00
|
|
|
|
2022-04-30 05:29:34 +08:00
|
|
|
public static Int2ObjectMap<DailyDungeonData> getDailyDungeonDataMap() {
|
|
|
|
return dailyDungeonDataMap;
|
|
|
|
}
|
|
|
|
|
2022-06-18 14:50:55 +08:00
|
|
|
public static Int2ObjectMap<DungeonEntryData> getDungeonEntryDatatMap(){
|
|
|
|
return dungeonEntryDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-29 00:46:19 +08:00
|
|
|
public static Map<Integer, List<ShopGoodsData>> getShopGoodsDataEntries() {
|
|
|
|
if (shopGoods.isEmpty()) {
|
|
|
|
shopGoodsDataMap.forEach((k, v) -> {
|
|
|
|
if (!shopGoods.containsKey(v.getShopType()))
|
|
|
|
shopGoods.put(v.getShopType(), new ArrayList<>());
|
|
|
|
shopGoods.get(v.getShopType()).add(v);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
return shopGoods;
|
|
|
|
}
|
2022-04-30 05:29:34 +08:00
|
|
|
|
2022-05-04 14:13:42 +08:00
|
|
|
public static Int2ObjectMap<RewardPreviewData> getRewardPreviewDataMap() {
|
|
|
|
return rewardPreviewDataMap;
|
|
|
|
}
|
|
|
|
|
2022-04-30 05:29:34 +08:00
|
|
|
public static IntList getScenePointIdList() {
|
|
|
|
return scenePointIdList;
|
|
|
|
}
|
2022-05-05 01:06:13 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<CombineData> getCombineDataMap() {
|
|
|
|
return combineDataMap;
|
|
|
|
}
|
2022-05-06 14:10:23 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<TowerFloorData> getTowerFloorDataMap(){
|
|
|
|
return towerFloorDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-05-06 14:10:23 +08:00
|
|
|
public static Int2ObjectMap<TowerLevelData> getTowerLevelDataMap(){
|
|
|
|
return towerLevelDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-05-08 17:11:02 +08:00
|
|
|
public static Int2ObjectMap<TowerScheduleData> getTowerScheduleDataMap(){
|
|
|
|
return towerScheduleDataMap;
|
|
|
|
}
|
2022-05-13 18:12:25 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<QuestData> getQuestDataMap() {
|
|
|
|
return questDataMap;
|
|
|
|
}
|
2022-06-05 04:14:49 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<ForgeData> getForgeDataMap() {
|
|
|
|
return forgeDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-06-16 17:25:20 +08:00
|
|
|
public static Int2ObjectMap<HomeWorldLevelData> getHomeWorldLevelDataMap() {
|
|
|
|
return homeWorldLevelDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-06-16 17:25:20 +08:00
|
|
|
public static Int2ObjectMap<FurnitureMakeConfigData> getFurnitureMakeConfigDataMap() {
|
|
|
|
return furnitureMakeConfigDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-05-18 17:21:34 +08:00
|
|
|
public static Int2ObjectMap<GatherData> getGatherDataMap() {
|
|
|
|
return gatherDataMap;
|
|
|
|
}
|
2022-06-18 14:35:45 +08:00
|
|
|
|
2022-05-20 13:46:00 +08:00
|
|
|
public static Int2ObjectMap<InvestigationMonsterData> getInvestigationMonsterDataMap() {
|
|
|
|
return investigationMonsterDataMap;
|
|
|
|
}
|
2022-06-22 20:27:41 +08:00
|
|
|
|
2022-06-18 19:07:39 +08:00
|
|
|
public static Int2ObjectMap<CityData> getCityDataMap() {
|
|
|
|
return cityDataMap;
|
|
|
|
}
|
|
|
|
|
2022-06-22 20:27:41 +08:00
|
|
|
public static Int2ObjectMap<WeatherData> getWeatherDataMap() {
|
|
|
|
return weatherDataMap;
|
|
|
|
}
|
|
|
|
|
2022-06-24 16:12:52 +08:00
|
|
|
public static Int2ObjectMap<BattlePassMissionData> getBattlePassMissionDataMap() {
|
|
|
|
return battlePassMissionDataMap;
|
2022-06-21 22:18:13 +08:00
|
|
|
}
|
|
|
|
|
2022-06-24 16:12:52 +08:00
|
|
|
public static Int2ObjectMap<BattlePassRewardData> getBattlePassRewardDataMap() {
|
|
|
|
return battlePassRewardDataMap;
|
2022-06-21 22:18:13 +08:00
|
|
|
}
|
2022-07-02 13:43:27 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<CookRecipeData> getCookRecipeDataMap() {
|
|
|
|
return cookRecipeDataMap;
|
|
|
|
}
|
2022-07-02 17:14:43 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<CookBonusData> getCookBonusDataMap() {
|
|
|
|
return cookBonusDataMap;
|
|
|
|
}
|
2022-07-22 18:46:59 +08:00
|
|
|
|
|
|
|
public static Int2ObjectMap<BuffData> getBuffDataMap() {
|
|
|
|
return buffDataMap;
|
|
|
|
}
|
2022-04-17 20:43:07 +08:00
|
|
|
}
|