aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java58
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java13
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/discord/DiscordRPCManager.java8
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/utils/Utils.java8
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json18
5 files changed, 61 insertions, 44 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
index d7145117..ec03439c 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
@@ -6,7 +6,6 @@ import me.xmrvizzy.skyblocker.discord.DiscordRPCManager;
import me.xmrvizzy.skyblocker.skyblock.dungeon.DungeonBlaze;
import me.xmrvizzy.skyblocker.utils.Utils;
import net.minecraft.client.MinecraftClient;
-import net.minecraft.text.Text;
import java.util.Objects;
@@ -29,30 +28,45 @@ public class SkyblockerMod {
public void onTick() {
MinecraftClient client = MinecraftClient.getInstance();
if (client == null) return;
-
+ System.out.println(ticks);
ticks++;
- if (ticks % 4 == 0)
- try {
- if (Utils.isDungeons) {
- DungeonBlaze.DungeonBlaze();
+ if(onHypxiel()) {
+ if (ticks % 4 == 0)
+ try {
+ if (Utils.isDungeons) {
+ DungeonBlaze.DungeonBlaze();
+ }
+ } catch (Exception e) {
+ //System.out.println("Blazesolver: " + e);
}
- } catch (Exception e) {
- //System.out.println("Blazesolver: " + e);
- }
- if (ticks % 20 == 0 ) {
- rpTimer++;
- if (rpTimer == 5){
- discordRPCManager.updatePresence();
- discordRPCManager.cycleCount++;
- if (discordRPCManager.cycleCount == 3) discordRPCManager.cycleCount = 0;
- rpTimer = 0;
+ if (ticks % 20 == 0) {
+ rpTimer++;
+ if (rpTimer == 5) {
+ if (discordRPCManager.isConnected && Utils.isSkyblock && SkyblockerConfig.get().richPresence.enableRichPresence) {
+ discordRPCManager.updatePresence();
+ }
+ if (discordRPCManager.isConnected && Utils.isSkyblock && SkyblockerConfig.get().richPresence.cycleMode) {
+ discordRPCManager.cycleCount++;
+ if (discordRPCManager.cycleCount == 3) discordRPCManager.cycleCount = 0;
+ }
+ rpTimer = 0;
+ }
+ if (client.world != null && !client.isInSingleplayer())
+ Utils.sbChecker();
+ if (!discordRPCManager.isConnected && Utils.isSkyblock && SkyblockerConfig.get().richPresence.enableRichPresence)
+ discordRPCManager.start();
+ if (discordRPCManager.isConnected && !SkyblockerConfig.get().richPresence.enableRichPresence)
+ discordRPCManager.stop();
+ ticks = 0;
}
- if (client.world != null && !client.isInSingleplayer())
+ } else {
+ if (ticks % 20 == 0) {
+ if (discordRPCManager.isConnected) {
+ discordRPCManager.stop();
+ }
Utils.sbChecker();
- if (!discordRPCManager.isConnected && Utils.isSkyblock && SkyblockerConfig.get().general.richPresence.enableRichPresence && onHypxiel()) discordRPCManager.start();
- if (discordRPCManager.isConnected && !SkyblockerConfig.get().general.richPresence.enableRichPresence) discordRPCManager.stop();
- if (client.world == null || client.isInSingleplayer() || !Utils.isSkyblock || !onHypxiel()) if (discordRPCManager.isConnected)discordRPCManager.stop();
- ticks = 0;
+ ticks = 0;
+ }
}
}
public static MinecraftClient client() {
@@ -65,7 +79,7 @@ public class SkyblockerMod {
}
public static boolean onHypxiel() {
try {
- return client() != null && !client().isInSingleplayer() && client().getCurrentServerEntry().address != null && client().getCurrentServerEntry().address.contains("hypixel.net");
+ return client() != null && !client().isInSingleplayer() && Objects.requireNonNull(client().getCurrentServerEntry()).address != null && client().getCurrentServerEntry().address.contains("hypixel.net");
} catch (NullPointerException exception) {
return false;
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
index c4251e6c..9471620b 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
@@ -24,23 +24,22 @@ public class SkyblockerConfig implements ConfigData {
@ConfigEntry.Gui.TransitiveObject
public Messages messages = new Messages();
+ @ConfigEntry.Category("richPresence")
+ @ConfigEntry.Gui.TransitiveObject
+ public RichPresence richPresence = new RichPresence();
+
public static class General {
- public String apiKey;
@ConfigEntry.Category("bars")
@ConfigEntry.Gui.CollapsibleObject(startExpanded = true)
public Bars bars = new Bars();
-
- @ConfigEntry.Category("RichPresence")
- @ConfigEntry.Gui.CollapsibleObject()
- public RichPresence richPresence = new RichPresence();
@ConfigEntry.Category("itemList")
- @ConfigEntry.Gui.CollapsibleObject()
+ @ConfigEntry.Gui.CollapsibleObject(startExpanded = true)
public ItemList itemList = new ItemList();
@ConfigEntry.Category("quicknav")
- @ConfigEntry.Gui.CollapsibleObject()
+ @ConfigEntry.Gui.CollapsibleObject(startExpanded = true)
public Quicknav quicknav = new Quicknav();
@ConfigEntry.Gui.Excluded
diff --git a/src/main/java/me/xmrvizzy/skyblocker/discord/DiscordRPCManager.java b/src/main/java/me/xmrvizzy/skyblocker/discord/DiscordRPCManager.java
index 84dcc0c5..96da1198 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/discord/DiscordRPCManager.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/discord/DiscordRPCManager.java
@@ -39,7 +39,7 @@ public class DiscordRPCManager implements IPCListener{
public void updatePresence(){
RichPresence presence = new RichPresence.Builder()
- .setState(SkyblockerConfig.get().general.richPresence.customMessage)
+ .setState(SkyblockerConfig.get().richPresence.customMessage)
.setDetails(getInfo())
.setStartTimestamp(startTimestamp)
.setLargeImage("skyblocker-default")
@@ -49,13 +49,13 @@ public class DiscordRPCManager implements IPCListener{
public String getInfo(){
String info = null;
- if (!SkyblockerConfig.get().general.richPresence.cycleMode){
- switch (SkyblockerConfig.get().general.richPresence.info){
+ if (!SkyblockerConfig.get().richPresence.cycleMode){
+ switch (SkyblockerConfig.get().richPresence.info){
case BITS -> info = "Bits: " + dFormat.format(Utils.getBits());
case PURSE -> info = "Purse: " + dFormat.format(Utils.getPurse());
case LOCATION -> info = "⏣ " + Utils.getLocation();
}
- } else if (SkyblockerConfig.get().general.richPresence.cycleMode){
+ } else if (SkyblockerConfig.get().richPresence.cycleMode){
switch (cycleCount){
case 0 -> info = "Bits: " + dFormat.format(Utils.getBits());
case 1 -> info = "Purse: " + dFormat.format(Utils.getPurse());
diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/Utils.java b/src/main/java/me/xmrvizzy/skyblocker/utils/Utils.java
index 71f4954a..c8e787e9 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/utils/Utils.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/utils/Utils.java
@@ -23,6 +23,11 @@ public class Utils {
public static void sbChecker() {
List<String> sidebar = getSidebar();
+ if (sidebar == null) {
+ isSkyblock = false;
+ isDungeons = false;
+ return;
+ }
String string = sidebar.toString();
if (sidebar.isEmpty()) return;
@@ -49,6 +54,7 @@ public class Utils {
String location = null;
List<String> sidebarLines = getSidebar();
try{
+ assert sidebarLines != null;
for (String sidebarLine : sidebarLines) {
if (sidebarLine.contains("⏣")) location = sidebarLine;
}
@@ -65,6 +71,7 @@ public class Utils {
List<String> sidebarLines = getSidebar();
try{
+ assert sidebarLines != null;
for (String sidebarLine : sidebarLines) {
if (sidebarLine.contains("Piggy:")) purseString = sidebarLine;
if (sidebarLine.contains("Purse:")) purseString = sidebarLine;
@@ -82,6 +89,7 @@ public class Utils {
String bitsString = null;
List<String> sidebarLines = getSidebar();
try{
+ assert sidebarLines != null;
for (String sidebarLine : sidebarLines) {
if (sidebarLine.contains("Bits")) bitsString = sidebarLine;
}
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index d8b5e17a..4e7d88bb 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -6,18 +6,17 @@
"text.autoconfig.skyblocker.title": "Skyblocker Settings",
"text.autoconfig.skyblocker.category.general": "General",
- "text.autoconfig.skyblocker.option.general.apiKey": "Hypixel API Key (WIP)",
"text.autoconfig.skyblocker.option.general.bars": "Health, Mana, Defence & XP Bars",
"text.autoconfig.skyblocker.option.general.bars.enableBars": "Enable Bars",
"text.autoconfig.skyblocker.option.general.quicknav": "Quicknav",
"text.autoconfig.skyblocker.option.general.quicknav.enableQuicknav": "Enable Quicknav",
- "text.autoconfig.skyblocker.option.general.richPresence": "Discord Rich Presence",
- "text.autoconfig.skyblocker.option.general.richPresence.info": "Skyblock Info",
- "text.autoconfig.skyblocker.option.general.richPresence.info.@Tooltip": "This value doesn't matter if you are cycling",
- "text.autoconfig.skyblocker.option.general.richPresence.cycleMode": "Cycle Skyblock Info",
- "text.autoconfig.skyblocker.option.general.richPresence.enableRichPresence": "Enabled",
- "text.autoconfig.skyblocker.option.general.richPresence.customMessage": "Custom Message",
+ "text.autoconfig.skyblocker.category.richPresence": "Discord Rich Presence",
+ "text.autoconfig.skyblocker.option.richPresence.info": "Skyblock Info",
+ "text.autoconfig.skyblocker.option.richPresence.info.@Tooltip": "This value doesn't matter if you are cycling",
+ "text.autoconfig.skyblocker.option.richPresence.cycleMode": "Cycle Skyblock Info",
+ "text.autoconfig.skyblocker.option.richPresence.enableRichPresence": "Enabled",
+ "text.autoconfig.skyblocker.option.richPresence.customMessage": "Custom Message",
"text.autoconfig.skyblocker.option.general.itemList": "Item List",
"text.autoconfig.skyblocker.option.general.itemList.enableItemList": "Enable Item List",
@@ -44,8 +43,5 @@
"text.autoconfig.skyblocker.option.messages.hideAOTE": "Hide AOTE Messages",
"text.autoconfig.skyblocker.option.messages.hideImplosion": "Hide Implosion Message",
"text.autoconfig.skyblocker.option.messages.hideMoltenWave": "Hide Molten Wave Message",
- "text.autoconfig.skyblocker.option.messages.hideAds": "Hide Ads From Public Chat",
-
- "text.autoconfig.skyblocker.category.fishing": "Fishing",
- "text.autoconfig.skyblocker.option.fishing.enableFishingDing": "Enable Fishing Ding"
+ "text.autoconfig.skyblocker.option.messages.hideAds": "Hide Ads From Public Chat"
} \ No newline at end of file