Run IntelliJ IDEA code formatter

This commit is contained in:
KingRainbow44
2023-03-31 17:19:26 -04:00
Unverified
parent 5bf5fb07a2
commit 15e2f3ca34
917 changed files with 30025 additions and 22441 deletions
@@ -18,7 +18,7 @@ public class AchievementData extends GameResource {
private static final AtomicBoolean isDivided = new AtomicBoolean();
private int goalId;
private int preStageAchievementId;
private Set<Integer> groupAchievementIdList = new HashSet<>();
private final Set<Integer> groupAchievementIdList = new HashSet<>();
private boolean isParent;
private long titleTextMapHash;
private long descTextMapHash;
@@ -29,26 +29,6 @@ public class AchievementData extends GameResource {
private int progress;
private boolean isDisuse;
public boolean hasPreStageAchievement() {
return this.preStageAchievementId != 0;
}
public boolean hasGroupAchievements() {
return !this.groupAchievementIdList.isEmpty();
}
public boolean isUsed() {
return !this.isDisuse;
}
public Set<Integer> getGroupAchievementIdList() {
return this.groupAchievementIdList.stream().collect(Collectors.toUnmodifiableSet());
}
public Set<Integer> getExcludedGroupAchievementIdList() {
return this.groupAchievementIdList.stream().filter(integer -> integer != this.getId()).collect(Collectors.toUnmodifiableSet());
}
public static void divideIntoGroups() {
if (isDivided.get()) {
return;
@@ -93,4 +73,24 @@ public class AchievementData extends GameResource {
map.values().stream().filter(a -> !a.hasGroupAchievements() && a.isUsed()).forEach(a -> a.isParent = true);
}
public boolean hasPreStageAchievement() {
return this.preStageAchievementId != 0;
}
public boolean hasGroupAchievements() {
return !this.groupAchievementIdList.isEmpty();
}
public boolean isUsed() {
return !this.isDisuse;
}
public Set<Integer> getGroupAchievementIdList() {
return this.groupAchievementIdList.stream().collect(Collectors.toUnmodifiableSet());
}
public Set<Integer> getExcludedGroupAchievementIdList() {
return this.groupAchievementIdList.stream().filter(integer -> integer != this.getId()).collect(Collectors.toUnmodifiableSet());
}
}
@@ -24,6 +24,7 @@ public class ActivityData extends GameResource {
public int getId() {
return this.activityId;
}
@Override
public void onLoad() {
this.watcherDataList = watcherId.stream().map(item -> GameData.getActivityWatcherDataMap().get(item.intValue()))
@@ -27,7 +27,7 @@ public class ActivityWatcherData extends GameResource {
@Getter
@FieldDefaults(level = AccessLevel.PRIVATE)
public static class WatcherTrigger{
public static class WatcherTrigger {
String triggerType;
List<String> paramList;
@@ -1,36 +1,36 @@
package emu.grasscutter.data.excels;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.CurveInfo;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
@ResourceType(name = "AvatarCurveExcelConfigData.json")
public class AvatarCurveData extends GameResource {
private int level;
private CurveInfo[] curveInfos;
private int level;
private CurveInfo[] curveInfos;
private Map<String, Float> curveInfoMap;
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public Map<String, Float> getCurveInfos() {
return curveInfoMap;
}
@Override
public void onLoad() {
this.curveInfoMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfoMap.put(info.getType(), info.getValue()));
}
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public Map<String, Float> getCurveInfos() {
return curveInfoMap;
}
@Override
public void onLoad() {
this.curveInfoMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfoMap.put(info.getType(), info.getValue()));
}
}
@@ -1,7 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
@@ -16,26 +14,43 @@ import it.unimi.dsi.fastutil.ints.IntArrayList;
import it.unimi.dsi.fastutil.ints.IntList;
import lombok.Getter;
import java.util.List;
@ResourceType(name = "AvatarExcelConfigData.json", loadPriority = LoadPriority.LOW)
public class AvatarData extends GameResource {
private String iconName;
@Getter private String bodyType;
@Getter private String qualityType;
@Getter private int chargeEfficiency;
@Getter private int initialWeapon;
@Getter private WeaponType weaponType;
@Getter private String imageName;
@Getter private int avatarPromoteId;
@Getter private String cutsceneShow;
@Getter private int skillDepotId;
@Getter private int staminaRecoverSpeed;
@Getter private List<String> candSkillDepotIds;
@Getter private String avatarIdentityType;
@Getter private List<Integer> avatarPromoteRewardLevelList;
@Getter private List<Integer> avatarPromoteRewardIdList;
@Getter
private String bodyType;
@Getter
private String qualityType;
@Getter
private int chargeEfficiency;
@Getter
private int initialWeapon;
@Getter
private WeaponType weaponType;
@Getter
private String imageName;
@Getter
private int avatarPromoteId;
@Getter
private String cutsceneShow;
@Getter
private int skillDepotId;
@Getter
private int staminaRecoverSpeed;
@Getter
private List<String> candSkillDepotIds;
@Getter
private String avatarIdentityType;
@Getter
private List<Integer> avatarPromoteRewardLevelList;
@Getter
private List<Integer> avatarPromoteRewardIdList;
@Getter private long nameTextMapHash;
@Getter
private long nameTextMapHash;
private float hpBase;
private float attackBase;
@@ -48,18 +63,24 @@ public class AvatarData extends GameResource {
private int id;
// Transient
@Getter private String name;
@Getter
private String name;
private Int2ObjectMap<String> growthCurveMap;
private float[] hpGrowthCurve;
private float[] attackGrowthCurve;
private float[] defenseGrowthCurve;
@Getter private AvatarSkillDepotData skillDepot;
@Getter private IntList abilities;
@Getter
private AvatarSkillDepotData skillDepot;
@Getter
private IntList abilities;
@Getter private List<Integer> fetters;
@Getter private int nameCardRewardId;
@Getter private int nameCardId;
@Getter
private List<Integer> fetters;
@Getter
private int nameCardRewardId;
@Getter
private int nameCardId;
public float getBaseHp(int level) {
try {
@@ -166,4 +187,3 @@ public class AvatarData extends GameResource {
}
}
}
@@ -5,19 +5,19 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "AvatarFettersLevelExcelConfigData.json")
public class AvatarFetterLevelData extends GameResource {
private int fetterLevel;
private int needExp;
@Override
public int getId() {
return this.fetterLevel;
}
public int getLevel() {
return fetterLevel;
}
public int getExp() {
return needExp;
}
private int fetterLevel;
private int needExp;
@Override
public int getId() {
return this.fetterLevel;
}
public int getLevel() {
return fetterLevel;
}
public int getExp() {
return needExp;
}
}
@@ -5,20 +5,20 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "AvatarFlycloakExcelConfigData.json")
public class AvatarFlycloakData extends GameResource {
private int flycloakId;
private int flycloakId;
private long nameTextMapHash;
@Override
public int getId() {
return this.flycloakId;
}
@Override
public int getId() {
return this.flycloakId;
}
public long getNameTextMapHash() {
return nameTextMapHash;
}
public long getNameTextMapHash() {
return nameTextMapHash;
}
@Override
public void onLoad() {
@Override
public void onLoad() {
}
}
}
@@ -5,19 +5,19 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "AvatarLevelExcelConfigData.json")
public class AvatarLevelData extends GameResource {
private int level;
private int exp;
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public int getExp() {
return exp;
}
private int level;
private int exp;
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public int getExp() {
return exp;
}
}
@@ -1,74 +1,75 @@
package emu.grasscutter.data.excels;
import java.util.ArrayList;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.FightPropData;
import emu.grasscutter.data.common.ItemParamData;
import java.util.ArrayList;
@ResourceType(name = "AvatarPromoteExcelConfigData.json")
public class AvatarPromoteData extends GameResource {
private int avatarPromoteId;
private int promoteLevel;
private int scoinCost;
private ItemParamData[] costItems;
private int unlockMaxLevel;
private FightPropData[] addProps;
private int requiredPlayerLevel;
@Override
public int getId() {
return (avatarPromoteId << 8) + promoteLevel;
}
public int getAvatarPromoteId() {
return avatarPromoteId;
}
private int avatarPromoteId;
private int promoteLevel;
private int scoinCost;
private ItemParamData[] costItems;
private int unlockMaxLevel;
private FightPropData[] addProps;
private int requiredPlayerLevel;
public int getPromoteLevel() {
return promoteLevel;
}
@Override
public int getId() {
return (avatarPromoteId << 8) + promoteLevel;
}
public ItemParamData[] getCostItems() {
return costItems;
}
public int getAvatarPromoteId() {
return avatarPromoteId;
}
public int getCoinCost() {
return scoinCost;
}
public int getPromoteLevel() {
return promoteLevel;
}
public FightPropData[] getAddProps() {
return addProps;
}
public ItemParamData[] getCostItems() {
return costItems;
}
public int getUnlockMaxLevel() {
return unlockMaxLevel;
}
public int getCoinCost() {
return scoinCost;
}
public int getRequiredPlayerLevel() {
return requiredPlayerLevel;
}
public FightPropData[] getAddProps() {
return addProps;
}
@Override
public void onLoad() {
// Trim item params
ArrayList<ItemParamData> trim = new ArrayList<>(getAddProps().length);
for (ItemParamData itemParam : getCostItems()) {
if (itemParam.getId() == 0) {
continue;
}
trim.add(itemParam);
}
this.costItems = trim.toArray(new ItemParamData[trim.size()]);
// Trim fight prop data (just in case)
ArrayList<FightPropData> parsed = new ArrayList<>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null && prop.getValue() != 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
public int getUnlockMaxLevel() {
return unlockMaxLevel;
}
public int getRequiredPlayerLevel() {
return requiredPlayerLevel;
}
@Override
public void onLoad() {
// Trim item params
ArrayList<ItemParamData> trim = new ArrayList<>(getAddProps().length);
for (ItemParamData itemParam : getCostItems()) {
if (itemParam.getId() == 0) {
continue;
}
trim.add(itemParam);
}
this.costItems = trim.toArray(new ItemParamData[trim.size()]);
// Trim fight prop data (just in case)
ArrayList<FightPropData> parsed = new ArrayList<>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null && prop.getValue() != 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
}
@@ -1,9 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.List;
import java.util.Optional;
import java.util.stream.IntStream;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.GameDepot;
import emu.grasscutter.data.GameResource;
@@ -17,6 +13,10 @@ import it.unimi.dsi.fastutil.ints.IntArrayList;
import it.unimi.dsi.fastutil.ints.IntList;
import lombok.Getter;
import java.util.List;
import java.util.Optional;
import java.util.stream.IntStream;
@ResourceType(name = "AvatarSkillDepotExcelConfigData.json", loadPriority = LoadPriority.HIGH)
@Getter
public class AvatarSkillDepotData extends GameResource {
@@ -73,14 +73,14 @@ public class AvatarSkillDepotData extends GameResource {
.ifPresent(itemId -> this.talentCostItemId = itemId);
}
public IntStream getSkillsAndEnergySkill() {
return IntStream.concat(this.skills.stream().mapToInt(i -> i), IntStream.of(this.energySkill))
.filter(skillId -> skillId > 0);
}
@Getter
public static class InherentProudSkillOpens {
private int proudSkillGroupId;
private int needAvatarPromoteLevel;
}
public IntStream getSkillsAndEnergySkill() {
return IntStream.concat(this.skills.stream().mapToInt(i -> i), IntStream.of(this.energySkill))
.filter(skillId -> skillId > 0);
}
}
@@ -1,15 +1,16 @@
package emu.grasscutter.data.excels;
import java.util.ArrayList;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.FightPropData;
import java.util.ArrayList;
@ResourceType(name = "AvatarTalentExcelConfigData.json", loadPriority = LoadPriority.HIGHEST)
public class AvatarTalentData extends GameResource {
private int talentId;
private int prevTalent;
private int talentId;
private int prevTalent;
private long nameTextMapHash;
private String icon;
private int mainCostItemId;
@@ -19,51 +20,51 @@ public class AvatarTalentData extends GameResource {
private float[] paramList;
@Override
public int getId(){
public int getId() {
return this.talentId;
}
public int PrevTalent() {
return prevTalent;
}
public long getNameTextMapHash() {
return nameTextMapHash;
}
return prevTalent;
}
public String getIcon() {
return icon;
}
public long getNameTextMapHash() {
return nameTextMapHash;
}
public int getMainCostItemId() {
return mainCostItemId;
}
public String getIcon() {
return icon;
}
public int getMainCostItemCount() {
return mainCostItemCount;
}
public int getMainCostItemId() {
return mainCostItemId;
}
public String getOpenConfig() {
return openConfig;
}
public int getMainCostItemCount() {
return mainCostItemCount;
}
public FightPropData[] getAddProps() {
return addProps;
}
public String getOpenConfig() {
return openConfig;
}
public float[] getParamList() {
return paramList;
}
public FightPropData[] getAddProps() {
return addProps;
}
@Override
public void onLoad() {
ArrayList<FightPropData> parsed = new ArrayList<FightPropData>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null || prop.getValue() == 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
public float[] getParamList() {
return paramList;
}
@Override
public void onLoad() {
ArrayList<FightPropData> parsed = new ArrayList<FightPropData>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null || prop.getValue() == 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
}
@@ -1,9 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.Arrays;
import java.util.Set;
import java.util.stream.Collectors;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.game.props.BattlePassMissionRefreshType;
@@ -11,6 +7,10 @@ import emu.grasscutter.game.props.WatcherTriggerType;
import emu.grasscutter.net.proto.BattlePassMissionOuterClass.BattlePassMission.MissionStatus;
import lombok.Getter;
import java.util.Arrays;
import java.util.Set;
import java.util.stream.Collectors;
@ResourceType(name = {"BattlePassMissionExcelConfigData.json"})
@Getter
public class BattlePassMissionData extends GameResource {
@@ -48,12 +48,6 @@ public class BattlePassMissionData extends GameResource {
}
}
@Getter
public static class TriggerConfig {
private WatcherTriggerType triggerType;
private String[] paramList;
}
public emu.grasscutter.net.proto.BattlePassMissionOuterClass.BattlePassMission toProto() {
var protoBuilder = emu.grasscutter.net.proto.BattlePassMissionOuterClass.BattlePassMission.newBuilder();
@@ -66,4 +60,10 @@ public class BattlePassMissionData extends GameResource {
return protoBuilder.build();
}
@Getter
public static class TriggerConfig {
private WatcherTriggerType triggerType;
private String[] paramList;
}
}
@@ -3,7 +3,6 @@ package emu.grasscutter.data.excels;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import lombok.Getter;
import lombok.Setter;
import java.util.List;
@@ -1,11 +1,11 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import lombok.Getter;
import java.util.List;
@ResourceType(name = "BlossomRefreshExcelConfigData.json")
@Getter
public class BlossomRefreshExcelConfigData extends GameResource {
@@ -15,16 +15,15 @@ import java.util.Map;
@Setter // TODO: remove on next API break
@FieldDefaults(level = AccessLevel.PRIVATE)
public class ChapterData extends GameResource {
// Why public? TODO: privatise next API break
public static final Map<Integer, ChapterData> beginQuestChapterMap = new HashMap<>();
public static final Map<Integer, ChapterData> endQuestChapterMap = new HashMap<>();
@Getter(onMethod_ = @Override)
int id;
int beginQuestId;
int endQuestId;
int needPlayerLevel;
// Why public? TODO: privatise next API break
public static final Map<Integer, ChapterData> beginQuestChapterMap = new HashMap<>();
public static final Map<Integer, ChapterData> endQuestChapterMap = new HashMap<>();
@Override
public void onLoad() {
beginQuestChapterMap.put(beginQuestId, this);
@@ -1,7 +1,6 @@
package emu.grasscutter.data.excels;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import lombok.Getter;
@@ -14,7 +13,7 @@ public class CodexAnimalData extends GameResource {
private String type;
private int describeId;
private int sortOrder;
@SerializedName(value="countType", alternate={"OCCLHPBCDGL"})
@SerializedName(value = "countType", alternate = {"OCCLHPBCDGL"})
private CountType countType;
public enum CountType {
@@ -34,7 +34,7 @@ public class CodexQuestData extends GameResource {
@Override
public void onLoad() {
if(!this.getIsDisuse()) {
if (!this.getIsDisuse()) {
GameData.getCodexQuestDataIdMap().put(this.getParentQuestId(), this);
}
}
@@ -9,15 +9,24 @@ import lombok.Getter;
@ResourceType(name = {"ReliquaryCodexExcelConfigData.json"})
public class CodexReliquaryData extends GameResource {
@Getter private int Id;
@Getter private int suitId;
@Getter private int level;
@Getter private int cupId;
@Getter private int leatherId;
@Getter private int capId;
@Getter private int flowerId;
@Getter private int sandId;
@Getter private int sortOrder;
@Getter
private int Id;
@Getter
private int suitId;
@Getter
private int level;
@Getter
private int cupId;
@Getter
private int leatherId;
@Getter
private int capId;
@Getter
private int flowerId;
@Getter
private int sandId;
@Getter
private int sortOrder;
private transient IntCollection ids;
public boolean containsId(int id) {
@@ -35,11 +44,11 @@ public class CodexReliquaryData extends GameResource {
@Override
public void onLoad() {
// Normalize all itemIds to the 0-substat form
cupId = (cupId/10) * 10;
leatherId = (leatherId/10) * 10;
capId = (capId/10) * 10;
flowerId = (flowerId/10) * 10;
sandId = (sandId/10) * 10;
cupId = (cupId / 10) * 10;
leatherId = (leatherId / 10) * 10;
capId = (capId / 10) * 10;
flowerId = (flowerId / 10) * 10;
sandId = (sandId / 10) * 10;
GameData.getCodexReliquaryArrayList().add(this);
GameData.getCodexReliquaryDataIdMap().put(getSuitId(), this);
@@ -54,7 +54,7 @@ public class CombineData extends GameResource {
public int getSubCombineType() {
return subCombineType;
}
public int getResultItemId() {
return resultItemId;
}
@@ -80,4 +80,3 @@ public class CombineData extends GameResource {
}
}
@@ -7,7 +7,7 @@ import lombok.Getter;
import java.util.List;
@ResourceType(name = {"CompoundExcelConfigData.json"},loadPriority = ResourceType.LoadPriority.LOW)
@ResourceType(name = {"CompoundExcelConfigData.json"}, loadPriority = ResourceType.LoadPriority.LOW)
@Getter
public class CompoundData extends GameResource {
@Getter(onMethod_ = @Override)
@@ -1,11 +1,8 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.ItemParamData;
@ResourceType(name = {"CookBonusExcelConfigData.json"}, loadPriority = LoadPriority.LOW)
public class CookBonusData extends GameResource {
@@ -15,9 +12,9 @@ public class CookBonusData extends GameResource {
private int[] complexParamVec;
@Override
public int getId() {
return this.avatarId;
}
public int getId() {
return this.avatarId;
}
public int getAvatarId() {
return avatarId;
@@ -1,13 +1,13 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.ItemParamData;
import lombok.Getter;
import java.util.List;
@ResourceType(name = {"CookRecipeExcelConfigData.json"}, loadPriority = LoadPriority.LOW)
@Getter
public class CookRecipeData extends GameResource {
@@ -1,16 +1,17 @@
package emu.grasscutter.data.excels;
import java.util.Calendar;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import lombok.Getter;
import java.util.Calendar;
@ResourceType(name = "DailyDungeonConfigData.json")
public class DailyDungeonData extends GameResource {
private static final int[] empty = new int[0];
private final Int2ObjectMap<int[]> map;
@Getter(onMethod_ = @Override)
private int id;
private int[] monday;
@@ -21,9 +22,6 @@ public class DailyDungeonData extends GameResource {
private int[] saturday;
private int[] sunday;
private static final int[] empty = new int[0];
private final Int2ObjectMap<int[]> map;
public DailyDungeonData() {
this.map = new Int2ObjectOpenHashMap<>();
}
@@ -9,17 +9,23 @@ import lombok.Getter;
public class DungeonData extends GameResource {
@Getter(onMethod_ = @Override)
private int id;
@Getter private int sceneId;
@Getter private int showLevel;
@Getter
private int sceneId;
@Getter
private int showLevel;
private int passRewardPreviewID;
private String involveType; // TODO enum
private RewardPreviewData previewData;
@Getter private int statueCostID;
@Getter private int statueCostCount;
@Getter
private int statueCostID;
@Getter
private int statueCostCount;
public RewardPreviewData getRewardPreview() {return previewData;}
public RewardPreviewData getRewardPreview() {
return previewData;
}
@Override
public void onLoad() {
@@ -1,11 +1,11 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.ItemParamData;
import java.util.List;
@ResourceType(name = "EnvAnimalGatherExcelConfigData.json", loadPriority = ResourceType.LoadPriority.LOW)
public class EnvAnimalGatherConfigData extends GameResource {
private int animalId;
@@ -1,10 +1,11 @@
package emu.grasscutter.data.excels;
import java.util.ArrayList;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.FightPropData;
import java.util.ArrayList;
@ResourceType(name = "EquipAffixExcelConfigData.json")
public class EquipAffixData extends GameResource {
@@ -10,9 +10,9 @@ public class FetterCharacterCardData extends GameResource {
private int rewardId;
@Override
public int getId() {
return avatarId;
}
public int getId() {
return avatarId;
}
public int getRewardId() {
return rewardId;
@@ -1,12 +1,12 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.OpenCondData;
import java.util.List;
@ResourceType(name = {"FetterInfoExcelConfigData.json", "FettersExcelConfigData.json", "FetterStoryExcelConfigData.json", "PhotographExpressionExcelConfigData.json", "PhotographPosenameExcelConfigData.json"}, loadPriority = LoadPriority.HIGHEST)
public class FetterData extends GameResource {
private int avatarId;
@@ -14,9 +14,9 @@ public class FetterData extends GameResource {
private List<OpenCondData> openCond;
@Override
public int getId() {
return fetterId;
}
public int getId() {
return fetterId;
}
public int getAvatarId() {
return avatarId;
@@ -1,13 +1,13 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.ItemParamData;
import lombok.Getter;
import java.util.List;
@ResourceType(name = {"ForgeExcelConfigData.json"}, loadPriority = LoadPriority.HIGHEST)
@Getter
public class ForgeData extends GameResource {
@@ -31,7 +31,7 @@ public class FurnitureMakeConfigData extends GameResource {
@Override
public void onLoad() {
this.materialItems = materialItems.stream()
.filter(x -> x.getId() > 0)
.toList();
.filter(x -> x.getId() > 0)
.toList();
}
}
@@ -5,45 +5,45 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "GatherExcelConfigData.json")
public class GatherData extends GameResource {
private int pointType;
private int id;
private int gadgetId;
private int itemId;
private int cd; // Probably hours
private boolean isForbidGuest;
private boolean initDisableInteract;
@Override
public int getId() {
return this.pointType;
}
private int pointType;
private int id;
private int gadgetId;
private int itemId;
private int cd; // Probably hours
private boolean isForbidGuest;
private boolean initDisableInteract;
public int getGatherId() {
return id;
}
@Override
public int getId() {
return this.pointType;
}
public int getGadgetId() {
return gadgetId;
}
public int getGatherId() {
return id;
}
public int getItemId() {
return itemId;
}
public int getGadgetId() {
return gadgetId;
}
public int getCd() {
return cd;
}
public int getItemId() {
return itemId;
}
public boolean isForbidGuest() {
return isForbidGuest;
}
public int getCd() {
return cd;
}
public boolean initDisableInteract() {
return initDisableInteract;
}
public boolean isForbidGuest() {
return isForbidGuest;
}
@Override
public void onLoad() {
public boolean initDisableInteract() {
return initDisableInteract;
}
}
@Override
public void onLoad() {
}
}
@@ -1,33 +1,35 @@
package emu.grasscutter.data.excels;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.ItemUseData;
import emu.grasscutter.game.inventory.*;
import emu.grasscutter.game.inventory.EquipType;
import emu.grasscutter.game.inventory.ItemType;
import emu.grasscutter.game.inventory.MaterialType;
import emu.grasscutter.game.props.FightProperty;
import emu.grasscutter.game.props.ItemUseAction.ItemUseAction;
import emu.grasscutter.game.props.ItemUseOp;
import emu.grasscutter.game.props.ItemUseTarget;
import emu.grasscutter.game.props.ItemUseAction.ItemUseAction;
import it.unimi.dsi.fastutil.ints.IntOpenHashSet;
import it.unimi.dsi.fastutil.ints.IntSet;
import lombok.Getter;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@ResourceType(name = {"MaterialExcelConfigData.json",
"WeaponExcelConfigData.json",
"ReliquaryExcelConfigData.json",
"HomeWorldFurnitureExcelConfigData.json"
"WeaponExcelConfigData.json",
"ReliquaryExcelConfigData.json",
"HomeWorldFurnitureExcelConfigData.json"
})
@Getter
public class ItemData extends GameResource {
// Main
@Getter(onMethod_ = @Override)
private int id;
private int stackLimit = 1;
private final int stackLimit = 1;
private int maxUseCount;
private int rankLevel;
private String effectName;
@@ -39,7 +41,7 @@ public class ItemData extends GameResource {
private int[] destroyReturnMaterialCount;
// Enums
private ItemType itemType = ItemType.ITEM_NONE;
private final ItemType itemType = ItemType.ITEM_NONE;
private MaterialType materialType = MaterialType.MATERIAL_NONE;
private EquipType equipType = EquipType.EQUIP_NONE;
private String effectType;
@@ -50,10 +52,10 @@ public class ItemData extends GameResource {
private int[] satiationParams;
// Usable item
private ItemUseTarget useTarget = ItemUseTarget.ITEM_USE_TARGET_NONE;
private final ItemUseTarget useTarget = ItemUseTarget.ITEM_USE_TARGET_NONE;
private List<ItemUseData> itemUse;
private List<ItemUseAction> itemUseActions;
private boolean useOnGain = false;
private final boolean useOnGain = false;
// Relic
private int mainPropDepotId;
@@ -82,7 +84,7 @@ public class ItemData extends GameResource {
private List<Integer> furnType;
private List<Integer> furnitureGadgetID;
@SerializedName(value="roomSceneId", alternate={"BMEPAMCNABE", "DANFGGLKLNO", "JFDLJGDFIGL", "OHIANNAEEAK", "MFGACDIOHGF"})
@SerializedName(value = "roomSceneId", alternate = {"BMEPAMCNABE", "DANFGGLKLNO", "JFDLJGDFIGL", "OHIANNAEEAK", "MFGACDIOHGF"})
private int roomSceneId;
// Custom
@@ -128,10 +130,10 @@ public class ItemData extends GameResource {
if (this.itemUse != null && !this.itemUse.isEmpty()) {
this.itemUseActions = this.itemUse.stream()
.filter(x -> x.getUseOp() != ItemUseOp.ITEM_USE_NONE)
.map(ItemUseAction::fromItemUseData)
.filter(Objects::nonNull)
.toList();
.filter(x -> x.getUseOp() != ItemUseOp.ITEM_USE_NONE)
.map(ItemUseAction::fromItemUseData)
.filter(Objects::nonNull)
.toList();
}
}
@@ -1,32 +1,32 @@
package emu.grasscutter.data.excels;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.CurveInfo;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
@ResourceType(name = "MonsterCurveExcelConfigData.json")
public class MonsterCurveData extends GameResource {
private int level;
private int level;
private CurveInfo[] curveInfos;
private Map<String, Float> curveInfoMap;
@Override
public int getId() {
return level;
}
public float getMultByProp(String fightProp) {
return curveInfoMap.getOrDefault(fightProp, 1f);
}
@Override
public void onLoad() {
this.curveInfoMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfoMap.put(info.getType(), info.getValue()));
}
private Map<String, Float> curveInfoMap;
@Override
public int getId() {
return level;
}
public float getMultByProp(String fightProp) {
return curveInfoMap.getOrDefault(fightProp, 1f);
}
@Override
public void onLoad() {
this.curveInfoMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfoMap.put(info.getType(), info.getValue()));
}
}
@@ -1,10 +1,6 @@
package emu.grasscutter.data.excels;
import java.util.List;
import java.util.Set;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameData;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
@@ -14,6 +10,9 @@ import emu.grasscutter.game.props.FightProperty;
import emu.grasscutter.game.props.MonsterType;
import lombok.Getter;
import java.util.List;
import java.util.Set;
@ResourceType(name = "MonsterExcelConfigData.json", loadPriority = LoadPriority.LOW)
@Getter
public class MonsterData extends GameResource {
@@ -12,24 +12,14 @@ import java.util.List;
public class OpenStateData extends GameResource {
@Getter(onMethod_ = @Override)
private int id;
@Getter private boolean defaultState;
@Getter private boolean allowClientOpen;
@Getter private int systemOpenUiId;
@Getter private List<OpenStateCond> cond;
public static class OpenStateCond {
@Getter private OpenStateCondType condType;
@Getter private int param;
@Getter private int param2;
}
public static enum OpenStateCondType {
OPEN_STATE_COND_PLAYER_LEVEL,
OPEN_STATE_COND_QUEST,
OPEN_STATE_OFFERING_LEVEL,
OPEN_STATE_CITY_REPUTATION_LEVEL,
OPEN_STATE_COND_PARENT_QUEST;
}
@Getter
private boolean defaultState;
@Getter
private boolean allowClientOpen;
@Getter
private int systemOpenUiId;
@Getter
private List<OpenStateCond> cond;
@Override
public void onLoad() {
@@ -43,6 +33,23 @@ public class OpenStateData extends GameResource {
this.cond = new ArrayList<>();
}
}
public enum OpenStateCondType {
OPEN_STATE_COND_PLAYER_LEVEL,
OPEN_STATE_COND_QUEST,
OPEN_STATE_OFFERING_LEVEL,
OPEN_STATE_CITY_REPUTATION_LEVEL,
OPEN_STATE_COND_PARENT_QUEST
}
public static class OpenStateCond {
@Getter
private OpenStateCondType condType;
@Getter
private int param;
@Getter
private int param2;
}
}
/* Open state names for documentation:
@@ -10,7 +10,7 @@ public class PlayerLevelData extends GameResource {
private int level;
private int exp;
private int rewardId;
private int expeditionLimitAdd = 0;
private final int expeditionLimitAdd = 0;
private int unlockWorldLevel;
private long unlockDescTextMapHash;
@@ -1,8 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.ArrayList;
import java.util.List;
import dev.morphia.annotations.Transient;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
@@ -10,23 +7,40 @@ import emu.grasscutter.data.common.FightPropData;
import emu.grasscutter.data.common.ItemParamData;
import lombok.Getter;
import java.util.ArrayList;
import java.util.List;
@ResourceType(name = "ProudSkillExcelConfigData.json")
public class ProudSkillData extends GameResource {
private int proudSkillId;
@Getter private int proudSkillGroupId;
@Getter private int level;
@Getter private int coinCost;
@Getter private int breakLevel;
@Getter private int proudSkillType;
@Getter private String openConfig;
@Getter private List<ItemParamData> costItems;
@Getter private List<String> filterConds;
@Getter private List<String> lifeEffectParams;
@Getter private FightPropData[] addProps;
@Getter private float[] paramList;
@Getter private long[] paramDescList;
@Getter private long nameTextMapHash;
@Transient private Iterable<ItemParamData> totalCostItems;
@Getter
private int proudSkillGroupId;
@Getter
private int level;
@Getter
private int coinCost;
@Getter
private int breakLevel;
@Getter
private int proudSkillType;
@Getter
private String openConfig;
@Getter
private List<ItemParamData> costItems;
@Getter
private List<String> filterConds;
@Getter
private List<String> lifeEffectParams;
@Getter
private FightPropData[] addProps;
@Getter
private float[] paramList;
@Getter
private long[] paramDescList;
@Getter
private long nameTextMapHash;
@Transient
private Iterable<ItemParamData> totalCostItems;
@Override
public int getId() {
@@ -1,8 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.Arrays;
import java.util.List;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
@@ -14,6 +11,8 @@ import lombok.Getter;
import lombok.ToString;
import lombok.experimental.FieldDefaults;
import java.util.List;
@ResourceType(name = "QuestExcelConfigData.json")
@Getter
@ToString
@@ -42,8 +41,11 @@ public class QuestData extends GameResource {
public int getId() {
return subId;
}
//Added getSubId() for clarity
public int getSubId() {return subId;}
public int getSubId() {
return subId;
}
public int getMainId() {
return mainId;
@@ -99,17 +101,6 @@ public class QuestData extends GameResource {
this.failExec = failExec.stream().filter(p -> p.type != null).toList();
}
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
public class QuestExecParam {
@SerializedName("_type")
QuestTrigger type;
@SerializedName("_param")
String[] param;
@SerializedName("_count")
String count;
}
@Data
public static class QuestCondition {
@SerializedName("_type")
@@ -129,4 +120,15 @@ public class QuestData extends GameResource {
private List<String> param;
private int guideScene;
}
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
public class QuestExecParam {
@SerializedName("_type")
QuestTrigger type;
@SerializedName("_param")
String[] param;
@SerializedName("_count")
String count;
}
}
@@ -1,7 +1,6 @@
package emu.grasscutter.data.excels;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.game.props.FightProperty;
@@ -1,7 +1,5 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.game.props.FightProperty;
@@ -9,15 +7,20 @@ import it.unimi.dsi.fastutil.ints.Int2FloatMap;
import it.unimi.dsi.fastutil.ints.Int2FloatOpenHashMap;
import lombok.Getter;
import java.util.List;
@ResourceType(name = "ReliquaryLevelExcelConfigData.json")
public class ReliquaryLevelData extends GameResource {
@Getter(onMethod_ = @Override)
private int id;
private Int2FloatMap propMap;
@Getter private int rank;
@Getter private int level;
@Getter private int exp;
@Getter
private int rank;
@Getter
private int level;
@Getter
private int exp;
private List<RelicLevelProperty> addProps;
public float getPropValue(FightProperty prop) {
@@ -1,7 +1,6 @@
package emu.grasscutter.data.excels;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.game.props.FightProperty;
@@ -1,7 +1,6 @@
package emu.grasscutter.data.excels;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
@@ -10,7 +9,7 @@ public class ReliquarySetData extends GameResource {
private int setId;
private int[] setNeedNum;
@SerializedName(value="equipAffixId", alternate={"EquipAffixId"})
@SerializedName(value = "equipAffixId", alternate = {"EquipAffixId"})
private int equipAffixId;
@Override
@@ -1,20 +1,20 @@
package emu.grasscutter.data.excels;
import java.util.List;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.ItemParamData;
import java.util.List;
@ResourceType(name = "RewardExcelConfigData.json")
public class RewardData extends GameResource {
public int rewardId;
public List<ItemParamData> rewardItemList;
@Override
public int getId() {
return rewardId;
}
public int getId() {
return rewardId;
}
public List<ItemParamData> getRewardItemList() {
return rewardItemList;
@@ -22,6 +22,6 @@ public class RewardData extends GameResource {
@Override
public void onLoad() {
rewardItemList = rewardItemList.stream().filter(i -> i.getId() > 0).toList();
rewardItemList = rewardItemList.stream().filter(i -> i.getId() > 0).toList();
}
}
@@ -1,14 +1,13 @@
package emu.grasscutter.data.excels;
import java.util.Arrays;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import lombok.Getter;
import emu.grasscutter.data.ResourceType.LoadPriority;
import emu.grasscutter.data.common.ItemParamData;
import emu.grasscutter.data.common.ItemParamStringData;
import lombok.Getter;
import java.util.Arrays;
@ResourceType(name = "RewardPreviewExcelConfigData.json", loadPriority = LoadPriority.HIGH)
public class RewardPreviewData extends GameResource {
@@ -25,9 +24,9 @@ public class RewardPreviewData extends GameResource {
public void onLoad() {
if (this.previewItems != null && this.previewItems.length > 0) {
this.previewItemsArray = Arrays.stream(this.previewItems)
.filter(d -> d.getId() > 0 && d.getCount() != null && !d.getCount().isEmpty())
.map(ItemParamStringData::toItemParamData)
.toArray(size -> new ItemParamData[size]);
.filter(d -> d.getId() > 0 && d.getCount() != null && !d.getCount().isEmpty())
.map(ItemParamStringData::toItemParamData)
.toArray(size -> new ItemParamData[size]);
} else {
this.previewItemsArray = new ItemParamData[0];
}
@@ -1,10 +1,8 @@
package emu.grasscutter.data.excels;
import com.google.gson.annotations.SerializedName;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.game.props.SceneType;
import lombok.Getter;
@@ -25,7 +25,7 @@ public class ShopGoodsData extends GameResource {
private int maxPlayerLevel;
private int buyLimit;
@SerializedName(value="subTabId", alternate={"secondarySheetId"})
@SerializedName(value = "subTabId", alternate = {"secondarySheetId"})
private int subTabId;
private String refreshType;
@@ -35,16 +35,16 @@ public class ShopGoodsData extends GameResource {
@Override
public void onLoad() {
if (this.refreshType == null)
this.refreshTypeEnum = ShopInfo.ShopRefreshType.NONE;
else {
this.refreshTypeEnum = switch (this.refreshType) {
case "SHOP_REFRESH_DAILY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_DAILY;
case "SHOP_REFRESH_WEEKLY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_WEEKLY;
case "SHOP_REFRESH_MONTHLY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_MONTHLY;
default -> ShopInfo.ShopRefreshType.NONE;
};
}
if (this.refreshType == null)
this.refreshTypeEnum = ShopInfo.ShopRefreshType.NONE;
else {
this.refreshTypeEnum = switch (this.refreshType) {
case "SHOP_REFRESH_DAILY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_DAILY;
case "SHOP_REFRESH_WEEKLY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_WEEKLY;
case "SHOP_REFRESH_MONTHLY" -> ShopInfo.ShopRefreshType.SHOP_REFRESH_MONTHLY;
default -> ShopInfo.ShopRefreshType.NONE;
};
}
}
@Override
@@ -5,7 +5,7 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "TowerLevelExcelConfigData.json")
public class TowerLevelData extends GameResource {
private int levelId;
private int levelIndex;
private int levelGroupId;
@@ -11,7 +11,7 @@ public class TowerScheduleData extends GameResource {
private List<Integer> entranceFloorId;
private List<ScheduleDetail> schedules;
private int monthlyLevelConfigId;
@Override
public int getId() {
return scheduleId;
@@ -21,8 +21,8 @@ public class TowerScheduleData extends GameResource {
public void onLoad() {
super.onLoad();
this.schedules = this.schedules.stream()
.filter(item -> item.getFloorList().size() > 0)
.toList();
.filter(item -> item.getFloorList().size() > 0)
.toList();
}
public int getScheduleId() {
@@ -36,12 +36,12 @@ public class TowerScheduleData extends GameResource {
public List<ScheduleDetail> getSchedules() {
return schedules;
}
public int getMonthlyLevelConfigId() {
return monthlyLevelConfigId;
}
public static class ScheduleDetail{
public static class ScheduleDetail {
private List<Integer> floorList;
public List<Integer> getFloorList() {
@@ -4,9 +4,11 @@ import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import lombok.Getter;
@ResourceType(name = "TriggerExcelConfigData.json") @Getter
@ResourceType(name = "TriggerExcelConfigData.json")
@Getter
public class TriggerExcelConfigData extends GameResource {
@Getter private int id;
@Getter
private int id;
private int sceneId;
private int groupId;
private String triggerName;
@@ -1,32 +1,32 @@
package emu.grasscutter.data.excels;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.CurveInfo;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Stream;
@ResourceType(name = "WeaponCurveExcelConfigData.json")
public class WeaponCurveData extends GameResource {
private int level;
private int level;
private CurveInfo[] curveInfos;
private Map<String, Float> curveInfosMap;
@Override
public int getId() {
return level;
}
public float getMultByProp(String fightProp) {
return curveInfosMap.getOrDefault(fightProp, 1f);
}
@Override
public void onLoad() {
this.curveInfosMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfosMap.put(info.getType(), info.getValue()));
}
private Map<String, Float> curveInfosMap;
@Override
public int getId() {
return level;
}
public float getMultByProp(String fightProp) {
return curveInfosMap.getOrDefault(fightProp, 1f);
}
@Override
public void onLoad() {
this.curveInfosMap = new HashMap<>();
Stream.of(this.curveInfos).forEach(info -> this.curveInfosMap.put(info.getType(), info.getValue()));
}
}
@@ -5,19 +5,19 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "WeaponLevelExcelConfigData.json")
public class WeaponLevelData extends GameResource {
private int level;
private int[] requiredExps;
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public int[] getRequiredExps() {
return requiredExps;
}
private int level;
private int[] requiredExps;
@Override
public int getId() {
return this.level;
}
public int getLevel() {
return level;
}
public int[] getRequiredExps() {
return requiredExps;
}
}
@@ -1,74 +1,75 @@
package emu.grasscutter.data.excels;
import java.util.ArrayList;
import emu.grasscutter.data.GameResource;
import emu.grasscutter.data.ResourceType;
import emu.grasscutter.data.common.FightPropData;
import emu.grasscutter.data.common.ItemParamData;
import java.util.ArrayList;
@ResourceType(name = "WeaponPromoteExcelConfigData.json")
public class WeaponPromoteData extends GameResource {
private int weaponPromoteId;
private int weaponPromoteId;
private int promoteLevel;
private ItemParamData[] costItems;
private int coinCost;
private FightPropData[] addProps;
private int unlockMaxLevel;
private int requiredPlayerLevel;
@Override
public int getId() {
return (weaponPromoteId << 8) + promoteLevel;
}
public int getWeaponPromoteId() {
return weaponPromoteId;
}
@Override
public int getId() {
return (weaponPromoteId << 8) + promoteLevel;
}
public int getPromoteLevel() {
return promoteLevel;
}
public int getWeaponPromoteId() {
return weaponPromoteId;
}
public ItemParamData[] getCostItems() {
return costItems;
}
public int getPromoteLevel() {
return promoteLevel;
}
public int getCoinCost() {
return coinCost;
}
public ItemParamData[] getCostItems() {
return costItems;
}
public FightPropData[] getAddProps() {
return addProps;
}
public int getCoinCost() {
return coinCost;
}
public int getUnlockMaxLevel() {
return unlockMaxLevel;
}
public FightPropData[] getAddProps() {
return addProps;
}
public int getRequiredPlayerLevel() {
return requiredPlayerLevel;
}
public int getUnlockMaxLevel() {
return unlockMaxLevel;
}
@Override
public void onLoad() {
// Trim item params
ArrayList<ItemParamData> trim = new ArrayList<>(getAddProps().length);
for (ItemParamData itemParam : getCostItems()) {
if (itemParam.getId() == 0) {
continue;
}
trim.add(itemParam);
}
this.costItems = trim.toArray(new ItemParamData[trim.size()]);
// Trim fight prop data
ArrayList<FightPropData> parsed = new ArrayList<>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null && prop.getValue() != 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
public int getRequiredPlayerLevel() {
return requiredPlayerLevel;
}
@Override
public void onLoad() {
// Trim item params
ArrayList<ItemParamData> trim = new ArrayList<>(getAddProps().length);
for (ItemParamData itemParam : getCostItems()) {
if (itemParam.getId() == 0) {
continue;
}
trim.add(itemParam);
}
this.costItems = trim.toArray(new ItemParamData[trim.size()]);
// Trim fight prop data
ArrayList<FightPropData> parsed = new ArrayList<>(getAddProps().length);
for (FightPropData prop : getAddProps()) {
if (prop.getPropType() != null && prop.getValue() != 0f) {
prop.onLoad();
parsed.add(prop);
}
}
this.addProps = parsed.toArray(new FightPropData[parsed.size()]);
}
}
@@ -7,18 +7,29 @@ import lombok.Getter;
@ResourceType(name = "WeatherExcelConfigData.json")
public class WeatherData extends GameResource {
@Getter private int areaID;
@Getter private int weatherAreaId;
@Getter private String maxHeightStr;
@Getter private int gadgetID;
@Getter private boolean isDefaultValid;
@Getter private String templateName;
@Getter private int priority;
@Getter private String profileName;
@Getter private ClimateType defaultClimate;
@Getter private boolean isUseDefault;
@Getter private int sceneID;
@Getter
private int areaID;
@Getter
private int weatherAreaId;
@Getter
private String maxHeightStr;
@Getter
private int gadgetID;
@Getter
private boolean isDefaultValid;
@Getter
private String templateName;
@Getter
private int priority;
@Getter
private String profileName;
@Getter
private ClimateType defaultClimate;
@Getter
private boolean isUseDefault;
@Getter
private int sceneID;
@Override
public int getId() {
return this.areaID;
@@ -6,27 +6,27 @@ import emu.grasscutter.game.props.ElementType;
@ResourceType(name = "WorldAreaConfigData.json")
public class WorldAreaData extends GameResource {
private int ID;
private int AreaID1;
private int AreaID2;
private int SceneID;
private ElementType elementType;
@Override
public int getId() {
return (this.AreaID2 << 16) + this.AreaID1;
}
public int getSceneID() {
return this.SceneID;
}
public ElementType getElementType() {
return this.elementType;
}
private int ID;
private int AreaID1;
private int AreaID2;
private int SceneID;
private ElementType elementType;
@Override
public void onLoad() {
}
@Override
public int getId() {
return (this.AreaID2 << 16) + this.AreaID1;
}
public int getSceneID() {
return this.SceneID;
}
public ElementType getElementType() {
return this.elementType;
}
@Override
public void onLoad() {
}
}
@@ -5,20 +5,20 @@ import emu.grasscutter.data.ResourceType;
@ResourceType(name = "WorldLevelExcelConfigData.json")
public class WorldLevelData extends GameResource {
private int level;
private int monsterLevel;
@Override
public int getId() {
return this.level;
}
private int level;
private int monsterLevel;
public int getMonsterLevel() {
return monsterLevel;
}
@Override
public int getId() {
return this.level;
}
@Override
public void onLoad() {
}
public int getMonsterLevel() {
return monsterLevel;
}
@Override
public void onLoad() {
}
}