mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-17 01:15:52 +01:00
Refactor support for codex(aka archive) animal, weapon, reliquary
This commit is contained in:
@@ -64,8 +64,16 @@ public class GameData {
|
||||
|
||||
private static final Int2ObjectMap<SceneData> sceneDataMap = new Int2ObjectLinkedOpenHashMap<>();
|
||||
private static final Int2ObjectMap<FetterData> fetterDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<CodexQuest> codexQuestMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<CodexQuest> codexQuestIdMap = new Int2ObjectOpenHashMap<>();
|
||||
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<>();
|
||||
private static final Int2ObjectMap<FetterCharacterCardData> fetterCharacterCardDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<RewardData> rewardDataMap = new Int2ObjectOpenHashMap<>();
|
||||
private static final Int2ObjectMap<WorldLevelData> worldLevelDataMap = new Int2ObjectOpenHashMap<>();
|
||||
@@ -294,9 +302,17 @@ public class GameData {
|
||||
return fetters;
|
||||
}
|
||||
|
||||
public static Int2ObjectMap<CodexQuest> getCodexQuestMap(){return codexQuestMap;}
|
||||
public static Int2ObjectMap<CodexQuestData> getCodexQuestDataIdMap(){return codexQuestDataIdMap;}
|
||||
|
||||
public static Int2ObjectMap<CodexQuest> getCodexQuestIdMap(){return codexQuestIdMap;}
|
||||
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;}
|
||||
|
||||
public static Int2ObjectMap<WorldLevelData> getWorldLevelDataMap() {
|
||||
return worldLevelDataMap;
|
||||
|
||||
39
src/main/java/emu/grasscutter/data/def/CodexAnimalData.java
Normal file
39
src/main/java/emu/grasscutter/data/def/CodexAnimalData.java
Normal file
@@ -0,0 +1,39 @@
|
||||
package emu.grasscutter.data.def;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
|
||||
@ResourceType(name = {"AnimalCodexExcelConfigData.json"})
|
||||
public class CodexAnimalData extends GameResource {
|
||||
private int Id;
|
||||
private String Type;
|
||||
private int DescribeId;
|
||||
private int SortOrder;
|
||||
private CodexAnimalUnlockCondition BAINKHIIMJE;
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return Id;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return Type;
|
||||
}
|
||||
|
||||
public int getDescribeId() {
|
||||
return DescribeId;
|
||||
}
|
||||
|
||||
public int getSortOrder() {
|
||||
return SortOrder;
|
||||
}
|
||||
|
||||
public CodexAnimalUnlockCondition getUnlockCondition() {
|
||||
return BAINKHIIMJE;
|
||||
}
|
||||
|
||||
public enum CodexAnimalUnlockCondition {
|
||||
CODEX_COUNT_TYPE_KILL,
|
||||
CODEX_COUNT_TYPE_CAPTURE
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package emu.grasscutter.data.def;
|
||||
|
||||
import emu.grasscutter.data.GameData;
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
|
||||
@ResourceType(name = {"MaterialCodexExcelConfigData.json"})
|
||||
public class CodexMaterialData extends GameResource {
|
||||
private int Id;
|
||||
private int MaterialId;
|
||||
private int SortOrder;
|
||||
|
||||
public int getSortOrder() {
|
||||
return SortOrder;
|
||||
}
|
||||
|
||||
public int getMaterialId() {
|
||||
return MaterialId;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return Id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
GameData.getCodexMaterialDataIdMap().put(this.getMaterialId(), this);
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,11 @@
|
||||
package emu.grasscutter.data.def;
|
||||
|
||||
import emu.grasscutter.Grasscutter;
|
||||
import emu.grasscutter.data.GameData;
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
|
||||
@ResourceType(name = {"QuestCodexExcelConfigData.json"}, loadPriority = ResourceType.LoadPriority.HIGH)
|
||||
public class CodexQuest extends GameResource {
|
||||
@ResourceType(name = {"QuestCodexExcelConfigData.json"})
|
||||
public class CodexQuestData extends GameResource {
|
||||
private int Id;
|
||||
private int ParentQuestId;
|
||||
private int ChapterId;
|
||||
@@ -36,7 +35,7 @@ public class CodexQuest extends GameResource {
|
||||
@Override
|
||||
public void onLoad() {
|
||||
if(!this.getIsDisuse()) {
|
||||
GameData.getCodexQuestIdMap().put(this.getParentQuestId(), this);
|
||||
GameData.getCodexQuestDataIdMap().put(this.getParentQuestId(), this);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
package emu.grasscutter.data.def;
|
||||
|
||||
import emu.grasscutter.data.GameData;
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
|
||||
@ResourceType(name = {"ReliquaryCodexExcelConfigData.json"})
|
||||
public class CodexReliquaryData extends GameResource {
|
||||
private int Id;
|
||||
private int SuitId;
|
||||
private int Level;
|
||||
private int CupId;
|
||||
private int LeatherId;
|
||||
private int CapId;
|
||||
private int FlowerId;
|
||||
private int SandId;
|
||||
private int SortOrder;
|
||||
|
||||
public int getSortOrder() {
|
||||
return SortOrder;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return Id;
|
||||
}
|
||||
|
||||
public int getSuitId() {
|
||||
return SuitId;
|
||||
}
|
||||
|
||||
public int getLevel() {
|
||||
return Level;
|
||||
}
|
||||
|
||||
public int getCupId() {
|
||||
return CupId;
|
||||
}
|
||||
|
||||
public int getLeatherId() {
|
||||
return LeatherId;
|
||||
}
|
||||
|
||||
public int getCapId() {
|
||||
return CapId;
|
||||
}
|
||||
|
||||
public int getFlowerId() {
|
||||
return FlowerId;
|
||||
}
|
||||
|
||||
public int getSandId() {
|
||||
return SandId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
GameData.getcodexReliquaryArrayList().add(this);
|
||||
GameData.getcodexReliquaryIdMap().put(getSuitId(), this);
|
||||
}
|
||||
}
|
||||
29
src/main/java/emu/grasscutter/data/def/CodexWeaponData.java
Normal file
29
src/main/java/emu/grasscutter/data/def/CodexWeaponData.java
Normal file
@@ -0,0 +1,29 @@
|
||||
package emu.grasscutter.data.def;
|
||||
|
||||
import emu.grasscutter.data.GameData;
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
|
||||
@ResourceType(name = {"WeaponCodexExcelConfigData.json"})
|
||||
public class CodexWeaponData extends GameResource {
|
||||
private int Id;
|
||||
private int WeaponId;
|
||||
private int SortOrder;
|
||||
|
||||
public int getSortOrder() {
|
||||
return SortOrder;
|
||||
}
|
||||
|
||||
public int getWeaponId() {
|
||||
return WeaponId;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return Id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
GameData.getCodexWeaponDataIdMap().put(this.getWeaponId(), this);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user