aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java19
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/commands/CommandDungeonsGuide.java18
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/party/PartyManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessor.java2
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorBonzo.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorLivid.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorNecron.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorProf.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorSadan.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorScarf.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorThorn.java5
11 files changed, 73 insertions, 6 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
index fd72e758..04cb96ba 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
@@ -1,5 +1,6 @@
package kr.syeyoung.dungeonsguide;
+import kr.syeyoung.dungeonsguide.dungeon.DungeonContext;
import kr.syeyoung.dungeonsguide.events.SkyblockJoinedEvent;
import kr.syeyoung.dungeonsguide.events.SkyblockLeftEvent;
import kr.syeyoung.dungeonsguide.features.FeatureRegistry;
@@ -61,16 +62,22 @@ public class RichPresenceManager implements Runnable {
} else {
DiscordRichPresence.Builder richPresenceBuilder = new DiscordRichPresence.Builder(skyblockStatus.getDungeonName());
richPresenceBuilder.setBigImage("mort", "mort")
- .setParty(PartyManager.INSTANCE.getPartyID(), PartyManager.INSTANCE.getMemberCount(), 5);
+ .setParty(PartyManager.INSTANCE.getPartyID(), PartyManager.INSTANCE.getMemberCount(), PartyManager.INSTANCE.getMaxParty());
if (skyblockStatus.getContext() != null) {
- long init = skyblockStatus.getContext().getInit();
+ DungeonContext dungeonContext = skyblockStatus.getContext();
+ long init = dungeonContext.getInit();
richPresenceBuilder.setStartTimestamps(init);
- } else {
- if (PartyManager.INSTANCE.isAllowAskToJoin())
- richPresenceBuilder.setSecrets(PartyManager.INSTANCE.getAskToJoinSecret(), null);
+
+ if (dungeonContext.getBossfightProcessor() != null) {
+ richPresenceBuilder.setDetails("Fighting "+dungeonContext.getBossfightProcessor().getBossName()+": "+dungeonContext.getBossfightProcessor().getCurrentPhase());
+ } else {
+ richPresenceBuilder.setDetails("Clearing rooms");
+ }
}
- richPresenceBuilder.setDetails("Dungeons Guide RichPresence Test");
+ if (PartyManager.INSTANCE.isAllowAskToJoin())
+ richPresenceBuilder.setSecrets(PartyManager.INSTANCE.getAskToJoinSecret(), null);
+ richPresenceBuilder.setDetails("Dungeons Guide");
DiscordRPC.discordUpdatePresence(richPresenceBuilder.build());
}
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/commands/CommandDungeonsGuide.java b/src/main/java/kr/syeyoung/dungeonsguide/commands/CommandDungeonsGuide.java
index 455b8930..e4291a55 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/commands/CommandDungeonsGuide.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/commands/CommandDungeonsGuide.java
@@ -241,6 +241,24 @@ public class CommandDungeonsGuide extends CommandBase {
PartyManager.INSTANCE.toggleAllowAskToJoin();
sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §fToggled Ask to join to "+(PartyManager.INSTANCE.isAllowAskToJoin() ? "§eon" : "§coff")));
}
+ } else if (args[0].equalsIgnoreCase("partymax") || args[0].equalsIgnoreCase("pm")) {
+ if (args.length == 1){
+ sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §fCurrent party max is §e"+PartyManager.INSTANCE.getMaxParty()));
+ } else if (args.length == 2) {
+ try {
+ int partyMax = Integer.parseInt(args[1]);
+ if (partyMax < 2) {
+ sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §cparty max can't be smaller than 2"));
+ return;
+ }
+
+ PartyManager.INSTANCE.setMaxParty(partyMax);
+ sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §fSuccessfully set partymax to §e"+PartyManager.INSTANCE.getMaxParty()));
+ } catch (Exception e) {
+ sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §c"+args[1]+" is not valid number."));
+ return;
+ }
+ }
} else if (args[0].equals("partyid")) {
sender.addChatMessage(new ChatComponentText("§eDungeons Guide §7:: §fInternal Party id: "+PartyManager.INSTANCE.getPartyID()));
} else if (args[0].equalsIgnoreCase("loc")) {
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/party/PartyManager.java b/src/main/java/kr/syeyoung/dungeonsguide/party/PartyManager.java
index 36ce815f..02fdc610 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/party/PartyManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/party/PartyManager.java
@@ -12,6 +12,7 @@ import kr.syeyoung.dungeonsguide.stomp.StompPayload;
import kr.syeyoung.dungeonsguide.stomp.StompSubscription;
import kr.syeyoung.dungeonsguide.utils.TextUtils;
import lombok.Getter;
+import lombok.Setter;
import net.minecraft.client.Minecraft;
import net.minecraftforge.client.event.ClientChatReceivedEvent;
import net.minecraftforge.fml.common.eventhandler.EventPriority;
@@ -44,6 +45,10 @@ public class PartyManager implements StompMessageHandler {
private boolean canInvite = false;
private int invitedDash =0;
+ @Getter
+ @Setter
+ private int maxParty = 5;
+
public void toggleAllowAskToJoin() {
if (canInvite) allowAskToJoin = !allowAskToJoin;
if (allowAskToJoin) {
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessor.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessor.java
index 9d2541c0..907c3d49 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessor.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessor.java
@@ -10,4 +10,6 @@ public interface BossfightProcessor extends RoomProcessor {
List<String> getNextPhases();
List<HealthData> getHealths();
+
+ String getBossName();
} \ No newline at end of file
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorBonzo.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorBonzo.java
index 05722565..a1b05145 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorBonzo.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorBonzo.java
@@ -51,6 +51,11 @@ public class BossfightProcessorBonzo extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "Bonzo";
+ }
+
private EntityArmorStand bonzoStand;
@Override
// §e﴾ §c§lBonzo§r §e71k§c❤ §e﴿
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorLivid.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorLivid.java
index f9c41cbf..d53722a0 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorLivid.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorLivid.java
@@ -61,4 +61,9 @@ public class BossfightProcessorLivid extends GeneralBossfightProcessor {
healths.add(new HealthData(realLividName == null ? "unknown" : realLividName, (int) health,7000000 , true));
return healths;
}
+
+ @Override
+ public String getBossName() {
+ return realLividName == null ? "Livid" : realLividName;
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorNecron.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorNecron.java
index 0ad12a11..6260f62d 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorNecron.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorNecron.java
@@ -49,6 +49,11 @@ public class BossfightProcessorNecron extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "Necron";
+ }
+
private EntityArmorStand bonzoStand;
@Override
// §e﴾ §c§lBonzo§r §e71k§c❤ §e﴿
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorProf.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorProf.java
index 2bb269f6..4580cd32 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorProf.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorProf.java
@@ -98,6 +98,11 @@ public class BossfightProcessorProf extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "The Professor";
+ }
+
private EntityArmorStand profStand;
private EntityArmorStand laserGuard;
private EntityArmorStand chaosGuard;
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorSadan.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorSadan.java
index 2a0ee850..ae210b57 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorSadan.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorSadan.java
@@ -98,6 +98,11 @@ public class BossfightProcessorSadan extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "Sadan";
+ }
+
private EntityArmorStand sadanStand;
private EntityArmorStand diamondGiant;
private EntityArmorStand laserGiant;
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorScarf.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorScarf.java
index cfd01a1f..36fe2eb6 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorScarf.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorScarf.java
@@ -88,6 +88,11 @@ public class BossfightProcessorScarf extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "Scarf";
+ }
+
private EntityArmorStand scarfStand;
private EntityArmorStand priestStand;
private EntityArmorStand mageStand;
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorThorn.java b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorThorn.java
index 5732d68c..d07c4989 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorThorn.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/roomprocessor/bossfight/BossfightProcessorThorn.java
@@ -57,6 +57,11 @@ public class BossfightProcessorThorn extends GeneralBossfightProcessor {
return healths;
}
+ @Override
+ public String getBossName() {
+ return "Thorn";
+ }
+
public double calculatePercentage() {
int total = progressBar.size(), lit = 0;
if (total == 0) return 0;