From 9e08dbf2baa9819abd281ad285df7462c99491e2 Mon Sep 17 00:00:00 2001 From: Lorenz Date: Fri, 8 Jul 2022 16:02:54 +0200 Subject: remove old stuff --- src/main/java/at/lorenz/mod/LorenzMod.java | 21 +- src/main/java/at/lorenz/mod/config/Features.java | 6 +- .../skyblockhud/ComponentHandler.java | 248 +++--- .../skyblockhud/api/KillTracking.java | 122 +-- .../skyblockhud/api/LeaderboardGetter.java | 130 +-- .../api/events/LocationChangeEvent.java | 30 +- .../api/sbentities/EntityTypeHelper.java | 72 +- .../api/sbentities/EntityTypeRegistry.java | 54 +- .../skyblockhud/commands/Commands.java | 4 +- .../skyblockhud/commands/SimpleSubCommand.java | 122 +-- .../skyblockhud/config/SBHConfig.java | 913 ++++++++++----------- .../skyblockhud/config/SBHConfigEditor.java | 6 +- .../skyblockhud/core/config/Config.java | 8 +- .../core/config/gui/GuiOptionEditorButton.java | 8 +- .../core/config/struct/ConfigProcessor.java | 4 +- .../skyblockhud/dungeons/DungeonHandler.java | 390 ++++----- .../skyblockhud/handlers/BossbarHandler.java | 72 +- .../skyblockhud/handlers/CooldownHandler.java | 242 +++--- .../skyblockhud/handlers/CrystalWaypoints.java | 392 ++++----- .../skyblockhud/handlers/MapHandler.java | 412 +++++----- .../skyblockhud/handlers/NpcDialogue.java | 262 +++--- .../handlers/mapicons/DwarvenIcons.java | 78 +- .../skyblockhud/handlers/mapicons/HubIcons.java | 110 +-- .../skyblockhud/location/FarmingIslandHandler.java | 56 +- .../skyblockhud/location/IslandHandler.java | 134 +-- .../skyblockhud/location/LocationCategory.java | 108 +-- .../skyblockhud/location/LocationHandler.java | 88 +- .../skyblockhud/location/Locations.java | 322 ++++---- .../skyblockhud/location/MinesHandler.java | 384 ++++----- .../skyblockhud/mixins/MixinEntityArrow.java | 52 +- .../skyblockhud/mixins/MixinGuiIngameForge.java | 226 ++--- .../skyblockhud/mixins/MixinItemStack.java | 84 +- .../mixins/MixinNetHandlerPlayClient.java | 134 +-- .../skyblockhud/mixins/MixinRenderItem.java | 126 +-- .../skyblockhud/overlay/DungeonOverlay.java | 298 +++---- .../skyblockhud/overlay/GenericOverlays.java | 84 +- .../skyblockhud/overlay/MiningHud.java | 152 ++-- .../skyblockhud/overlay/OverlayHud.java | 662 +++++++-------- .../thatgravyboat/skyblockhud/overlay/RPGHud.java | 224 ++--- .../skyblockhud/playerstats/ActionBarParsing.java | 304 +++---- .../skyblockhud/seasons/SeasonDateHandler.java | 146 ++-- .../skyblockhud/textures/Textures.java | 4 +- .../skyblockhud/tracker/TrackerFileLoader.java | 272 +++--- .../skyblockhud/tracker/TrackerHandler.java | 216 ++--- .../skyblockhud/tracker/TrackerObject.java | 194 ++--- .../com/thatgravyboat/skyblockhud/utils/Utils.java | 12 +- 46 files changed, 3993 insertions(+), 3995 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/at/lorenz/mod/LorenzMod.java b/src/main/java/at/lorenz/mod/LorenzMod.java index 0e0d625f8..75396d94d 100644 --- a/src/main/java/at/lorenz/mod/LorenzMod.java +++ b/src/main/java/at/lorenz/mod/LorenzMod.java @@ -11,10 +11,6 @@ import at.lorenz.mod.dungeon.DungeonHighlightClickedBlocks; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.thatgravyboat.skyblockhud.commands.Commands; -import com.thatgravyboat.skyblockhud.config.SBHConfig; -import com.thatgravyboat.skyblockhud.textures.Textures; -import java.io.*; -import java.nio.charset.StandardCharsets; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.resources.IReloadableResourceManager; @@ -25,14 +21,16 @@ import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.TickEvent; +import java.io.*; +import java.nio.charset.StandardCharsets; + @Mod(modid = LorenzMod.MODID, version = LorenzMod.VERSION) public class LorenzMod { public static final String MODID = "lorenzmod"; public static final String VERSION = "0.2.1"; - @Deprecated - public static SBHConfig config; //TODO delete +// public static SBHConfig config; //TODO delete public static Features feature; private File configFile; @@ -86,20 +84,22 @@ public class LorenzMod { // // ((IReloadableResourceManager) Minecraft.getMinecraft().getResourceManager()).registerReloadListener(new NpcDialogue()); - ((IReloadableResourceManager) Minecraft.getMinecraft().getResourceManager()).registerReloadListener(new Textures()); +// ((IReloadableResourceManager) Minecraft.getMinecraft().getResourceManager()).registerReloadListener(new Textures()); // configDirectory = new File("mods/LorenzMod/config"); try { //noinspection ResultOfMethodCallIgnored configDirectory.mkdir(); - } catch (Exception ignored) {} + } catch (Exception ignored) { + } configFile = new File(configDirectory, "config.json"); if (configFile.exists()) { try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(configFile), StandardCharsets.UTF_8))) { feature = gson.fromJson(reader, Features.class); - } catch (Exception ignored) {} + } catch (Exception ignored) { + } } if (feature == null) { @@ -125,7 +125,8 @@ public class LorenzMod { try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(configFile), StandardCharsets.UTF_8))) { writer.write(gson.toJson(feature)); } - } catch (IOException ignored) {} + } catch (IOException ignored) { + } } // @EventHandler diff --git a/src/main/java/at/lorenz/mod/config/Features.java b/src/main/java/at/lorenz/mod/config/Features.java index c35639491..e195f1d1b 100644 --- a/src/main/java/at/lorenz/mod/config/Features.java +++ b/src/main/java/at/lorenz/mod/config/Features.java @@ -4,7 +4,6 @@ import com.google.gson.annotations.Expose; import at.lorenz.mod.LorenzMod; import com.thatgravyboat.skyblockhud.config.SBHConfigEditor; import com.thatgravyboat.skyblockhud.core.GuiScreenElementWrapper; -import com.thatgravyboat.skyblockhud.core.config.Config; import com.thatgravyboat.skyblockhud.core.config.Position; import com.thatgravyboat.skyblockhud.core.config.annotations.Category; import com.thatgravyboat.skyblockhud.core.config.annotations.ConfigEditorBoolean; @@ -12,13 +11,12 @@ import com.thatgravyboat.skyblockhud.core.config.annotations.ConfigOption; import com.thatgravyboat.skyblockhud.core.config.gui.GuiPositionEditor; import net.minecraft.client.Minecraft; -public class Features extends Config { +public class Features { private void editOverlay(String activeConfig, int width, int height, Position position) { - Minecraft.getMinecraft().displayGuiScreen(new GuiPositionEditor(position, width, height, () -> {}, () -> {}, () -> LorenzMod.screenToOpen = new GuiScreenElementWrapper(new SBHConfigEditor(LorenzMod.config, activeConfig)))); + Minecraft.getMinecraft().displayGuiScreen(new GuiPositionEditor(position, width, height, () -> {}, () -> {}, () -> LorenzMod.screenToOpen = new GuiScreenElementWrapper(new SBHConfigEditor(LorenzMod.feature, activeConfig)))); } - @Override public void executeRunnable(String runnableId) { // String activeConfigCategory = null; // if (Minecraft.getMinecraft().currentScreen instanceof GuiScreenElementWrapper) { diff --git a/src/main/java/com/thatgravyboat/skyblockhud/ComponentHandler.java b/src/main/java/com/thatgravyboat/skyblockhud/ComponentHandler.java index eba20ea4d..5677a7382 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/ComponentHandler.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/ComponentHandler.java @@ -1,124 +1,124 @@ -package com.thatgravyboat.skyblockhud; - -import at.lorenz.mod.LorenzMod; -import com.google.common.collect.ComparisonChain; -import com.google.common.collect.Ordering; -import com.thatgravyboat.skyblockhud.dungeons.DungeonHandler; -import com.thatgravyboat.skyblockhud.location.*; -import com.thatgravyboat.skyblockhud.seasons.SeasonDateHandler; -import com.thatgravyboat.skyblockhud.utils.Utils; -import java.util.Comparator; -import java.util.List; -import java.util.regex.Pattern; -import net.minecraft.client.Minecraft; -import net.minecraft.client.network.NetworkPlayerInfo; -import net.minecraft.scoreboard.ScorePlayerTeam; -import net.minecraft.world.WorldSettings; -import net.minecraftforge.client.GuiIngameForge; -import net.minecraftforge.client.event.ClientChatReceivedEvent; -import net.minecraftforge.fml.common.eventhandler.EventPriority; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import net.minecraftforge.fml.common.gameevent.TickEvent; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ComponentHandler { - - public static final Pattern SCOREBOARD_CHARACTERS = Pattern.compile("[^]\\[a-z A-Z:0-9/'.()+\\d-§?]"); - private static final Ordering sortingList = Ordering.from(new PlayerComparator()); - private static int ticksExisted = 0; - - @SubscribeEvent - public void onClientTick(TickEvent.ClientTickEvent event) { - Minecraft mc = Minecraft.getMinecraft(); - ticksExisted++; - boolean eventPass = false; - if (mc.theWorld != null) { - List players = sortingList.sortedCopy(mc.thePlayer.sendQueue.getPlayerInfoMap()); - GuiIngameForge.renderObjective = !LorenzMod.hasSkyblockScoreboard() || !LorenzMod.config.misc.hideScoreboard; - if (players != null && LorenzMod.hasSkyblockScoreboard()) { - if (ticksExisted % 60 == 0) { - for (NetworkPlayerInfo player : players) { - if (player.getDisplayName() != null) { - String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(player.getDisplayName().getFormattedText())).replaceAll(""); - if (LocationHandler.getCurrentLocation().equals(Locations.CATACOMBS)) { - if (formattedTabListPlayer.toLowerCase().contains("secrets found:")) DungeonHandler.parseTotalSecrets(formattedTabListPlayer); - if (formattedTabListPlayer.toLowerCase().contains("deaths:")) DungeonHandler.parseDeaths(formattedTabListPlayer); - if (formattedTabListPlayer.toLowerCase().contains("crypts:")) DungeonHandler.parseCrypts(formattedTabListPlayer); - } else if (LocationHandler.getCurrentLocation().getCategory().isMiningCategory()) { - if (formattedTabListPlayer.toLowerCase().contains("mithril powder:")) { - MinesHandler.parseMithril(formattedTabListPlayer); - } - if (formattedTabListPlayer.toLowerCase().contains("gemstone powder:")) { - MinesHandler.parseGemstone(formattedTabListPlayer); - } - } else if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.MUSHROOMDESERT)) { - if (formattedTabListPlayer.toLowerCase().contains("pelts:")) { - try { - FarmingIslandHandler.pelts = Integer.parseInt(formattedTabListPlayer.toLowerCase().replace("pelts:", "").trim()); - } catch (Exception ignored) {} - } - } - } - } - if (players.size() > 80) { - for (int i = 61; i <= 80; i++) { - if (players.get(i).getDisplayName() != null) { - String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i).getDisplayName().getFormattedText())).replaceAll(""); - if (formattedTabListPlayer.toLowerCase().contains("event:")) { - if (i < 80) { - if (players.get(i + 1).getDisplayName() != null) { - String secondLine = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i + 1).getDisplayName().getFormattedText())).replaceAll(""); - if (!formattedTabListPlayer.contains("N/A")) { - SeasonDateHandler.setCurrentEvent(formattedTabListPlayer.replace("Event:", ""), secondLine); - eventPass = true; - } - } - } - } - } - if (i == 80 && !eventPass) { - SeasonDateHandler.setCurrentEvent("", ""); - } - } - } - } - if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.PARK)) { - if (players.size() >= 80) { - for (int i = 41; i <= 60; i++) { - if (players.get(i).getDisplayName() != null) { - String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i).getDisplayName().getFormattedText())).replaceAll(""); - if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.PARK)) { - if (formattedTabListPlayer.toLowerCase().contains("rain:")) { - ParkIslandHandler.parseRain(formattedTabListPlayer.toLowerCase()); - } - } - } - } - } - } else if (ParkIslandHandler.isRaining()) { - ParkIslandHandler.parseRain(null); - } - } - } - } - - @SubscribeEvent(priority = EventPriority.HIGHEST) - public void onStatusBar(ClientChatReceivedEvent event) { - if (event.type == 2) { - if (LocationHandler.getCurrentLocation().equals(Locations.CATACOMBS)) DungeonHandler.parseSecrets(event.message.getFormattedText()); - } - } - - @SideOnly(Side.CLIENT) - static class PlayerComparator implements Comparator { - - private PlayerComparator() {} - - public int compare(NetworkPlayerInfo p_compare_1_, NetworkPlayerInfo p_compare_2_) { - ScorePlayerTeam scoreplayerteam = p_compare_1_.getPlayerTeam(); - ScorePlayerTeam scoreplayerteam1 = p_compare_2_.getPlayerTeam(); - return ComparisonChain.start().compareTrueFirst(p_compare_1_.getGameType() != WorldSettings.GameType.SPECTATOR, p_compare_2_.getGameType() != WorldSettings.GameType.SPECTATOR).compare(scoreplayerteam != null ? scoreplayerteam.getRegisteredName() : "", scoreplayerteam1 != null ? scoreplayerteam1.getRegisteredName() : "").compare(p_compare_1_.getGameProfile().getName(), p_compare_2_.getGameProfile().getName()).result(); - } - } -} +//package com.thatgravyboat.skyblockhud; +// +//import at.lorenz.mod.LorenzMod; +//import com.google.common.collect.ComparisonChain; +//import com.google.common.collect.Ordering; +//import com.thatgravyboat.skyblockhud.dungeons.DungeonHandler; +//import com.thatgravyboat.skyblockhud.location.*; +//import com.thatgravyboat.skyblockhud.seasons.SeasonDateHandler; +//import com.thatgravyboat.skyblockhud.utils.Utils; +//import java.util.Comparator; +//import java.util.List; +//import java.util.regex.Pattern; +//import net.minecraft.client.Minecraft; +//import net.minecraft.client.network.NetworkPlayerInfo; +//import net.minecraft.scoreboard.ScorePlayerTeam; +//import net.minecraft.world.WorldSettings; +//import net.minecraftforge.client.GuiIngameForge; +//import net.minecraftforge.client.event.ClientChatReceivedEvent; +//import net.minecraftforge.fml.common.eventhandler.EventPriority; +//import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +//import net.minecraftforge.fml.common.gameevent.TickEvent; +//import net.minecraftforge.fml.relauncher.Side; +//import net.minecraftforge.fml.relauncher.SideOnly; +// +//public class ComponentHandler { +// +// public static final Pattern SCOREBOARD_CHARACTERS = Pattern.compile("[^]\\[a-z A-Z:0-9/'.()+\\d-§?]"); +// private static final Ordering sortingList = Ordering.from(new PlayerComparator()); +// private static int ticksExisted = 0; +// +// @SubscribeEvent +// public void onClientTick(TickEvent.ClientTickEvent event) { +// Minecraft mc = Minecraft.getMinecraft(); +// ticksExisted++; +// boolean eventPass = false; +// if (mc.theWorld != null) { +// List players = sortingList.sortedCopy(mc.thePlayer.sendQueue.getPlayerInfoMap()); +// GuiIngameForge.renderObjective = !LorenzMod.hasSkyblockScoreboard() || !LorenzMod.config.misc.hideScoreboard; +// if (players != null && LorenzMod.hasSkyblockScoreboard()) { +// if (ticksExisted % 60 == 0) { +// for (NetworkPlayerInfo player : players) { +// if (player.getDisplayName() != null) { +// String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(player.getDisplayName().getFormattedText())).replaceAll(""); +// if (LocationHandler.getCurrentLocation().equals(Locations.CATACOMBS)) { +// if (formattedTabListPlayer.toLowerCase().contains("secrets found:")) DungeonHandler.parseTotalSecrets(formattedTabListPlayer); +// if (formattedTabListPlayer.toLowerCase().contains("deaths:")) DungeonHandler.parseDeaths(formattedTabListPlayer); +// if (formattedTabListPlayer.toLowerCase().contains("crypts:")) DungeonHandler.parseCrypts(formattedTabListPlayer); +// } else if (LocationHandler.getCurrentLocation().getCategory().isMiningCategory()) { +// if (formattedTabListPlayer.toLowerCase().contains("mithril powder:")) { +// MinesHandler.parseMithril(formattedTabListPlayer); +// } +// if (formattedTabListPlayer.toLowerCase().contains("gemstone powder:")) { +// MinesHandler.parseGemstone(formattedTabListPlayer); +// } +// } else if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.MUSHROOMDESERT)) { +// if (formattedTabListPlayer.toLowerCase().contains("pelts:")) { +// try { +// FarmingIslandHandler.pelts = Integer.parseInt(formattedTabListPlayer.toLowerCase().replace("pelts:", "").trim()); +// } catch (Exception ignored) {} +// } +// } +// } +// } +// if (players.size() > 80) { +// for (int i = 61; i <= 80; i++) { +// if (players.get(i).getDisplayName() != null) { +// String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i).getDisplayName().getFormattedText())).replaceAll(""); +// if (formattedTabListPlayer.toLowerCase().contains("event:")) { +// if (i < 80) { +// if (players.get(i + 1).getDisplayName() != null) { +// String secondLine = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i + 1).getDisplayName().getFormattedText())).replaceAll(""); +// if (!formattedTabListPlayer.contains("N/A")) { +// SeasonDateHandler.setCurrentEvent(formattedTabListPlayer.replace("Event:", ""), secondLine); +// eventPass = true; +// } +// } +// } +// } +// } +// if (i == 80 && !eventPass) { +// SeasonDateHandler.setCurrentEvent("", ""); +// } +// } +// } +// } +// if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.PARK)) { +// if (players.size() >= 80) { +// for (int i = 41; i <= 60; i++) { +// if (players.get(i).getDisplayName() != null) { +// String formattedTabListPlayer = SCOREBOARD_CHARACTERS.matcher(Utils.removeColor(players.get(i).getDisplayName().getFormattedText())).replaceAll(""); +// if (LocationHandler.getCurrentLocation().getCategory().equals(LocationCategory.PARK)) { +// if (formattedTabListPlayer.toLowerCase().contains("rain:")) { +// ParkIslandHandler.parseRain(formattedTabListPlayer.toLowerCase()); +// } +// } +// } +// } +// } +// } else if (ParkIslandHandler.isRaining()) { +// ParkIslandHandler.parseRain(null); +// } +// } +// } +// } +// +// @SubscribeEvent(priority = EventPriority.HIGHEST) +// public void onStatusBar(ClientChatReceivedEvent event) { +// if (event.type == 2) { +// if (LocationHandler.getCurrentLocation().equals(Locations.CATACOMBS)) DungeonHandler.parseSecrets(event.message.getFormattedText()); +// } +// } +// +// @SideOnly(Side.CLIENT) +// static class PlayerComparator implements Comparator { +// +// private PlayerComparator() {} +// +// public int compare(NetworkPlayerInfo p_compare_1_, NetworkPlayerInfo p_compare_2_) { +// ScorePlayerTeam scoreplayerteam = p_compare_1_.getPlayerTeam(); +// ScorePlayerTeam scoreplayerteam1 = p_compare_2_.getPlayerTeam(); +// return ComparisonChain.start().compareTrueFirst(p_compare_1_.getGameType() != WorldSettings.GameType.SPECTATOR, p_compare_2_.getGameType() != WorldSettings.GameType.SPECTATOR).compare(scoreplayerteam != null ? scoreplayerteam.getRegisteredName() : "", scoreplayerteam1 != null ? scoreplayerteam1.getRegisteredName() : "").compare(p_compare_1_.getGameProfile().getName(), p_compare_2_.getGameProfile().getName()).result(); +// } +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/api/KillTracking.java b/src/main/java/com/thatgravyboat/skyblockhud/api/KillTracking.java index bc98672d8..84882e1f4 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/api/KillTracking.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/api/KillTracking.java @@ -1,61 +1,61 @@ -package com.thatgravyboat.skyblockhud.api; - -import com.thatgravyboat.skyblockhud.DevModeConstants; -import com.thatgravyboat.skyblockhud.api.events.SkyBlockEntityKilled; -import com.thatgravyboat.skyblockhud.api.sbentities.EntityTypeRegistry; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; -import net.minecraft.client.Minecraft; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.DamageSource; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.entity.EntityJoinWorldEvent; -import net.minecraftforge.event.entity.living.LivingDeathEvent; -import net.minecraftforge.event.entity.player.AttackEntityEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - -public class KillTracking { - - public static final Set attackedEntities = new HashSet<>(); - - @SubscribeEvent - public void onAttack(AttackEntityEvent event) { - if (event.target != null) { - attackedEntities.add(event.target.getUniqueID()); - } - } - - @SubscribeEvent - public void onDeath(LivingDeathEvent event) { - if (DevModeConstants.mobDeathLogging) { - //Used for testing - System.out.println("----------------------------------------------------------------------------------------------------------------"); - System.out.println("Name : " + event.entity.getName()); - System.out.println("UUID : " + event.entity.getUniqueID()); - NBTTagCompound compound = new NBTTagCompound(); - event.entity.writeToNBT(compound); - System.out.println("Tag : " + compound); - System.out.println("Damage : " + getDamageSourceString(event.source)); - System.out.println("SBH Entity ID: " + EntityTypeRegistry.getEntityId(event.entity)); - System.out.println("----------------------------------------------------------------------------------------------------------------"); - } - if (attackedEntities.contains(event.entity.getUniqueID())) { - if (EntityTypeRegistry.getEntityId(event.entity) != null) { - MinecraftForge.EVENT_BUS.post(new SkyBlockEntityKilled(EntityTypeRegistry.getEntityId(event.entity), event.entity)); - } - attackedEntities.remove(event.entity.getUniqueID()); - } - } - - public static String getDamageSourceString(DamageSource source) { - return ("{ " + source.getDamageType() + ", " + source.isDamageAbsolute() + ", " + source.isDifficultyScaled() + ", " + source.isFireDamage() + ", " + source.isProjectile() + ", " + source.isUnblockable() + ", " + source.isExplosion() + ", " + source.isMagicDamage() + ", " + source.isCreativePlayer() + ", " + source.getSourceOfDamage() + " }"); - } - - @SubscribeEvent - public void onWorldChange(EntityJoinWorldEvent event) { - if (event.entity == Minecraft.getMinecraft().thePlayer) { - attackedEntities.clear(); - } - } -} +//package com.thatgravyboat.skyblockhud.api; +// +//import com.thatgravyboat.skyblockhud.DevModeConstants; +//import com.thatgravyboat.skyblockhud.api.events.SkyBlockEntityKilled; +//import com.thatgravyboat.skyblockhud.api.sbentities.EntityTypeRegistry; +//import java.util.HashSet; +//import java.util.Set; +//import java.util.UUID; +//import net.minecraft.client.Minecraft; +//import net.minecraft.nbt.NBTTagCompound; +//import net.minecraft.util.DamageSource; +//import net.minecraftforge.common.MinecraftForge; +//import net.minecraftforge.event.entity.EntityJoinWorldEvent; +//import net.minecraftforge.event.entity.living.LivingDeathEvent; +//import net.minecraftforge.event.entity.player.AttackEntityEvent; +//import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +// +//public class KillTracking { +// +// public static final Set attackedEntities = new HashSet<>(); +// +// @SubscribeEvent +// public void onAttack(AttackEntityEvent event) { +// if (event.target != null) { +// attackedEntities.add(event.target.getUniqueID()); +// } +// } +// +// @SubscribeEvent +// public void onDeath(LivingDeathEvent event) { +// if (DevModeConstants.mobDeathLogging) { +// //Used for testing +// System.out.println("----------------------------------------------------------------------------------------------------------------"); +// System.out.println("Name : " + event.entity.getName()); +// System.out.println("UUID : " + event.entity.getUniqueID()); +// NBTTagCompound compound = new NBTTagCompound(); +// event.entity.writeToNBT(compound); +// System.out.println("Tag : " + compound); +// System.out.println("Damage : " + getDamageSourceString(event.source)); +// System.out.println("SBH Entity ID: " + EntityTypeRegistry.getEntityId(event.entity)); +// System.out.println("----------------------------------------------------------------------------------------------------------------"); +// } +// if (attackedEntities.contains(event.entity.getUniqueID())) { +// if (EntityTypeRegistry.getEntityId(event.entity) != null) { +// MinecraftForge.EVENT_BUS.post(new SkyBlockEntityKilled(EntityTypeRegistry.getEntityId(event.entity), event.entity)); +// } +// attackedEntities.remove(event.entity.getUniqueID()); +// } +// } +// +// public static String getDamageSourceString(DamageSource source) { +// return ("{ " + source.getDamageType() + ", " + source.isDamageAbsolute() + ", " + source.isDifficultyScaled() + ", " + source.isFireDamage() + ", " + source.isProjectile() + ", " + source.isUnblockable() + ", " + source.isExplosion() + ", " + source.isMagicDamage() + ", " + source.isCreativePlayer() + ", " + source.getSourceOfDamage() + " }"); +// } +// +// @SubscribeEvent +// public void onWorldChange(EntityJoinWorldEvent event) { +// if (event.entity == Minecraft.getMinecraft().thePlayer) { +// attackedEntities.clear(); +// } +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/api/LeaderboardGetter.java b/src/main/java/com/thatgravyboat/skyblockhud/api/LeaderboardGetter.java index d0bdf551d..de485ef5e 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/api/LeaderboardGetter.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/api/LeaderboardGetter.java @@ -1,65 +1,65 @@ -package com.thatgravyboat.skyblockhud.api; - -import static com.thatgravyboat.skyblockhud.ComponentHandler.SCOREBOARD_CHARACTERS; - -import at.lorenz.mod.LorenzMod; -import com.thatgravyboat.skyblockhud.api.events.SidebarLineUpdateEvent; -import com.thatgravyboat.skyblockhud.api.events.SidebarPostEvent; -import com.thatgravyboat.skyblockhud.api.events.SidebarPreGetEvent; -import com.thatgravyboat.skyblockhud.utils.Utils; -import java.util.*; -import java.util.stream.Collectors; -import net.minecraft.client.Minecraft; -import net.minecraft.scoreboard.Score; -import net.minecraft.scoreboard.ScoreObjective; -import net.minecraft.scoreboard.ScorePlayerTeam; -import net.minecraft.scoreboard.Scoreboard; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import net.minecraftforge.fml.common.gameevent.TickEvent; - -public class LeaderboardGetter { - - private static Map cachedScores = new HashMap<>(); - private static List cachedScoresList = new ArrayList<>(); - - private static int ticks = 0; - - public static List getCachedScores() { - return cachedScoresList; - } - - @SubscribeEvent - public void onClientUpdate(TickEvent.ClientTickEvent event) { - if (event.phase.equals(TickEvent.Phase.START)) return; - ticks++; - if (ticks % 5 != 0) return; - - Minecraft mc = Minecraft.getMinecraft(); - if (mc.theWorld != null && LorenzMod.hasSkyblockScoreboard()) { - Scoreboard scoreboard = mc.theWorld.getScoreboard(); - ScoreObjective sidebarObjective = scoreboard.getObjectiveInDisplaySlot(1); - - if (sidebarObjective != null && !MinecraftForge.EVENT_BUS.post(new SidebarPreGetEvent(scoreboard, sidebarObjective))) { - Collection scoreList = sidebarObjective.getScoreboard().getSortedScores(sidebarObjective); - Map scores = scoreList.stream().collect(Collectors.toMap(Score::getScorePoints, this::getLine, (s1, s2) -> s1)); - - if (!cachedScores.equals(scores)) { - scores.forEach((score, name) -> { - if (cachedScores.get(score) == null || !cachedScores.get(score).equals(name)) { - MinecraftForge.EVENT_BUS.post(new SidebarLineUpdateEvent(name, SCOREBOARD_CHARACTERS.matcher(name).replaceAll("").trim(), score, scores.size(), scoreboard, sidebarObjective)); - } - }); - cachedScores = scores; - cachedScoresList = scores.values().stream().map(name -> SCOREBOARD_CHARACTERS.matcher(name).replaceAll("").trim()).collect(Collectors.toList()); - } - MinecraftForge.EVENT_BUS.post(new SidebarPostEvent(scoreboard, sidebarObjective, cachedScoresList)); - } - } - } - - public String getLine(Score score) { - ScorePlayerTeam scorePlayerTeam = score.getScoreScoreboard().getPlayersTeam(score.getPlayerName()); - return Utils.removeColor(ScorePlayerTeam.formatPlayerName(scorePlayerTeam, score.getPlayerName())); - } -} +//package com.thatgravyboat.skyblockhud.api; +// +//import static com.thatgravyboat.skyblockhud.ComponentHandler.SCOREBOARD_CHARACTERS; +// +//import at.lorenz.mod.LorenzMod; +//import com.thatgravyboat.skyblockhud.api.events.SidebarLineUpdateEvent; +//import com.thatgravyboat.skyblockhud.api.events.SidebarPostEvent; +//import com.thatgravyboat.skyblockhud.api.events.SidebarPreGetEvent; +//import com.thatgravyboat.skyblockhud.utils.Utils; +//import java.util.*; +//import java.util.stream.Collectors; +//import net.minecraft.client.Minecraft; +//import net.minecraft.scoreboard.Score; +//import net.minecraft.scoreboard.ScoreObjective; +//import net.minecraft.scoreboard.ScorePlayerTeam; +//import net.minecraft.scoreboard.Scoreboard; +//import net.minecraftforge.common.MinecraftForge; +//import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +//import net.minecraftforge.fml.common.gameevent.TickEvent; +// +//public class LeaderboardGetter { +// +// private static Map cachedScores = new HashMap<>(); +// private static List cachedScoresList = new ArrayList<>(); +// +// private static int ticks = 0; +// +// public static List getCachedScores() { +// return cachedScoresList; +// } +// +// @SubscribeEvent +// public void onClientUpdate(TickEvent.ClientTickEvent event) { +// if (event.phase.equals(TickEvent.Phase.START)) return; +// ticks++; +// if (ticks % 5 != 0) return; +// +// Minecraft mc = Minecraft.getMinecraft(); +// if (mc.theWorld != null && LorenzMod.hasSkyblockScoreboard()) { +// Scoreboard scoreboard = mc.theWorld.getScoreboard(); +// ScoreObjective sidebarObjective = scoreboard.getObjectiveInDisplaySlot(1); +// +// if (sidebarObjective != null && !MinecraftForge.EVENT_BUS.post(new SidebarPreGetEvent(scoreboard, sidebarObjective))) { +// Collection scoreList = sidebarObjective.getScoreboard().getSortedScores(sidebarObjective); +// Map scores = scoreList.stream().collect(Collectors.toMap(Score::getScorePoints, this::getLine, (s1, s2) -> s1)); +// +// if (!cachedScores.equals(scores)) { +// scores.forEach((score, name) -> { +// if (cachedScores.get(score) == null || !cachedScores.get(score).equals(name)) { +// MinecraftForge.EVENT_BUS.post(new SidebarLineUpdateEvent(name, SCOREBOARD_CHARACTERS.matcher(name).replaceAll("").trim(), score, scores.size(), scoreboard, sidebarObjective)); +// } +// }); +// cachedScores = scores; +// cachedScoresList = scores.values().stream().map(name -> SCOREBOARD_CHARACTERS.matcher(name).replaceAll("").trim()).collect(Collectors.toList()); +// } +// MinecraftForge.EVENT_BUS.post(new SidebarPostEvent(scoreboard, sidebarObjective, cachedScoresList)); +// } +// } +// } +// +// public String getLine(Score score) { +// ScorePlayerTeam scorePlayerTeam = score.getScoreScoreboard().getPlayersTeam(score.getPlayerName()); +// return Utils.removeColor(ScorePlayerTeam.formatPlayerName(scorePlayerTeam, score.getPlayerName())); +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/api/events/LocationChangeEvent.java b/src/main/java/com/thatgravyboat/skyblockhud/api/events/LocationChangeEvent.java index 384e76d2e..560ad32e4 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/api/events/LocationChangeEvent.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/api/events/LocationChangeEvent.java @@ -1,15 +1,15 @@ -package com.thatgravyboat.skyblockhud.api.events; - -import com.thatgravyboat.skyblockhud.location.Locations; -import net.minecraftforge.fml.common.eventhandler.Event; - -public class LocationChangeEvent extends Event { - - public Locations oldLocation; - public Locations newLocation; - - public LocationChangeEvent(Locations oldLocation, Locations newLocation) { - this.oldLocation = oldLocation; - this.newLocation = newLocation; - } -} +//package com.thatgravyboat.skyblockhud.api.events; +// +//import com.thatgravyboat.skyblockhud.location.Locations; +//import net.minecraftforge.fml.common.eventhandler.Event; +// +//public class LocationChangeEvent extends Event { +// +// public Locations oldLocation; +// public Locations newLocation; +// +// public LocationChangeEvent(Locations oldLocation, Locations newLocation) { +// this.oldLocation = oldLocation; +// this.newLocation = newLocation; +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeHelper.java b/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeHelper.java index bb14e5d21..2d8a17e4b 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeHelper.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeHelper.java @@ -1,36 +1,36 @@ -package com.thatgravyboat.skyblockhud.api.sbentities; - -import com.thatgravyboat.skyblockhud.location.LocationHandler; -import com.thatgravyboat.skyblockhud.location.Locations; -import net.minecraft.entity.Entity; -import net.minecraft.entity.monster.EntityEnderman; -import net.minecraft.entity.monster.EntityZombie; -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; - -public class EntityTypeHelper { - - public static boolean isZealot(Entity entity) { - if (entity instanceof EntityEnderman) { - EntityEnderman enderman = ((EntityEnderman) entity); - double maxHealthBase = enderman.getAttributeMap().getAttributeInstanceByName("generic.maxHealth").getBaseValue(); - if (maxHealthBase == 13000 || (maxHealthBase == 2000d && enderman.getHeldBlockState().getBlock().equals(Blocks.end_portal_frame))) { - return LocationHandler.getCurrentLocation().equals(Locations.DRAGONSNEST); - } - } - return false; - } - - public static boolean isCrypt(Entity entity) { - if (entity instanceof EntityZombie) { - EntityZombie zombie = ((EntityZombie) entity); - double maxHealthBase = zombie.getAttributeMap().getAttributeInstanceByName("generic.maxHealth").getBaseValue(); - if (maxHealthBase != 2000d) return false; - if (zombie.getEquipmentInSlot(0) == null || !zombie.getEquipmentInSlot(0).getItem().equals(Items.iron_sword)) return false; - if (zombie.getEquipmentInSlot(1) == null || !zombie.getEquipmentInSlot(1).getItem().equals(Items.chainmail_boots)) return false; - if (zombie.getEquipmentInSlot(2) == null || !zombie.getEquipmentInSlot(2).getItem().equals(Items.chainmail_leggings)) return false; - return zombie.getEquipmentInSlot(3) != null && zombie.getEquipmentInSlot(3).getItem().equals(Items.chainmail_chestplate); - } - return false; - } -} +//package com.thatgravyboat.skyblockhud.api.sbentities; +// +//import com.thatgravyboat.skyblockhud.location.LocationHandler; +//import com.thatgravyboat.skyblockhud.location.Locations; +//import net.minecraft.entity.Entity; +//import net.minecraft.entity.monster.EntityEnderman; +//import net.minecraft.entity.monster.EntityZombie; +//import net.minecraft.init.Blocks; +//import net.minecraft.init.Items; +// +//public class EntityTypeHelper { +// +// public static boolean isZealot(Entity entity) { +// if (entity instanceof EntityEnderman) { +// EntityEnderman enderman = ((EntityEnderman) entity); +// double maxHealthBase = enderman.getAttributeMap().getAttributeInstanceByName("generic.maxHealth").getBaseValue(); +// if (maxHealthBase == 13000 || (maxHealthBase == 2000d && enderman.getHeldBlockState().getBlock().equals(Blocks.end_portal_frame))) { +// return LocationHandler.getCurrentLocation().equals(Locations.DRAGONSNEST); +// } +// } +// return false; +// } +// +// public static boolean isCrypt(Entity entity) { +// if (entity instanceof EntityZombie) { +// EntityZombie zombie = ((EntityZombie) entity); +// double maxHealthBase = zombie.getAttributeMap().getAttributeInstanceByName("generic.maxHealth").getBaseValue(); +// if (maxHealthBase != 2000d) return false; +// if (zombie.getEquipmentInSlot(0) == null || !zombie.getEquipmentInSlot(0).getItem().equals(Items.iron_sword)) return false; +// if (zombie.getEquipmentInSlot(1) == null || !zombie.getEquipmentInSlot(1).getItem().equals(Items.chainmail_boots)) return false; +// if (zombie.getEquipmentInSlot(2) == null || !zombie.getEquipmentInSlot(2).getItem().equals(Items.chainmail_leggings)) return false; +// return zombie.getEquipmentInSlot(3) != null && zombie.getEquipmentInSlot(3).getItem().equals(Items.chainmail_chestplate); +// } +// return false; +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeRegistry.java b/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeRegistry.java index 6ff88fafb..d507eecfd 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeRegistry.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/api/sbentities/EntityTypeRegistry.java @@ -1,27 +1,27 @@ -package com.thatgravyboat.skyblockhud.api.sbentities; - -import com.google.common.collect.ImmutableList; -import com.google.common.collect.Maps; -import java.util.List; -import java.util.Map; -import net.minecraft.entity.Entity; -import net.minecraft.entity.monster.EntityEnderman; -import net.minecraft.entity.monster.EntityZombie; - -public class EntityTypeRegistry { - - private static final Map, List> entities = Maps.newHashMap(); - - static { - entities.put(EntityEnderman.class, ImmutableList.of(SkyBlockEntity.of("ZEALOT", EntityTypeHelper::isZealot))); - entities.put(EntityZombie.class, ImmutableList.of(SkyBlockEntity.of("CRYPT_GHOUL", EntityTypeHelper::isCrypt))); - } - - public static String getEntityId(Entity entity) { - if (!entities.containsKey(entity.getClass())) return null; - for (SkyBlockEntity skyBlockEntity : entities.get(entity.getClass())) { - if (skyBlockEntity.isEntity(entity)) return skyBlockEntity.getName(); - } - return null; - } -} +//package com.thatgravyboat.skyblockhud.api.sbentities; +// +//import com.google.common.collect.ImmutableList; +//import com.google.common.collect.Maps; +//import java.util.List; +//import java.util.Map; +//import net.minecraft.entity.Entity; +//import net.minecraft.entity.monster.EntityEnderman; +//import net.minecraft.entity.monster.EntityZombie; +// +//public class EntityTypeRegistry { +// +// private static final Map, List> entities = Maps.newHashMap(); +// +// static { +// entities.put(EntityEnderman.class, ImmutableList.of(SkyBlockEntity.of("ZEALOT", EntityTypeHelper::isZealot))); +// entities.put(EntityZombie.class, ImmutableList.of(SkyBlockEntity.of("CRYPT_GHOUL", EntityTypeHelper::isCrypt))); +// } +// +// public static String getEntityId(Entity entity) { +// if (!entities.containsKey(entity.getClass())) return null; +// for (SkyBlockEntity skyBlockEntity : entities.get(entity.getClass())) { +// if (skyBlockEntity.isEntity(entity)) return skyBlockEntity.getName(); +// } +// return null; +// } +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/commands/Commands.java b/src/main/java/com/thatgravyboat/skyblockhud/commands/Commands.java index 94bbb3262..360c35578 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/commands/Commands.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/commands/Commands.java @@ -3,7 +3,7 @@ package com.thatgravyboat.skyblockhud.commands; import at.lorenz.mod.LorenzMod; import com.thatgravyboat.skyblockhud.config.SBHConfigEditor; import com.thatgravyboat.skyblockhud.core.GuiScreenElementWrapper; -import com.thatgravyboat.skyblockhud.handlers.CrystalWaypoints; +//import com.thatgravyboat.skyblockhud.handlers.CrystalWaypoints; import net.minecraft.command.ICommandSender; import net.minecraftforge.client.ClientCommandHandler; import org.apache.commons.lang3.StringUtils; @@ -80,7 +80,7 @@ public class Commands { ClientCommandHandler.instance.registerCommand(settingsCommand2); // ClientCommandHandler.instance.registerCommand(mapCommand); // ClientCommandHandler.instance.registerCommand(devCommand); - ClientCommandHandler.instance.registerCommand(new CrystalWaypoints.WaypointCommand()); +// ClientCommandHandler.instance.registerCommand(new CrystalWaypoints.WaypointCommand()); } // private static void sendSBHMessage(ICommandSender sender, String message) { // sender.addChatMessage(new ChatComponentText("[" + EnumChatFormatting.RED + EnumChatFormatting.BOLD + "SkyBlockHud" + EnumChatFormatting.RESET + "] : " + EnumChatFormatting.GRAY + message)); diff --git a/src/main/java/com/thatgravyboat/skyblockhud/commands/SimpleSubCommand.java b/src/main/java/com/thatgravyboat/skyblockhud/commands/SimpleSubCommand.java index 6bb62acff..4869d6bc9 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/commands/SimpleSubCommand.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/commands/SimpleSubCommand.java @@ -1,61 +1,61 @@ -package com.thatgravyboat.skyblockhud.commands; - -import java.util.List; -import java.util.Set; -import net.minecraft.command.CommandBase; -import net.minecraft.command.ICommandSender; -import net.minecraft.util.BlockPos; -import org.apache.commons.lang3.ArrayUtils; - -public abstract class SimpleSubCommand extends CommandBase { - - private final String commandName; - private final Set subCommands; - - public SimpleSubCommand(String commandName, Set subCommands) { - this.commandName = commandName; - this.subCommands = subCommands; - } - - @Override - public String getCommandName() { - return commandName; - } - - @Override - public String getCommandUsage(ICommandSender sender) { - return "/" + commandName; - } - - @Override - public void processCommand(ICommandSender sender, String[] args) { - if (args.length == 0) { - processNoSubCommand(sender); - return; - } - if (subCommands.contains(args[0])) { - processSubCommand(sender, args[0], ArrayUtils.remove(args, 0)); - return; - } - processBadSubCommand(sender, args[0]); - } - - @Override - public boolean canCommandSenderUseCommand(ICommandSender sender) { - return true; - } - - @Override - public List addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { - if (args.length == 1) { - return getListOfStringsMatchingLastWord(args, subCommands); - } - return null; - } - - abstract void processSubCommand(ICommandSender sender, String subCommand, String[] args); - - abstract void processNoSubCommand(ICommandSender sender); - - public void processBadSubCommand(ICommandSender sender, String subCommand) {} -} +//package com.thatgravyboat.skyblockhud.commands; +// +//import java.util.List; +//import java.util.Set; +//import net.minecraft.command.CommandBase; +//import net.minecraft.command.ICommandSender; +//import net.minecraft.util.BlockPos; +//import org.apache.commons.lang3.ArrayUtils; +// +//public abstract class SimpleSubCommand extends CommandBase { +// +// private final String commandName; +// private final Set subCommands; +// +// public SimpleSubCommand(String commandName, Set subCommands) { +// this.commandName = commandName; +// this.subCommands = subCommands; +// } +// +// @Override +// public String getCommandName() { +// return commandName; +// } +// +// @Override +// public String getCommandUsage(ICommandSender sender) { +// return "/" + commandName; +// } +// +// @Override +// public void processCommand(ICommandSender sender, String[] args) { +// if (args.length == 0) { +// processNoSubCommand(sender); +// return; +// } +// if (subCommands.contains(args[0])) { +// processSubCommand(sender, args[0], ArrayUtils.remove(args, 0)); +// return; +// } +// processBadSubCommand(sender, args[0]); +// } +// +// @Override +// public boolean canCommandSenderUseCommand(ICommandSender sender) { +// return true; +// } +// +// @Override +// public List addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) { +// if (args.length == 1) { +// return getListOfStringsMatchingLastWord(args, subCommands); +// } +// return null; +// } +// +// abstract void processSubCommand(ICommandSender sender, String subCommand, String[] args); +// +// abstract void processNoSubCommand(ICommandSender sender); +// +// public void processBadSubCommand(ICommandSender sender, String subCommand) {} +//} diff --git a/src/main/java/com/thatgravyboat/skyblockhud/config/SBHConfig.java b/src/main/java/com/thatgravyboat/skyblockhud/config/SBHConfig.java index b462831ad..62cd406fc 100644 --- a/src/main/java/com/thatgravyboat/skyblockhud/config/SBHConfig.java +++ b/src/main/java/com/thatgravyboat/skyblockhud/config/SBHConfig.java @@ -1,457 +1,456 @@ -package com.thatgravyboat.skyblockhud.config; - -import com.google.gson.annotations.Expose; -import at.lorenz.mod.LorenzMod; -import com.thatgravyboat.skyblockhud.core.GuiScreenElementWrapper; -import com.thatgravyboat.skyblockhud.core.config.Config; -import com.thatgravyboat.skyblockhud.core.config.Position; -import com.thatgravyboat.skyblockhud.core.config.annotations.*; -import com.thatgravyboat.skyblockhud.core.config.gui.GuiPositionEditor; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import net.minecraft.client.Minecraft; - -public class SBHConfig extends Config { - - private void editOverlay(String activeConfig, int width, int height, Position position) { - Minecraft.getMinecraft().displayGuiScreen(new GuiPositionEditor(position, width, height, () -> {}, () -> {}, () -> LorenzMod.screenToOpen = new GuiScreenElementWrapper(new SBHConfigEditor(LorenzMod.config, activeConfig)))); - } - - @Override - public void executeRunnable(String runnableId) { - // String activeConfigCategory = null; - // if (Minecraft.getMinecraft().currentScreen instanceof GuiScreenElementWrapper) { - // GuiScreenElementWrapper wrapper = (GuiScreenElementWrapper) Minecraft.getMinecraft().currentScreen; - // if (wrapper.element instanceof SBHConfigEditor) { - // activeConfigCategory = ((SBHConfigEditor) wrapper.element).getSelectedCategoryName(); - // } - // } - // - // switch (runnableId) { - // case "rpg": - // editOverlay(activeConfigCategory, 120, 47, rpg.rpgHudPosition); - // return; - // case "d1": - // editOverlay(activeConfigCategory, 120, 32, dungeon.dungeonPlayer1); - // return; - // case "d2": - // editOverlay(activeConfigCategory, 120, 32, dungeon.dungeonPlayer2); - // return; - // case "d3": - // editOverlay(activeConfigCategory, 120, 32, dungeon.dungeonPlayer3); - // return; - // case "d4": - // editOverlay(activeConfigCategory, 120, 32, dungeon.dungeonPlayer4); - // return; - // case "main": - // editOverlay(activeConfigCategory, 1000, 34, main.mainHudPos); - // return; - // case "ultimate": - // editOverlay(activeConfigCategory, 182, 5, dungeon.barPosition); - // return; - // case "map": - // editOverlay(activeConfigCategory, 72, 72, map.miniMapPosition); - // return; - // case "tracker": - // editOverlay(activeConfigCategory, 130, 70, trackers.trackerPosition); - // return; - // case "drill": - // editOverlay(activeConfigCategory, 136, 7, mining.drillBar); - // return; - // case "heat": - // editOverlay(activeConfigCategory, 45, 7, mining.heatBar); - // return; - // case "dialogue": - // editOverlay(activeConfigCategory, 182, 68, misc.dialoguePos); - // return; - // } - } - - @Expose - @Category(name = "Lorenz Options", desc = "Just a test by lorenz.") - public Lorenz lorenz = new Lorenz(); - - @Expose - @Category(name = "Misc Options", desc = "Just a bunch of random options.") - public Misc misc = new Misc(); - - @Expose - @Category(name = "Main Hud", desc = "All Options for the main hud.") - public MainHud main = new MainHud(); - - @Expose - @Category(name = "RPG Hud", desc = "All Options for the RPG hud.") - public RPGHud rpg = new RPGHud(); - - @Expose - @Category(name = "Dungeon Hud", desc = "All Options for the Dungeon hud.") - public DungeonHud dungeon = new DungeonHud(); - - @Expose - @Category(name = "Renderer", desc = "All Options for rendering.") - public Renderer renderer = new Renderer(); - - @Expose - @Category(name = "Map", desc = "All Options for the Map.") - public Map map = new Map(); - - @Expose - @Category(name = "Mining", desc = "All Options for the Mining Stuff.") - public Mining mining = new Mining(); - - // @Expose - // @Category(name = "Tracker", desc = "All Options for the Trackers.") - // public Trackers trackers = new Trackers(); - - public static class Lorenz { - - @Expose - @ConfigOption(name = "Lorenz Small Test A", desc = "abc") - @ConfigEditorBoolean - public boolean test = false; - - @Expose - @ConfigOption(name = "Lorenz Small Test B", desc = "abc") - @ConfigEditorBoolean - public boolean test2 = false; - - @Expose - @ConfigOption(name = "Lorenz Small Test C", desc = "abc") - @ConfigEditorBoolean - public boolean test3 = false; - } - - public static class Misc { - - @Expose - @ConfigOption(name = "Hide Scoreboard", desc = "Hides the scoreboard when in Skyblock.") - @ConfigEditorBoolean - public boolean hideScoreboard = false; - - @Expose - @ConfigOption(name = "Texture Styles", desc = "If this list only contains 1 thing that means your texture pack doesnt support styles") - @ConfigEditorStyle - public int style = 0; - - @Expose - @ConfigOption(name = "Hide Dialogue Box", desc = "Hides the Dialogue Box.") - @ConfigEditorBoolean - public boolean hideDialogueBox = true; - - @Expose - @ConfigOption(name = "Dialogue Box", desc = "") - @ConfigEditorButton(runnableId = "dialogue", buttonText = "Edit") - public Position dialoguePos = new Position(0, -50, true, false); - - @Expose - @ConfigOption(name = "Hide Item Cooldowns", desc = "Hides item cooldowns") - @ConfigEditorBoolean - public boolean hideItemCooldowns = false; - } - - public static class MainHud { - - @Expose - @ConfigOption(name = "Disable Main Hud", desc = "IDK Why you would do this as its like half the mod but ok.") - @ConfigEditorBoolean - public boolean disaleMainHud = false; - - @Expose - @ConfigOption(name = "Main Hud Position", desc = "") - @ConfigEditorButton(runnableId = "main", buttonText = "Edit") - public Position mainHudPos = new Position(0, 1, true, false); - - @Expose - @ConfigOption(name = "Twelve Hour Clock", desc = "Allows you to change the clock to be 12 hour instead of 24 hour.") - @ConfigEditorBoolean - public boolean twelveHourClock = false; - - @Expose - @ConfigOption(name = "Shift hud with boss", desc = "Shifts the hud when bossbar is visible.") - @ConfigEditorBoolean - public boolean bossShiftHud = true; - - @Expose - @ConfigOption(name = "Require Redstone", desc = "Allows to make it so that the redstone percentage requires you to hold a redstone item to show.") - @ConfigEditorBoolean - public boolean requireRedstone = true; - } - - public static class RPGHud { - - @Expose - @ConfigOption(name = "Show RPG Hud", desc = "Allows you to show or hide the RPG Hud.") - @ConfigEditorBoolean - public boolean showRpgHud = true; - - @Expose - @ConfigOption(name = "Flip Hud", desc = "Flips the hud when half way across the screen.") - @ConfigEditorBoolean - public boolean flipHud = true; - - @Expose - @ConfigOption(name = "RPG Hud Position", desc = "Allows you to change the position of the RPG Hud.") - @ConfigEditorButton(runnableId = "rpg", buttonText = "Edit") - public Position rpgHudPosition = new Position(1, 1); - } - - public static class DungeonHud { - - @Expose - @ConfigOption(name = "Dungeon Ultimate Bar", desc = "") - @ConfigEditorAccordion(id = 2) - public boolean ultimateBar = false; - - @Expose - @ConfigOption(name = "Hide Ultimate Bar", desc = "Hides the custom ultimate bar.") - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean hideUltimateBar = false; - - @Expose - @ConfigOption(name = "Bar Position", desc = "Change the position of the bar.") - @ConfigEditorButton(runnableId = "ultimate", buttonText = "Edit") - @ConfigAccordionId(id = 2) - public Position barPosition = new Position(0, 50, true, false); - - @Expose - @ConfigOption(name = "Bar Loading Color", desc = "The color of the bar when its loading.") - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String barLoadColor = "159:0:0:0:255"; - - @Expose - @ConfigOption(name = "Bar Full Color", desc = "The color of the bar when its full.") - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String barFullColor = "255:0:0:0:255"; - - @Expose - @ConfigOption(name = "Bar Style", desc = "Change the style of the bar") - @ConfigEditorDropdown(values = { "No Notch", "6 Notch", "10 Notch", "12 Notch", "20 Notch" }) - @ConfigAccordionId(id = 2) - public int barStyle = 2; - - @Expose - @ConfigOption(name = "Dungeon Players", desc = "") - @ConfigEditorAccordion(id = 1) - public boolean dungeonPlayerAccordion = false; - - @Expose - @ConfigOption(name = "Hide Dungeon Players", desc = "Allows you to hide the dungeon player hud") - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean hideDungeonPlayers = false; - - @Expose - @ConfigOption(name = "Dungeon Player Opacity", desc = "Allows you to change the opacity of the dungeon players.") - @ConfigEditorSlider(minValue = 0, maxValue = 100, minStep = 1) - @ConfigAccordionId(id = 1) - public int dungeonPlayerOpacity = 0; - - @Expose - @ConfigOption(name = "Hide Dead Players", desc = "Allows you to hide players that are dead or have left.") - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean hideDeadDungeonPlayers = false; - - @Expose - @ConfigOption(name = "Player Position 1", desc = "Change the position of this dungeon player.") - @ConfigEditorButton(runnableId = "d1", buttonText = "Edit") - @ConfigAccordionId(id = 1) - public Position dungeonPlayer1 = new Position(5, 5); - - @Expose - @ConfigOption(name = "Player Position 2", desc = "Change the position of this dungeon player.") - @ConfigEditorButton(runnableId = "d2", buttonText = "Edit") - @ConfigAccordionId(id = 1) - public Position dungeonPlayer2 = new Position(5, 42); - - @Expose - @ConfigOption(name = "Player Position 3", desc = "Change the position of this dungeon player.") - @ConfigEditorButton(runnableId = "d3", buttonText = "Edit") - @ConfigAccordionId(id = 1) - public Position dungeonPlayer3 = new Position(5, 79); - - @Expose - @ConfigOption(name = "Player Position 4", desc = "Change the position of this dungeon player.") - @ConfigEditorButton(runnableId = "d4", buttonText = "Edit") - @ConfigAccordionId(id = 1) - public Position dungeonPlayer4 = new Position(5, 116); - } - - public static class Renderer { - - @Expose - @ConfigOption(name = "Add Overflow Mana Back", desc = "Adds overflow mana back to the actionbar") - @ConfigEditorBoolean - public boolean addOverflowMana = false; - - @Expose - @ConfigOption(name = "Hide Boss Bar", desc = "Hides Boss Bar when certain conditions are met such as the name is just wither or it starts with objective:") - @ConfigEditorBoolean - public boolean hideBossBar = true; - - @Expose - @ConfigOption(name = "Hide XP Bar", desc = "Hides xp bar.") - @ConfigEditorBoolean - public boolean hideXpBar = true; - - @Expose - @ConfigOption(name = "Hide Food", desc = "Hides food.") - @ConfigEditorBoolean - public boolean hideFood = true; - - @Expose - @ConfigOption(name = "Hide air", desc = "Hides air.") - @ConfigEditorBoolean - public boolean hideAir = true; - - @Expose - @ConfigOption(name = "Hide hearts", desc = "Hides hearts.") - @ConfigEditorBoolean - public boolean hideHearts = true; - - @Expose - @ConfigOption(name = "Hide armor", desc = "Hides armor.") - @ConfigEditorBoolean - public boolean hideArmor = true