aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java128
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/GameSDK.java176
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/GameSDKTypeMapper.java46
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/NativeGameSDK.java50
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java42
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java32
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java33
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java32
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java60
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java32
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java35
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java33
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java39
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java32
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java32
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java33
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java36
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java33
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordStruct.java36
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java38
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java36
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordActivityActionType.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordActivityJoinRequestReply.java68
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordActivityType.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordCreateFlags.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordEntitlementType.java72
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordImageType.java66
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordInputModeType.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordLobbySearchCast.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordLobbySearchComparison.java71
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordLobbySearchDistance.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordLobbyType.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordLogLevel.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordPremiumType.java68
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordRelationshipType.java71
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordResult.java109
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordSkuType.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordStatus.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/enumuration/EDiscordUserFlag.java70
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/GameSDKCallback.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java35
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java53
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java46
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java59
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java56
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java87
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java48
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java59
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java144
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java38
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java48
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java53
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java41
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java61
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java52
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java38
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java49
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java76
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java38
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java69
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java50
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java34
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java67
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordClientID.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordNetworkChannelId.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordNetworkPeerId.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordSnowflake.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordTimestamp.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/DiscordVersion.java30
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/Int32.java31
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/Int64.java31
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/UInt32.java31
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/UInt64.java31
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/typedef/UInt8.java31
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/party/PartyInviteViewer.java15
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/party/PartyJoinRequest.java4
-rw-r--r--src/main/java/net/arikia/dev/drpc/DiscordEventHandlers.java108
-rw-r--r--src/main/java/net/arikia/dev/drpc/DiscordRPC.java252
-rw-r--r--src/main/java/net/arikia/dev/drpc/DiscordRichPresence.java244
-rw-r--r--src/main/java/net/arikia/dev/drpc/DiscordUser.java57
-rw-r--r--src/main/java/net/arikia/dev/drpc/OSUtil.java43
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/DisconnectedCallback.java39
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/ErroredCallback.java39
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/JoinGameCallback.java38
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/JoinRequestCallback.java40
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/ReadyCallback.java41
-rw-r--r--src/main/java/net/arikia/dev/drpc/callbacks/SpectateGameCallback.java38
93 files changed, 4102 insertions, 1015 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
index d1175563..abecd8a7 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
@@ -27,8 +27,6 @@ import kr.syeyoung.dungeonsguide.party.PartyJoinRequest;
import kr.syeyoung.dungeonsguide.party.PartyManager;
import kr.syeyoung.dungeonsguide.stomp.StompHeader;
import kr.syeyoung.dungeonsguide.stomp.StompPayload;
-import net.arikia.dev.drpc.*;
-import net.arikia.dev.drpc.callbacks.*;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import org.json.JSONObject;
@@ -40,65 +38,65 @@ public class RichPresenceManager implements Runnable {
public RichPresenceManager() {
t.start();
- Runtime.getRuntime().addShutdownHook(new Thread(DiscordRPC::discordShutdown));
+// Runtime.getRuntime().addShutdownHook(new Thread(DiscordRPC::discordShutdown));
}
public void setup() {
- DiscordRPC.discordInitialize("816298079732498473", new DiscordEventHandlers.Builder()
- .setReadyEventHandler(new ReadyCallback() {
- @Override
- public void apply(DiscordUser user) {
- updatePresence();
- }
- }).setJoinRequestEventHandler(request -> {
- PartyJoinRequest partyJoinRequest = new PartyJoinRequest();
- partyJoinRequest.setDiscordUser(request);
- partyJoinRequest.setExpire(System.currentTimeMillis() + 30000);
-
- PartyInviteViewer.INSTANCE.joinRequests.add(partyJoinRequest);
- }).setJoinGameEventHandler(joinSecret -> {
- DungeonsGuide.getDungeonsGuide().getStompConnection().send(new StompPayload().method(StompHeader.SEND)
- .header("destination", "/app/party.askedtojoin")
- .payload(new JSONObject().put("token", joinSecret).toString()));
- }).setErroredEventHandler((errorCode, message) -> {
- System.out.println("ERROR! "+errorCode+ " - "+message);
- t.interrupt();
- (t = new Thread(this)).start();
- }).setDisconnectedEventHandler((errorCode, message) -> {
- System.out.println("ERROR! "+errorCode+ " - "+message);
- t.interrupt();
- (t = new Thread(this)).start();
- }).build(), true);
+// DiscordRPC.discordInitialize("816298079732498473", new DiscordEventHandlers.Builder()
+// .setReadyEventHandler(new ReadyCallback() {
+// @Override
+// public void apply(DiscordUser user) {
+// updatePresence();
+// }
+// }).setJoinRequestEventHandler(request -> {
+// PartyJoinRequest partyJoinRequest = new PartyJoinRequest();
+// partyJoinRequest.setDiscordUser(request);
+// partyJoinRequest.setExpire(System.currentTimeMillis() + 30000);
+//
+// PartyInviteViewer.INSTANCE.joinRequests.add(partyJoinRequest);
+// }).setJoinGameEventHandler(joinSecret -> {
+// DungeonsGuide.getDungeonsGuide().getStompConnection().send(new StompPayload().method(StompHeader.SEND)
+// .header("destination", "/app/party.askedtojoin")
+// .payload(new JSONObject().put("token", joinSecret).toString()));
+// }).setErroredEventHandler((errorCode, message) -> {
+// System.out.println("ERROR! "+errorCode+ " - "+message);
+// t.interrupt();
+// (t = new Thread(this)).start();
+// }).setDisconnectedEventHandler((errorCode, message) -> {
+// System.out.println("ERROR! "+errorCode+ " - "+message);
+// t.interrupt();
+// (t = new Thread(this)).start();
+// }).build(), true);
}
private final SkyblockStatus skyblockStatus = DungeonsGuide.getDungeonsGuide().getSkyblockStatus();
public void updatePresence() {
- if (!skyblockStatus.isOnHypixel() || !FeatureRegistry.ADVANCED_RICHPRESENCE.isEnabled() || (!skyblockStatus.isOnSkyblock() && FeatureRegistry.ADVANCED_RICHPRESENCE.<Boolean>getParameter("disablenotskyblock").getValue())) {
- DiscordRPC.discordClearPresence();
- } else {
- String name = skyblockStatus.getDungeonName();
- if (name.trim().equals("Your Island")) name = "Private Island";
- DiscordRichPresence.Builder richPresenceBuilder = new DiscordRichPresence.Builder(name);
- richPresenceBuilder.setBigImage("mort", "mort")
- .setParty(PartyManager.INSTANCE.getPartyID(), PartyManager.INSTANCE.getMemberCount(), PartyManager.INSTANCE.getMaxParty());
-
- if (skyblockStatus.getContext() != null) {
- DungeonContext dungeonContext = skyblockStatus.getContext();
- long init = dungeonContext.getInit();
- richPresenceBuilder.setStartTimestamps(init);
-
- if (dungeonContext.getBossfightProcessor() != null) {
- richPresenceBuilder.setDetails("Fighting "+dungeonContext.getBossfightProcessor().getBossName()+": "+dungeonContext.getBossfightProcessor().getCurrentPhase());
- } else {
- richPresenceBuilder.setDetails("Clearing rooms");
- }
- }
- if (PartyManager.INSTANCE.isAllowAskToJoin())
- richPresenceBuilder.setSecrets(PartyManager.INSTANCE.getAskToJoinSecret(), null);
- richPresenceBuilder.setDetails("Dungeons Guide");
- DiscordRPC.discordUpdatePresence(richPresenceBuilder.build());
- }
+// if (!skyblockStatus.isOnHypixel