Skip to content

Commit a5e1aa1

Browse files
committed
Fix some NPEs
1 parent 7396a50 commit a5e1aa1

File tree

4 files changed

+9
-0
lines changed

4 files changed

+9
-0
lines changed

src/main/java/io/github/moulberry/repo/NEUItems.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public void reload(NEURepository repository) throws NEURepositoryException {
3131

3232
@Nullable
3333
public NEUItem getItemBySkyblockId(@NEUId String itemId) {
34+
if (items == null) return null;
3435
return items.get(itemId.toUpperCase(Locale.ROOT));
3536
}
3637
}

src/main/java/io/github/moulberry/repo/constants/Bonuses.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,12 @@ public class Bonuses {
2121
Map<String, Map<Integer, Map<String, Float>>> bonusStats;
2222

2323
public int getPetValue(Rarity rarity) {
24+
if (petValue == null) return 0;
2425
return petValue.getOrDefault(rarity, 0);
2526
}
2627

2728
public Map<String, Float> getPetRewards(int score) {
29+
if (petRewards == null) return new HashMap<>();
2830
return petRewards.entrySet().stream()
2931
.sorted(Comparator.comparingInt(Map.Entry::getKey))
3032
.filter(it -> it.getKey() <= score)
@@ -36,6 +38,7 @@ public Map<String, Float> getPetRewards(int score) {
3638
}
3739

3840
public Map<String, Float> getAccumulativeLevelingRewards(String name, int level) {
41+
if (bonusStats == null) return new HashMap<>();
3942
Map<Integer, Map<String, Float>> rewardTiers = bonusStats.getOrDefault(name, new HashMap<>());
4043
Map<String, Float> rewards = new HashMap<>();
4144
Map<String, Float> currentBonuses = new HashMap<>();

src/main/java/io/github/moulberry/repo/constants/Enchants.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,12 @@ public class Enchants {
2222
Map<String, List<Integer>> enchantExperienceCost;
2323

2424
public List<String> getAvailableEnchants(String tooltype) {
25+
if (availableEnchants == null) return null;
2526
return availableEnchants.get(tooltype);
2627
}
2728

2829
public List<String> getConflictingEnchants(String enchant) {
30+
if (enchantPools == null) return new ArrayList<>();
2931
List<String> conflicts = new ArrayList<>();
3032
for (List<String> enchantPool : enchantPools) {
3133
if (enchantPool.contains(enchant)) {

src/main/java/io/github/moulberry/repo/constants/Parents.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public class Parents {
1212

1313
public Parents(Map<String, List<String>> parents) {
1414
this.parents = parents;
15+
if (parents == null) return;
1516
for (Map.Entry<String, List<String>> parentings : parents.entrySet()) {
1617
String parent = parentings.getKey();
1718
for (String child : parentings.getValue()) {
@@ -21,10 +22,12 @@ public Parents(Map<String, List<String>> parents) {
2122
}
2223

2324
public List<String> getChildren(String itemId) {
25+
if (reverseParents == null) return new ArrayList<>();
2426
return parents.getOrDefault(itemId, new ArrayList<>());
2527
}
2628

2729
public Optional<String> getParent(String itemId) {
30+
if (reverseParents == null) return Optional.empty();
2831
return reverseParents.containsKey(itemId)
2932
? Optional.of(reverseParents.get(itemId))
3033
: Optional.empty();

0 commit comments

Comments
 (0)