From cfa0aa0c9a24aa739d3254b24ef4bf0bea7087a6 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Thu, 7 Jan 2021 12:57:35 +0800 Subject: PRE4 --- .../notenoughupdates/questing/SBInfo.java | 126 --------------------- 1 file changed, 126 deletions(-) delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/questing/SBInfo.java (limited to 'src/main/java/io/github/moulberry/notenoughupdates/questing/SBInfo.java') diff --git a/src/main/java/io/github/moulberry/notenoughupdates/questing/SBInfo.java b/src/main/java/io/github/moulberry/notenoughupdates/questing/SBInfo.java deleted file mode 100644 index 67cd79a9..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/questing/SBInfo.java +++ /dev/null @@ -1,126 +0,0 @@ -package io.github.moulberry.notenoughupdates.questing; - -import com.google.gson.JsonObject; -import io.github.moulberry.notenoughupdates.NotEnoughUpdates; -import io.github.moulberry.notenoughupdates.util.Utils; -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.client.event.ClientChatReceivedEvent; -import net.minecraftforge.event.world.WorldEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class SBInfo { - - private static final SBInfo INSTANCE = new SBInfo(); - - private static final Pattern timePattern = Pattern.compile(".+(am|pm)"); - - public String location = ""; - public String date = ""; - public String time = ""; - public String objective = ""; - - public String mode = ""; - - public Date currentTimeDate = null; - - public static SBInfo getInstance() { - return INSTANCE; - } - - private long lastLocRaw = -1; - private JsonObject locraw = null; - - @SubscribeEvent - public void onWorldChange(WorldEvent.Load event) { - lastLocRaw = -1; - locraw = null; - } - - @SubscribeEvent - public void onChatMessage(ClientChatReceivedEvent event) { - if(event.message.getUnformattedText().startsWith("{")) { - try { - JsonObject obj = NotEnoughUpdates.INSTANCE.manager.gson.fromJson(event.message.getUnformattedText(), JsonObject.class); - if(obj.has("server")) { - event.setCanceled(true); - if(obj.has("gametype") && obj.has("mode") && obj.has("map")) { - locraw = obj; - } - } - - } catch(Exception e) { - e.printStackTrace(); - } - } - } - - public String getLocation() { - if(locraw == null) { - return null; - } - return locraw.get("mode").getAsString(); - } - - public void tick() { - if(locraw == null && (System.currentTimeMillis() - lastLocRaw) > 20000) { - lastLocRaw = System.currentTimeMillis(); - NotEnoughUpdates.INSTANCE.sendChatMessage("/locraw"); - } - - try { - Scoreboard scoreboard = Minecraft.getMinecraft().thePlayer.getWorldScoreboard(); - - ScoreObjective sidebarObjective = scoreboard.getObjectiveInDisplaySlot(1); //§707/14/20 - - List scores = new ArrayList<>(scoreboard.getSortedScores(sidebarObjective)); - - List lines = new ArrayList<>(); - for(int i=scores.size()-1; i>=0; i--) { - Score score = scores.get(i); - ScorePlayerTeam scoreplayerteam1 = scoreboard.getPlayersTeam(score.getPlayerName()); - String line = ScorePlayerTeam.formatPlayerName(scoreplayerteam1, score.getPlayerName()); - line = Utils.cleanDuplicateColourCodes(line); - lines.add(line); - } - if(lines.size() >= 5) { - date = Utils.cleanColour(lines.get(1)).trim(); - //§74:40am - Matcher matcher = timePattern.matcher(lines.get(2)); - if(matcher.find()) { - time = Utils.cleanColour(matcher.group()).trim(); - try { - String timeSpace = time.replace("am", " am").replace("pm", " pm"); - SimpleDateFormat parseFormat = new SimpleDateFormat("hh:mm a"); - currentTimeDate = parseFormat.parse(timeSpace); - } catch (ParseException e) {} - } - location = Utils.cleanColour(lines.get(3)).replaceAll("[^A-Za-z0-9() ]", "").trim(); - } - objective = null; - - boolean objTextLast = false; - for(String line : lines) { - if(objTextLast) { - objective = line; - } - - objTextLast = line.equals("Objective"); - } - } catch(Exception e) { - e.printStackTrace(); - } - } - -} -- cgit