aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/Danker
diff options
context:
space:
mode:
authorbowser0000 <bowser0000@gmail.com>2021-08-06 20:45:44 -0400
committerbowser0000 <bowser0000@gmail.com>2021-08-06 20:45:44 -0400
commit4ef36d87f423c021891075e8015b5f20760510fd (patch)
tree44471340a0575881c78ff02eafaad37d3c2710fa /src/main/java/me/Danker
parenta40b6338955f469f4a476b0d9b0ff61952289bcb (diff)
downloadSkyblockMod-4ef36d87f423c021891075e8015b5f20760510fd.tar.gz
SkyblockMod-4ef36d87f423c021891075e8015b5f20760510fd.tar.bz2
SkyblockMod-4ef36d87f423c021891075e8015b5f20760510fd.zip
Add option to use lily weight in /weight
Diffstat (limited to 'src/main/java/me/Danker')
-rw-r--r--src/main/java/me/Danker/commands/ArmourCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/BankCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/DHelpCommand.java1
-rw-r--r--src/main/java/me/Danker/commands/DungeonsCommand.java4
-rw-r--r--src/main/java/me/Danker/commands/FairySoulsCommand.java4
-rw-r--r--src/main/java/me/Danker/commands/GuildOfCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/ImportFishingCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/LobbyBankCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/LobbySkillsCommand.java4
-rw-r--r--src/main/java/me/Danker/commands/PetsCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/PlayerCommand.java6
-rw-r--r--src/main/java/me/Danker/commands/SkillsCommand.java4
-rw-r--r--src/main/java/me/Danker/commands/SkyblockPlayersCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/SlayerCommand.java2
-rw-r--r--src/main/java/me/Danker/commands/WeightCommand.java87
-rw-r--r--src/main/java/me/Danker/features/UpdateChecker.java2
-rw-r--r--src/main/java/me/Danker/features/puzzlesolvers/BlazeSolver.java5
-rw-r--r--src/main/java/me/Danker/handlers/APIHandler.java8
-rw-r--r--src/main/java/me/Danker/utils/Utils.java2
19 files changed, 87 insertions, 56 deletions
diff --git a/src/main/java/me/Danker/commands/ArmourCommand.java b/src/main/java/me/Danker/commands/ArmourCommand.java
index 4597309..9b6630c 100644
--- a/src/main/java/me/Danker/commands/ArmourCommand.java
+++ b/src/main/java/me/Danker/commands/ArmourCommand.java
@@ -88,7 +88,7 @@ public class ArmourCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/BankCommand.java b/src/main/java/me/Danker/commands/BankCommand.java
index ddf9502..0de6bde 100644
--- a/src/main/java/me/Danker/commands/BankCommand.java
+++ b/src/main/java/me/Danker/commands/BankCommand.java
@@ -83,7 +83,7 @@ public class BankCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/DHelpCommand.java b/src/main/java/me/Danker/commands/DHelpCommand.java
index b88f6cc..c82eb0e 100644
--- a/src/main/java/me/Danker/commands/DHelpCommand.java
+++ b/src/main/java/me/Danker/commands/DHelpCommand.java
@@ -50,6 +50,7 @@ public class DHelpCommand extends CommandBase {
EnumChatFormatting.GOLD + BankCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Uses API to get bank and purse coins of a person. If no name is provided, it checks yours.\n" +
EnumChatFormatting.GOLD + ArmourCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Uses API to get armour of a person. If no name is provided, it checks yours.\n" +
EnumChatFormatting.GOLD + DungeonsCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Uses API to get dungeon levels of a person. If no name is provided, it checks yours.\n" +
+ EnumChatFormatting.GOLD + WeightCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Uses API to get weight of a person. If no name is provided, it checks yours. Adding lily uses lily's weight instead of Senither's.\n" +
EnumChatFormatting.GOLD + ImportFishingCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Imports your fishing stats from your latest profile to your fishing tracker using the API.\n" +
EnumChatFormatting.GOLD + SkyblockPlayersCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Uses API to find how many players are on each Skyblock island.\n" +
EnumChatFormatting.GOLD + SkillTrackerCommand.usage(arg0) + EnumChatFormatting.AQUA + " - Text display for skill xp/hour.\n" +
diff --git a/src/main/java/me/Danker/commands/DungeonsCommand.java b/src/main/java/me/Danker/commands/DungeonsCommand.java
index 3391a08..482bcd0 100644
--- a/src/main/java/me/Danker/commands/DungeonsCommand.java
+++ b/src/main/java/me/Danker/commands/DungeonsCommand.java
@@ -76,7 +76,7 @@ public class DungeonsCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
@@ -85,7 +85,7 @@ public class DungeonsCommand extends CommandBase {
String playerURL = "https://api.hypixel.net/player?uuid=" + uuid + "&key=" + key;
System.out.println("Fetching player data...");
- JsonObject playerResponse = APIHandler.getResponse(playerURL);
+ JsonObject playerResponse = APIHandler.getResponse(playerURL, true);
if (!playerResponse.get("success").getAsBoolean()) {
String reason = playerResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/FairySoulsCommand.java b/src/main/java/me/Danker/commands/FairySoulsCommand.java
index b93d596..00ac7bb 100644
--- a/src/main/java/me/Danker/commands/FairySoulsCommand.java
+++ b/src/main/java/me/Danker/commands/FairySoulsCommand.java
@@ -74,7 +74,7 @@ public class FairySoulsCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
@@ -88,7 +88,7 @@ public class FairySoulsCommand extends CommandBase {
int fairy_souls = userObject.get("fairy_souls_collected").getAsInt();
System.out.println(fairy_souls);
- player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "The player " + username + " has " + DankersSkyblockMod.VALUE_COLOUR + fairy_souls + DankersSkyblockMod.MAIN_COLOUR + "/222" + " collected"));
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "The player " + username + " has " + DankersSkyblockMod.VALUE_COLOUR + fairy_souls + DankersSkyblockMod.MAIN_COLOUR + "/227" + " collected"));
}).start();
diff --git a/src/main/java/me/Danker/commands/GuildOfCommand.java b/src/main/java/me/Danker/commands/GuildOfCommand.java
index 1c9f1c4..e9ac8ba 100644
--- a/src/main/java/me/Danker/commands/GuildOfCommand.java
+++ b/src/main/java/me/Danker/commands/GuildOfCommand.java
@@ -74,7 +74,7 @@ public class GuildOfCommand extends CommandBase {
// Find guild ID
System.out.println("Fetching guild...");
String guildURL = "https://api.hypixel.net/guild?player=" + uuid + "&key=" + key;
- JsonObject guildResponse = APIHandler.getResponse(guildURL);
+ JsonObject guildResponse = APIHandler.getResponse(guildURL, true);
if (!guildResponse.get("success").getAsBoolean()) {
String reason = guildResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/ImportFishingCommand.java b/src/main/java/me/Danker/commands/ImportFishingCommand.java
index 4aeff2c..8d40c0c 100644
--- a/src/main/java/me/Danker/commands/ImportFishingCommand.java
+++ b/src/main/java/me/Danker/commands/ImportFishingCommand.java
@@ -54,7 +54,7 @@ public class ImportFishingCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/LobbyBankCommand.java b/src/main/java/me/Danker/commands/LobbyBankCommand.java
index 886077c..165750b 100644
--- a/src/main/java/me/Danker/commands/LobbyBankCommand.java
+++ b/src/main/java/me/Danker/commands/LobbyBankCommand.java
@@ -65,7 +65,7 @@ public class LobbyBankCommand extends CommandBase {
long biggestLastSave = 0;
int profileIndex = -1;
Thread.sleep(600);
- JsonObject profileResponse = APIHandler.getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key);
+ JsonObject profileResponse = APIHandler.getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
System.out.println("User " + player.getGameProfile().getName() + " failed with reason: " + reason);
diff --git a/src/main/java/me/Danker/commands/LobbySkillsCommand.java b/src/main/java/me/Danker/commands/LobbySkillsCommand.java
index b6cd87d..dd5c249 100644
--- a/src/main/java/me/Danker/commands/LobbySkillsCommand.java
+++ b/src/main/java/me/Danker/commands/LobbySkillsCommand.java
@@ -68,7 +68,7 @@ public class LobbySkillsCommand extends CommandBase {
long biggestLastSave = 0;
int profileIndex = -1;
Thread.sleep(600);
- JsonObject profileResponse = APIHandler.getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key);
+ JsonObject profileResponse = APIHandler.getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
System.out.println("User " + player.getGameProfile().getName() + " failed with reason: " + reason);
@@ -134,7 +134,7 @@ public class LobbySkillsCommand extends CommandBase {
} else {
Thread.sleep(600); // Sleep for another request
System.out.println("Fetching skills from achievement API");
- JsonObject playerObject = APIHandler.getResponse("https://api.hypixel.net/player?uuid=" + UUID + "&key=" + key);
+ JsonObject playerObject = APIHandler.getResponse("https://api.hypixel.net/player?uuid=" + UUID + "&key=" + key, true);
if (!playerObject.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
diff --git a/src/main/java/me/Danker/commands/PetsCommand.java b/src/main/java/me/Danker/commands/PetsCommand.java
index fc2f691..f35fee4 100644
--- a/src/main/java/me/Danker/commands/PetsCommand.java
+++ b/src/main/java/me/Danker/commands/PetsCommand.java
@@ -176,7 +176,7 @@ public class PetsCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/PlayerCommand.java b/src/main/java/me/Danker/commands/PlayerCommand.java
index 6236168..f097501 100644
--- a/src/main/java/me/Danker/commands/PlayerCommand.java
+++ b/src/main/java/me/Danker/commands/PlayerCommand.java
@@ -78,7 +78,7 @@ public class PlayerCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
@@ -136,7 +136,7 @@ public class PlayerCommand extends CommandBase {
String playerURL = "https://api.hypixel.net/player?uuid=" + uuid + "&key=" + key;
System.out.println("Fetching skills from achievement API");
- JsonObject playerObject = APIHandler.getResponse(playerURL);
+ JsonObject playerObject = APIHandler.getResponse(playerURL, true);
if (!playerObject.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
@@ -214,7 +214,7 @@ public class PlayerCommand extends CommandBase {
// Weight
System.out.println("Fetching weight from Senither API...");
String weightURL = "https://hypixel-api.senither.com/v1/profiles/" + uuid + "/weight?key=" + key;
- JsonObject weightResponse = APIHandler.getResponse(weightURL);
+ JsonObject weightResponse = APIHandler.getResponse(weightURL, true);
if (weightResponse.get("status").getAsInt() != 200) {
String reason = weightResponse.get("reason").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/SkillsCommand.java b/src/main/java/me/Danker/commands/SkillsCommand.java
index 6195e81..533c804 100644
--- a/src/main/java/me/Danker/commands/SkillsCommand.java
+++ b/src/main/java/me/Danker/commands/SkillsCommand.java
@@ -75,7 +75,7 @@ public class SkillsCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
@@ -132,7 +132,7 @@ public class SkillsCommand extends CommandBase {
String playerURL = "https://api.hypixel.net/player?uuid=" + uuid + "&key=" + key;
System.out.println("Fetching skills from achievement API");
- JsonObject playerObject = APIHandler.getResponse(playerURL);
+ JsonObject playerObject = APIHandler.getResponse(playerURL, true);
if (!playerObject.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
diff --git a/src/main/java/me/Danker/commands/SkyblockPlayersCommand.java b/src/main/java/me/Danker/commands/SkyblockPlayersCommand.java
index 2d05815..ced8906 100644
--- a/src/main/java/me/Danker/commands/SkyblockPlayersCommand.java
+++ b/src/main/java/me/Danker/commands/SkyblockPlayersCommand.java
@@ -57,7 +57,7 @@ public class SkyblockPlayersCommand extends CommandBase {
String playersURL = "https://api.hypixel.net/gameCounts?key=" + key;
System.out.println("Fetching player count...");
- JsonObject playersResponse = APIHandler.getResponse(playersURL);
+ JsonObject playersResponse = APIHandler.getResponse(playersURL, true);
if (!playersResponse.get("success").getAsBoolean()) {
String reason = playersResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/SlayerCommand.java b/src/main/java/me/Danker/commands/SlayerCommand.java
index 0efac3f..4d17534 100644
--- a/src/main/java/me/Danker/commands/SlayerCommand.java
+++ b/src/main/java/me/Danker/commands/SlayerCommand.java
@@ -83,7 +83,7 @@ public class SlayerCommand extends CommandBase {
String profileURL = "https://api.hypixel.net/skyblock/profile?profile=" + latestProfile + "&key=" + key;
System.out.println("Fetching profile...");
- JsonObject profileResponse = APIHandler.getResponse(profileURL);
+ JsonObject profileResponse = APIHandler.getResponse(profileURL, true);
if (!profileResponse.get("success").getAsBoolean()) {
String reason = profileResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/commands/WeightCommand.java b/src/main/java/me/Danker/commands/WeightCommand.java
index 41c59d8..7593f65 100644
--- a/src/main/java/me/Danker/commands/WeightCommand.java
+++ b/src/main/java/me/Danker/commands/WeightCommand.java
@@ -26,7 +26,7 @@ public class WeightCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
- return "/" + getCommandName() + " [name]";
+ return "/" + getCommandName() + " [name] [lily]";
}
public static String usage(ICommandSender arg0) {
@@ -72,33 +72,66 @@ public class WeightCommand extends CommandBase {
uuid = APIHandler.getUUID(username);
}
- System.out.println("Fetching weight from Senither API...");
- String weightURL = "https://hypixel-api.senither.com/v1/profiles/" + uuid + "/weight?key=" + key;
- JsonObject weightResponse = APIHandler.getResponse(weightURL);
- if (weightResponse.get("status").getAsInt() != 200) {
- String reason = weightResponse.get("reason").getAsString();
- player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
- return;
- }
+ if (arg1.length < 2) {
+ System.out.println("Fetching weight from Senither API...");
+ String weightURL = "https://hypixel-api.senither.com/v1/profiles/" + uuid + "/weight?key=" + key;
+ JsonObject weightResponse = APIHandler.getResponse(weightURL, true);
+ if (weightResponse.get("status").getAsInt() != 200) {
+ String reason = weightResponse.get("reason").getAsString();
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
+ return;
+ }
+
+ JsonObject data = weightResponse.get("data").getAsJsonObject();
+ double weight = data.get("weight").getAsDouble();
+ double overflow = data.get("weight_overflow").getAsDouble();
+ double skillWeight = data.get("skills").getAsJsonObject().get("weight").getAsDouble();
+ double skillOverflow = data.get("skills").getAsJsonObject().get("weight_overflow").getAsDouble();
+ double slayerWeight = data.get("slayers").getAsJsonObject().get("weight").getAsDouble();
+ double slayerOverflow = data.get("slayers").getAsJsonObject().get("weight_overflow").getAsDouble();
+ double dungeonWeight = data.get("dungeons").getAsJsonObject().get("weight").getAsDouble();
+ double dungeonOverflow = data.get("dungeons").getAsJsonObject().get("weight_overflow").getAsDouble();
+
+ NumberFormat nf = NumberFormat.getNumberInstance(Locale.US);
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.DELIMITER_COLOUR + "" + EnumChatFormatting.BOLD + "-------------------\n" +
+ EnumChatFormatting.AQUA + " " + username + "'s Weight:\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Total Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(weight + overflow) + " (" + nf.format(weight) + " + " + nf.format(overflow) + ")\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Skill Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(skillWeight + skillOverflow) + " (" + nf.format(skillWeight) + " + " + nf.format(skillOverflow) + ")\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Slayers Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(slayerWeight + slayerOverflow) + " (" + nf.format(slayerWeight) + " + " + nf.format(slayerOverflow) + ")\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Dungeons Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(dungeonWeight + dungeonOverflow) + " (" + nf.format(dungeonWeight) + " + " + nf.format(dungeonOverflow) + ")\n" +
+ DankersSkyblockMod.DELIMITER_COLOUR + " " + EnumChatFormatting.BOLD + "-------------------"));
+ } else if (arg1[1].equalsIgnoreCase("lily")) {
+ System.out.println("Fetching weight from Lily API...");
+ String weightURL = "https://lily.antonio32a.com/" + uuid + "?key=" + key;
+ JsonObject weightResponse = APIHandler.getResponse(weightURL, true);
+ if (!weightResponse.get("success").getAsBoolean()) {
+ String reason = weightResponse.get("error").getAsString();
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
+ return;
+ }
- JsonObject data = weightResponse.get("data").getAsJsonObject();
- double weight = data.get("weight").getAsDouble();
- double overflow = data.get("weight_overflow").getAsDouble();
- double skillWeight = data.get("skills").getAsJsonObject().get("weight").getAsDouble();
- double skillOverflow = data.get("skills").getAsJsonObject().get("weight_overflow").getAsDouble();
- double slayerWeight = data.get("slayers").getAsJsonObject().get("weight").getAsDouble();
- double slayerOverflow = data.get("slayers").getAsJsonObject().get("weight_overflow").getAsDouble();
- double dungeonWeight = data.get("dungeons").getAsJsonObject().get("weight").getAsDouble();
- double dungeonOverflow = data.get("dungeons").getAsJsonObject().get("weight_overflow").getAsDouble();
-
- NumberFormat nf = NumberFormat.getNumberInstance(Locale.US);
- player.addChatMessage(new ChatComponentText(DankersSkyblockMod.DELIMITER_COLOUR + "" + EnumChatFormatting.BOLD + "-------------------\n" +
- EnumChatFormatting.AQUA + " " + username + "'s Weight:\n" +
- DankersSkyblockMod.TYPE_COLOUR + " Total Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(weight + overflow) + " (" + nf.format(weight) + " + " + nf.format(overflow) + ")\n" +
- DankersSkyblockMod.TYPE_COLOUR + " Skill Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(skillWeight + skillOverflow) + " (" + nf.format(skillWeight) + " + " + nf.format(skillOverflow) + ")\n" +
- DankersSkyblockMod.TYPE_COLOUR + " Slayers Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(slayerWeight + slayerOverflow) + " (" + nf.format(slayerWeight) + " + " + nf.format(slayerOverflow) + ")\n" +
- DankersSkyblockMod.TYPE_COLOUR + " Dungeons Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(dungeonWeight + dungeonOverflow) + " (" + nf.format(dungeonWeight) + " + " + nf.format(dungeonOverflow) + ")\n" +
- DankersSkyblockMod.DELIMITER_COLOUR + " " + EnumChatFormatting.BOLD + "-------------------"));
+ JsonObject data = weightResponse.get("data").getAsJsonObject();
+ double weight = data.get("total").getAsDouble();
+ double skillWeight = data.get("skill").getAsJsonObject().get("base").getAsDouble();
+ double skillOverflow = data.get("skill").getAsJsonObject().get("overflow").getAsDouble();
+ double slayerWeight = data.get("slayer").getAsDouble();
+ double catacombsXPWeight = data.get("catacombs").getAsJsonObject().get("experience").getAsDouble();
+ double catacombsBaseWeight = data.get("catacombs").getAsJsonObject().get("completion").getAsJsonObject().get("base").getAsDouble();
+ double catacombsMasterWeight = data.get("catacombs").getAsJsonObject().get("completion").getAsJsonObject().get("master").getAsDouble();
+
+ NumberFormat nf = NumberFormat.getNumberInstance(Locale.US);
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.DELIMITER_COLOUR + "" + EnumChatFormatting.BOLD + "-------------------\n" +
+ EnumChatFormatting.AQUA + " " + username + "'s Weight (Lily):\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Total Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(weight) + "\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Skill Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(skillWeight + skillOverflow) + " (" + nf.format(skillWeight) + " + " + nf.format(skillOverflow) + ")\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Slayers Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(slayerWeight) + "\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Catacombs XP Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(catacombsXPWeight) + "\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Catacombs Completion Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(catacombsBaseWeight) + "\n" +
+ DankersSkyblockMod.TYPE_COLOUR + " Catacombs Master Completion Weight: " + DankersSkyblockMod.VALUE_COLOUR + nf.format(catacombsMasterWeight) + "\n" +
+ DankersSkyblockMod.DELIMITER_COLOUR + " " + EnumChatFormatting.BOLD + "-------------------"));
+ } else {
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Usage: " + getCommandUsage(arg0)));
+ }
}).start();
}
diff --git a/src/main/java/me/Danker/features/UpdateChecker.java b/src/main/java/me/Danker/features/UpdateChecker.java
index 747fe91..7fe75b0 100644
--- a/src/main/java/me/Danker/features/UpdateChecker.java
+++ b/src/main/java/me/Danker/features/UpdateChecker.java
@@ -26,7 +26,7 @@ public class UpdateChecker {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
System.out.println("Checking for updates...");
- JsonObject latestRelease = APIHandler.getResponse("https://api.github.com/repos/bowser0000/SkyblockMod/releases/latest");
+ JsonObject latestRelease = APIHandler.getResponse("https://api.github.com/repos/bowser0000/SkyblockMod/releases/latest", false);
String latestTag = latestRelease.get("tag_name").getAsString();
DefaultArtifactVersion currentVersion = new DefaultArtifactVersion(DankersSkyblockMod.VERSION);
diff --git a/src/main/java/me/Danker/features/puzzlesolvers/BlazeSolver.java b/src/main/java/me/Danker/features/puzzlesolvers/BlazeSolver.java
index e9d6f3f..affe416 100644
--- a/src/main/java/me/Danker/features/puzzlesolvers/BlazeSolver.java
+++ b/src/main/java/me/Danker/features/puzzlesolvers/BlazeSolver.java
@@ -8,10 +8,7 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.entity.Entity;
import net.minecraft.init.Blocks;
-import net.minecraft.util.AxisAlignedBB;
-import net.minecraft.util.BlockPos;
-import net.minecraft.util.EnumChatFormatting;
-import net.minecraft.util.StringUtils;
+import net.minecraft.util.*;
import net.minecraft.world.World;
import net.minecraftforge.client.event.RenderWorldLastEvent;
import net.minecraftforge.event.world.WorldEvent;
diff --git a/src/main/java/me/Danker/handlers/APIHandler.java b/src/main/java/me/Danker/handlers/APIHandler.java
index 66001a3..4417973 100644
--- a/src/main/java/me/Danker/handlers/APIHandler.java
+++ b/src/main/java/me/Danker/handlers/APIHandler.java
@@ -18,7 +18,7 @@ import java.net.URL;
import java.util.Scanner;
public class APIHandler {
- public static JsonObject getResponse(String urlString) {
+ public static JsonObject getResponse(String urlString, boolean hasError) {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
try {
@@ -41,7 +41,7 @@ public class APIHandler {
return gson.fromJson(response.toString(), JsonObject.class);
} else {
- if (urlString.startsWith("https://api.hypixel.net/") || urlString.startsWith("https://hypixel-api.senither.com")) {
+ if (hasError) {
InputStream errorStream = conn.getErrorStream();
try (Scanner scanner = new Scanner(errorStream)) {
scanner.useDelimiter("\\Z");
@@ -98,7 +98,7 @@ public class APIHandler {
}
public static String getUUID(String username) {
- JsonObject uuidResponse = getResponse("https://api.mojang.com/users/profiles/minecraft/" + username);
+ JsonObject uuidResponse = getResponse("https://api.mojang.com/users/profiles/minecraft/" + username, false);
return uuidResponse.get("id").getAsString();
}
@@ -108,7 +108,7 @@ public class APIHandler {
// Get profiles
System.out.println("Fetching profiles...");
- JsonObject profilesResponse = getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key);
+ JsonObject profilesResponse = getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key, true);
if (!profilesResponse.get("success").getAsBoolean()) {
String reason = profilesResponse.get("cause").getAsString();
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason));
diff --git a/src/main/java/me/Danker/utils/Utils.java b/src/main/java/me/Danker/utils/Utils.java
index c1e76d7..31c791a 100644
--- a/src/main/java/me/Danker/utils/Utils.java
+++ b/src/main/java/me/Danker/utils/Utils.java
@@ -766,7 +766,7 @@ public class Utils {
}
public static void refreshRepo() {
- DankersSkyblockMod.data = APIHandler.getResponse("https://raw.githubusercontent.com/bowser0000/SkyblockMod-REPO/main/data.json");
+ DankersSkyblockMod.data = APIHandler.getResponse("https://raw.githubusercontent.com/bowser0000/SkyblockMod-REPO/main/data.json", false);
System.out.println("Loaded data from GitHub?: " + (DankersSkyblockMod.data != null && DankersSkyblockMod.data.has("trivia")));
ColouredNames.users = DankersSkyblockMod.data.get("colourednames").getAsJsonObject().entrySet().stream()
.map(Map.Entry::getKey)