aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--out/discord_game_sdk.h237
-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
-rw-r--r--src/main/resources/darwin/libdiscord-rpc.dylibbin273216 -> 0 bytes
-rw-r--r--src/main/resources/gamesdk/darwin/libdiscord_game_sdk.dylibbin0 -> 4130000 bytes
-rw-r--r--src/main/resources/gamesdk/linux/libdiscord_game_sdk.sobin0 -> 7122200 bytes
-rw-r--r--src/main/resources/gamesdk/win-x64/discord_game_sdk.dllbin0 -> 3891512 bytes
-rw-r--r--src/main/resources/gamesdk/win-x86/discord_game_sdk.dllbin0 -> 3154744 bytes
-rw-r--r--src/main/resources/linux/libdiscord-rpc.sobin661560 -> 0 bytes
-rw-r--r--src/main/resources/win-x64/discord-rpc.dllbin399880 -> 0 bytes
-rw-r--r--src/main/resources/win-x86/discord-rpc.dllbin307720 -> 0 bytes
102 files changed, 4339 insertions, 1015 deletions
diff --git a/out/discord_game_sdk.h b/out/discord_game_sdk.h
new file mode 100644
index 00000000..779be2e2
--- /dev/null
+++ b/out/discord_game_sdk.h
@@ -0,0 +1,237 @@
+struct IDiscordLobbyTransaction {
+ enum EDiscordResult (*set_type)(struct IDiscordLobbyTransaction* lobby_transaction, enum EDiscordLobbyType type);
+ enum EDiscordResult (*set_owner)(struct IDiscordLobbyTransaction* lobby_transaction, DiscordUserId owner_id);
+ enum EDiscordResult (*set_capacity)(struct IDiscordLobbyTransaction* lobby_transaction, uint32_t capacity);
+ enum EDiscordResult (*set_metadata)(struct IDiscordLobbyTransaction* lobby_transaction, DiscordMetadataKey key, DiscordMetadataValue value);
+ enum EDiscordResult (*delete_metadata)(struct IDiscordLobbyTransaction* lobby_transaction, DiscordMetadataKey key);
+ enum EDiscordResult (*set_locked)(struct IDiscordLobbyTransaction* lobby_transaction, bool locked);
+};
+
+struct IDiscordLobbyMemberTransaction {
+ enum EDiscordResult (*set_metadata)(struct IDiscordLobbyMemberTransaction* lobby_member_transaction, DiscordMetadataKey key, DiscordMetadataValue value);
+ enum EDiscordResult (*delete_metadata)(struct IDiscordLobbyMemberTransaction* lobby_member_transaction, DiscordMetadataKey key);
+};
+
+struct IDiscordLobbySearchQuery {
+ enum EDiscordResult (*filter)(struct IDiscordLobbySearchQuery* lobby_search_query, DiscordMetadataKey key, enum EDiscordLobbySearchComparison comparison, enum EDiscordLobbySearchCast cast, DiscordMetadataValue value);
+ enum EDiscordResult (*sort)(struct IDiscordLobbySearchQuery* lobby_search_query, DiscordMetadataKey key, enum EDiscordLobbySearchCast cast, DiscordMetadataValue value);
+ enum EDiscordResult (*limit)(struct IDiscordLobbySearchQuery* lobby_search_query, uint32_t limit);
+ enum EDiscordResult (*distance)(struct IDiscordLobbySearchQuery* lobby_search_query, enum EDiscordLobbySearchDistance distance);
+};
+
+typedef void* IDiscordApplicationEvents;
+
+struct IDiscordApplicationManager {
+ void (*validate_or_exit)(struct IDiscordApplicationManager* manager, void* callback_data, void (*callback)(void* callback_data, enum EDiscordResult result));
+ void (*get_current_locale)(struct IDiscordApplicationManager* manager, DiscordLocale* locale);
+ void (*get_current_branch)(struct IDiscordApplicationManager* manager, DiscordBranch* branch);
+ void (*get_oauth2_token)(struct IDiscordApplicationManager* manager, void* callback_data, void (*callback)(void* callback_data, enum EDiscordResult result, struct DiscordOAuth2Token* oauth2_token));
+ void (*get_ticket)(struct IDiscordApplicationManager* manager, void* callback_data, void (*callback)(void* callback_data, enum EDiscordResult result, const char* data));
+};
+
+struct IDiscordUserEvents {
+ void (*on_current_user_update)(void* event_data);
+};
+
+struct IDiscordUserManager {
+ enum EDiscordResult (*get_current_user)(struct IDiscordUserManager* manager, struct DiscordUser* current_user);
+ void (*get_user)(struct IDiscordUserManager* manager, DiscordUserId user_id, void* callback_data, void (*callback)(void* callback_data, enum EDiscordResult result, struct DiscordUser* user));
+ enum EDiscordResult (*get_current_user_premium_type)(struct IDiscordUserManager* manager, enum EDiscordPremiumType* premium_type);
+ enum EDiscordResult (*current_user_has_flag)(struct IDiscordUserManager* manager, enum EDiscordUserFlag flag, bool* has_flag);
+};
+
+typedef void* IDiscordImageEvents;
+
+struct IDiscordImageManager {
+ void (*fetch)(struct IDiscordImageManager* manager, struct DiscordImageHandle handle, bool refresh, void* callback_data, void (*callback)(void* callback_data, enum EDiscordResult result, struct DiscordImageHandle handle_result));
+ enum EDiscordResult (*get_dimensions)(struct IDiscordImageManager* manager, struct DiscordImageHandle handle, struct DiscordImageDimensions* dimensions);
+ enum EDiscordResult (*get_data)(struct IDiscordImageManager* manager, struct DiscordImageHandle handle, uint8_t* data, uint32_t data_length);
+};
+
+struct IDiscordActivityEvents {
+ void (*on_activity_join)(void* event_data, const char* secret);
+ void (*on_activity_spectate)(void* event_data, const char* secret);
+ void (*on_activity_join_request)(void* event_data, struct DiscordUser* user);
+ void (*on_activity_invite)(void* event_data, enum EDiscordActivityActionType type, struct DiscordUser* user, struct DiscordActivity* activity);
+};
+
+struct IDiscordActivityManager {
+ enum EDiscordResult (*register_command)(struct IDiscordActivityManager* manager, const char* command);
+ enum EDiscordResult (*register_steam)(struct IDiscordActivityManager* manager, uint32_t steam_id);
+ void (*update_activity)(struct IDiscordActivityManager* manager, struct DiscordActi