diff options
| author | Lorenz <lo.scherf@gmail.com> | 2022-07-30 04:41:20 +0200 |
|---|---|---|
| committer | Lorenz <lo.scherf@gmail.com> | 2022-07-30 04:41:20 +0200 |
| commit | cc7596105e8268e5296274e300467694fd637536 (patch) | |
| tree | edd6471b1542fe09f0ce0c3cacb27630466a4cdb /src/main/java/io | |
| parent | db2d2fce29df19870e97132dd2edd0cb8d7b597c (diff) | |
| download | NotEnoughUpdates-cc7596105e8268e5296274e300467694fd637536.tar.gz NotEnoughUpdates-cc7596105e8268e5296274e300467694fd637536.tar.bz2 NotEnoughUpdates-cc7596105e8268e5296274e300467694fd637536.zip | |
add support for disabled collection api
Diffstat (limited to 'src/main/java/io')
4 files changed, 37 insertions, 2 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/ApiData.java b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/ApiData.java index ee39e9b4..716ed454 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/ApiData.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/ApiData.java @@ -27,17 +27,20 @@ public class ApiData { private final Map<String, Integer> slayerTiers; private final int magesReputation; private final int barbariansReputation; + private final boolean collectionApiDisabled; public ApiData( Map<String, Integer> highestCollectionTier, Map<String, Integer> slayerTiers, int magesReputation, - int barbariansReputation + int barbariansReputation, + boolean collectionApiDisabled ) { this.highestCollectionTier = highestCollectionTier; this.slayerTiers = slayerTiers; this.magesReputation = magesReputation; this.barbariansReputation = barbariansReputation; + this.collectionApiDisabled = collectionApiDisabled; } public Map<String, Integer> getHighestCollectionTier() { @@ -55,4 +58,8 @@ public class ApiData { public int getBarbariansReputation() { return barbariansReputation; } + + public boolean isCollectionApiDisabled() { + return collectionApiDisabled; + } } diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperManager.java b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperManager.java index 9c729854..c0604dda 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperManager.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperManager.java @@ -235,6 +235,8 @@ public class MinionHelperManager { if (apiData == null) return false; if (requirement instanceof CollectionRequirement) { + if (apiData.isCollectionApiDisabled()) return true; + CollectionRequirement collectionRequirement = (CollectionRequirement) requirement; String collection = collectionRequirement.getCollection(); String internalName = formatInternalName(collection); @@ -299,4 +301,8 @@ public class MinionHelperManager { String format = Utils.shortNumberFormat(coins, 0); return "§6" + extraFormat + format + " coins"; } + + public boolean isCollectionApiDisabled() { + return apiData != null && apiData.isCollectionApiDisabled(); + } } diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperOverlay.java index 754d4c42..90ad0c27 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperOverlay.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/MinionHelperOverlay.java @@ -25,6 +25,7 @@ import io.github.moulberry.notenoughupdates.miscgui.TrophyRewardOverlay; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.loaders.MinionHelperRepoLoader; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.renderables.RenderableObject; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.renderables.RenderableText; +import io.github.moulberry.notenoughupdates.miscgui.minionhelper.requirements.CollectionRequirement; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.requirements.MinionRequirement; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.sources.CraftingSource; import io.github.moulberry.notenoughupdates.miscgui.minionhelper.sources.MinionSource; @@ -176,6 +177,9 @@ public class MinionHelperOverlay { if (!requirements.isEmpty()) { for (MinionRequirement requirement : requirements) { String color = manager.meetRequirement(minion, requirement) ? "§a" : "§7"; + if (requirement instanceof CollectionRequirement && manager.isCollectionApiDisabled()) { + color = "§cAPI DISABLED! §7"; + } lines.add(" §8- " + color + requirement.printDescription()); } } else { diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/loaders/MinionHelperApiLoader.java b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/loaders/MinionHelperApiLoader.java index 40ec04b6..26eac09a 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/loaders/MinionHelperApiLoader.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/miscgui/minionhelper/loaders/MinionHelperApiLoader.java @@ -46,6 +46,7 @@ public class MinionHelperApiLoader { private final MinionHelperManager manager = MinionHelperManager.getInstance(); private boolean dirty = true; private int ticks = 0; + boolean collectionApiEnabled = true; public static MinionHelperApiLoader getInstance() { if (instance == null) { @@ -137,6 +138,17 @@ public class MinionHelperApiLoader { level = Math.max(highestCollectionTier.getOrDefault(name, 0), level); highestCollectionTier.put(name, level); } + if (!collectionApiEnabled) { + Utils.addChatMessage("§e[NEU] Collection API detected!"); + } + collectionApiEnabled = true; + } else { + if (collectionApiEnabled) { + //TODO formatting + Utils.addChatMessage("§c[NEU] Collection API is disabled!"); + Utils.addChatMessage("§c[NEU] Minion Helper will not filter minions that do not meet the collection requirements!"); + } + collectionApiEnabled = false; } if (player.has("nether_island_player_data")) { @@ -173,7 +185,13 @@ public class MinionHelperApiLoader { } } - manager.setApiData(new ApiData(highestCollectionTier, slayerTier, magesReputation, barbariansReputation)); + manager.setApiData(new ApiData( + highestCollectionTier, + slayerTier, + magesReputation, + barbariansReputation, + !collectionApiEnabled + )); manager.reloadRequirements(); } } |
