aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorsyeyoung <cyong06@naver.com>2021-08-08 22:45:20 +0900
committersyeyoung <cyong06@naver.com>2021-08-08 22:45:20 +0900
commitdb58612b03889d5911c99f5b3878b31f9b4f9e92 (patch)
treedc11f6af1fa070baba7eb6351052d4f8d95e76ea /src/main
parenteaaac61857654f7f629fa9ada669f40301009e31 (diff)
downloadSkyblock-Dungeons-Guide-db58612b03889d5911c99f5b3878b31f9b4f9e92.tar.gz
Skyblock-Dungeons-Guide-db58612b03889d5911c99f5b3878b31f9b4f9e92.tar.bz2
Skyblock-Dungeons-Guide-db58612b03889d5911c99f5b3878b31f9b4f9e92.zip
- Field Orders
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java208
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java9
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java11
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java8
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java6
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java6
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java6
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java5
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java4
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java6
-rw-r--r--src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java6
46 files changed, 423 insertions, 78 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
index abecd8a7..08d5a898 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/RichPresenceManager.java
@@ -18,15 +18,31 @@
package kr.syeyoung.dungeonsguide;
+import com.sun.jna.Pointer;
+import com.sun.jna.ptr.PointerByReference;
import kr.syeyoung.dungeonsguide.dungeon.DungeonContext;
import kr.syeyoung.dungeonsguide.events.SkyblockJoinedEvent;
import kr.syeyoung.dungeonsguide.events.SkyblockLeftEvent;
import kr.syeyoung.dungeonsguide.features.FeatureRegistry;
+import kr.syeyoung.dungeonsguide.gamesdk.GameSDK;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.NativeGameSDK;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.*;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordActivityActionType;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordLogLevel;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.interfacestruct.IDiscordActivityEvents;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.interfacestruct.IDiscordActivityManager;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.interfacestruct.IDiscordCore;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordClientID;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordTimestamp;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordVersion;
+import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int32;
import kr.syeyoung.dungeonsguide.party.PartyInviteViewer;
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 lombok.Getter;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import org.json.JSONObject;
@@ -35,99 +51,135 @@ public class RichPresenceManager implements Runnable {
public static RichPresenceManager INSTANCE = new RichPresenceManager();
private Thread t = new Thread(this);
-
public RichPresenceManager() {
t.start();
-// 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);
+ @Getter
+ private NativeGameSDK nativeGameSDK;
+ @Getter
+ private IDiscordCore iDiscordCore;
+ private IDiscordActivityManager activityManager;
+ private IDiscordActivityEvents.ByReference callbacks;
+
+ @Getter
+ private boolean setupSuccessful = false;
+ public boolean setup() {
+ nativeGameSDK = GameSDK.getNativeGameSDK();
+ if (nativeGameSDK == null) return false;
+ DiscordCreateParams discordCreateParams = new DiscordCreateParams();
+ discordCreateParams.client_id = new DiscordClientID(816298079732498473L);
+
+ callbacks = new IDiscordActivityEvents.ByReference();
+ callbacks.OnActivityInvite = (eventData, type, user, activity) -> {
+
+ };
+ callbacks.OnActivityJoin = (eventData, secret) -> DungeonsGuide.getDungeonsGuide().getStompConnection().send(new StompPayload().method(StompHeader.SEND)
+ .header("destination", "/app/party.askedtojoin")
+ .payload(new JSONObject().put("token", secret).toString()));
+ callbacks.OnActivityJoinRequest = (eventData, user) -> {
+ PartyJoinRequest partyJoinRequest = new PartyJoinRequest();
+ partyJoinRequest.setDiscordUser(user);
+ partyJoinRequest.setExpire(System.currentTimeMillis() + 30000);
+
+ PartyInviteViewer.INSTANCE.joinRequests.add(partyJoinRequest);
+ };
+ callbacks.OnActivitySpectate = (eventData, secret) -> {
+
+ };
+ callbacks.write();
+ discordCreateParams.activity_events = callbacks;
+
+ PointerByReference pointerByReference = new PointerByReference();
+ nativeGameSDK.DiscordCreate(new DiscordVersion(NativeGameSDK.DISCORD_VERSION), discordCreateParams, pointerByReference);
+ if (pointerByReference.getValue() == Pointer.NULL) return false;
+ iDiscordCore = new IDiscordCore(pointerByReference.getValue());
+
+ iDiscordCore.SetLogHook.setLogHook(iDiscordCore, EDiscordLogLevel.DiscordLogLevel_Debug, Pointer.NULL, new IDiscordCore.LogHook() {
+ @Override
+ public void hook(Pointer hookData, EDiscordLogLevel level, String message) {
+ System.out.println(message+" - "+level+" - "+hookData);
+ }
+ });
+
+ activityManager = iDiscordCore.GetActivityManager.getActivityManager(iDiscordCore);
+ latestDiscordActivity = new DiscordActivity();
+ latestDiscordActivity.assets = new DiscordActivityAssets();
+ GameSDK.writeString(latestDiscordActivity.assets.large_image, "mort");
+ GameSDK.writeString(latestDiscordActivity.assets.large_text, "mort");
+ return true;
}
private final SkyblockStatus skyblockStatus = DungeonsGuide.getDungeonsGuide().getSkyblockStatus();
+ private DiscordActivity latestDiscordActivity;
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() || !FeatureRegistry.ADVANCED_RICHPRESENCE.isEnabled() || (!skyblockStatus.isOnSkyblock() && FeatureRegistry.ADVANCED_RICHPRESENCE.<Boolean>getParameter("disablenotskyblock").getValue())) {
+ activityManager.ClearActivity.clearActivity(activityManager, Pointer.NULL, new NativeGameSDK.DiscordCallback() {
+ @Override
+ public void callback(Pointer callbackData, EDiscordResult result) {
+ System.out.println("Discord Returned "+result+" For Clearing RPC");
+ }
+ });
+ } else {
+ String name = skyblockStatus.getDungeonName();
+ if (name.trim().equals("Your Island")) name = "Private Island";
+ GameSDK.writeString(latestDiscordActivity.state, name);
- @SubscribeEvent
- public void joinSkyblock(SkyblockJoinedEvent skyblockJoinedEvent) {
- updatePresence();
- }
- @SubscribeEvent
- public void leaveSkyblock(SkyblockLeftEvent skyblockLeftEvent) {
- updatePresence();
- }
- private String lastLoc = "";
+ if (PartyManager.INSTANCE.getPartyID() != null) {
+ if (latestDiscordActivity.party == null) latestDiscordActivity.party = new DiscordActivityParty();
+ GameSDK.writeString(latestDiscordActivity.party.id, PartyManager.INSTANCE.getPartyID());
+ if (latestDiscordActivity.party.discordActivityParty == null) latestDiscordActivity.party.discordActivityParty = new DiscordPartySize();
+ latestDiscordActivity.party.discordActivityParty.current_size = new Int32(PartyManager.INSTANCE.getMemberCount());
+ latestDiscordActivity.party.discordActivityParty.max_size = new Int32(PartyManager.INSTANCE.getMaxParty());
+ } else {
+ latestDiscordActivity.party = null;
+ }
+ GameSDK.writeString(latestDiscordActivity.state, name);
+ if (skyblockStatus.getContext() != null) {
+ DungeonContext dungeonContext = skyblockStatus.getContext();
+ long init = dungeonContext.getInit();
+ if (latestDiscordActivity.timestamps == null)
+ latestDiscordActivity.timestamps = new DiscordActivityTimestamps();
+ latestDiscordActivity.timestamps.start = new DiscordTimestamp(init);
- @SubscribeEvent
- public void tick(TickEvent.ClientTickEvent clientTickEvent) {
+ if (dungeonContext.getBossfightProcessor() != null) {
+ GameSDK.writeString(latestDiscordActivity.details, "Fighting "+dungeonContext.getBossfightProcessor().getBossName()+": "+dungeonContext.getBossfightProcessor().getCurrentPhase());
+ } else {
+ GameSDK.writeString(latestDiscordActivity.details, "Clearing Rooms");
+ }
+ } else {
+ latestDiscordActivity.timestamps = null;
+ GameSDK.writeString(latestDiscordActivity.details, "Dungeons Guide");
+ }
+ if (PartyManager.INSTANCE.isAllowAskToJoin()) {
+ if (latestDiscordActivity.secrets == null)
+ latestDiscordActivity.secrets = new DiscordActivitySecrets();
+ GameSDK.writeString(latestDiscordActivity.secrets.join, PartyManager.INSTANCE.getAskToJoinSecret());
+ } else {
+ latestDiscordActivity.secrets = null;
+ }
+ activityManager.UpdateActivity.updateActivity(activityManager, latestDiscordActivity, Pointer.NULL, new NativeGameSDK.DiscordCallback() {
+ @Override
+ public void callback(Pointer callbackData, EDiscordResult result) {
+ System.out.println("Discord Returned "+result+" For Setting new RPC");
+ }
+ });
+ }
}
+
@Override
public void run() {
-
-// try {
-// Thread.sleep(300L);
-// setup();
-// while(!Thread.interrupted()) {
-// DiscordRPC.discordRunCallbacks();
-// if (skyblockStatus.isOnSkyblock() && !lastLoc.equalsIgnoreCase(skyblockStatus.getDungeonName())) {
-// lastLoc = skyblockStatus.getDungeonName()+"";
-// }
-// updatePresence();
-// Thread.sleep(300L);
-// }
-// } catch (Exception e) {e.printStackTrace();}
+ setupSuccessful = setup();
+ if (!setupSuccessful) return;
+ while(!Thread.interrupted()) {
+ iDiscordCore.RunCallbacks.runCallbacks(iDiscordCore);
+ updatePresence();
+ try {
+ Thread.sleep(300L);
+ } catch (Exception e) {e.printStackTrace();}
+ }
}
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java
index 3b6951a2..d257b414 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivity.java
@@ -23,6 +23,10 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordActivityType;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int64;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordActivity extends DiscordStruct {
public EDiscordActivityType activityType = EDiscordActivityType.DiscordActivityType_Playing;
@@ -39,4 +43,9 @@ public class DiscordActivity extends DiscordStruct {
public static class ByReference extends DiscordActivity implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordActivity implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("activityType", "applicationId", "name", "state", "details", "timestamps", "assets", "party", "secrets", "instance");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java
index 5908fb1d..03b64f46 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityAssets.java
@@ -21,6 +21,9 @@ package kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordActivityAssets extends DiscordStruct{
public byte[] large_image = new byte[128];
@@ -31,4 +34,9 @@ public class DiscordActivityAssets extends DiscordStruct{
public static class ByReference extends DiscordActivityAssets implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordActivityAssets implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("large_image", "large_text", "small_image", "small_text");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java
index 697cb6b8..b9a20db3 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityParty.java
@@ -21,6 +21,9 @@ package kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordActivityParty extends DiscordStruct {
public byte[] id = new byte[128];
@@ -29,4 +32,9 @@ public class DiscordActivityParty extends DiscordStruct {
public static class ByReference extends DiscordActivityParty implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordActivityParty implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("id", "discordActivityParty");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java
index db8f42e9..2975f97f 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivitySecrets.java
@@ -21,6 +21,9 @@ package kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct;
import com.sun.jna.Pointer;
import com.sun.jna.Structure;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordActivitySecrets extends DiscordStruct {
public byte[] match = new byte[128];
@@ -30,4 +33,9 @@ public class DiscordActivitySecrets extends DiscordStruct {
public static class ByReference extends DiscordActivitySecrets implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordActivitySecrets implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("match", "join", "spectate");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java
index 6f0c5f04..4765ffb9 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordActivityTimestamps.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordTimestamp;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordActivityTimestamps extends DiscordStruct {
public DiscordTimestamp start = new DiscordTimestamp();
public DiscordTimestamp end = new DiscordTimestamp();
@@ -29,4 +32,9 @@ public class DiscordActivityTimestamps extends DiscordStruct {
public static class ByReference extends DiscordActivityTimestamps implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordActivityTimestamps implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("start", "end");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java
index edb29844..8e230b73 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordCreateParams.java
@@ -25,6 +25,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordClientID;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordVersion;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt64;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordCreateParams extends DiscordStruct { public DiscordCreateParams() {super();} public DiscordCreateParams(Pointer pointer) {super(pointer);}
public DiscordClientID client_id = new DiscordClientID();
public UInt64 flags = new UInt64();
@@ -57,4 +60,12 @@ public class DiscordCreateParams extends DiscordStruct { public DiscordCreatePar
public static class ByReference extends DiscordCreateParams implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordCreateParams implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("client_id", "flags", "events", "event_data", "application_events", "application_version", "user_events",
+ "user_version", "image_events", "image_version", "activity_events", "activity_version", "lobby_events", "lobby_version",
+ "network_events", "network_version", "overlay_events", "overlay_version", "storage_events", "storage_version", "store_events",
+ "store_version", "voice_events", "voice_version", "achievement_events", "achievement_version");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java
index d3d4361e..6e0f29ac 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordEntitlement.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordEntitlementType;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordEntitlement extends DiscordStruct {
public DiscordSnowflake id = new DiscordSnowflake();
public EDiscordEntitlementType type = EDiscordEntitlementType.DiscordEntitlementType_Purchase;
@@ -31,4 +34,9 @@ public class DiscordEntitlement extends DiscordStruct {
public static class ByReference extends DiscordEntitlement implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordEntitlement implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("id", "type", "sku_id");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java
index 200ac74a..a7e38b37 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordFileStat.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt64;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordFileStat extends DiscordStruct {
public byte[] filename = new byte[260];
public UInt64 size = new UInt64();
@@ -31,4 +34,9 @@ public class DiscordFileStat extends DiscordStruct {
public static class ByReference extends DiscordFileStat implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordFileStat implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("filename", "size", "last_modified");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java
index 6d569993..d3247b07 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageDimensions.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordImageDimensions extends DiscordStruct {
public UInt32 width = new UInt32();
public UInt32 height = new UInt32();
@@ -29,4 +32,9 @@ public class DiscordImageDimensions extends DiscordStruct {
public static class ByReference extends DiscordImageDimensions implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) { super(pointer);}}
public static class ByValue extends DiscordImageDimensions implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) { super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("width", "height");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java
index 1eafce70..851ba360 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordImageHandle.java
@@ -24,6 +24,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordImageType;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int64;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordImageHandle extends DiscordStruct {
public EDiscordImageType type = EDiscordImageType.DiscordImageType_User;
public Int64 integerType = new Int64();
@@ -32,4 +35,9 @@ public class DiscordImageHandle extends DiscordStruct {
public static class ByReference extends DiscordImageHandle implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordImageHandle implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("type", "integerType", "size");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java
index 45084b56..8a69f53a 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordInputMode.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordInputModeType;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordInputMode extends DiscordStruct {
public EDiscordInputModeType type = EDiscordInputModeType.DiscordInputModeType_PushToTalk;
@@ -30,4 +33,9 @@ public class DiscordInputMode extends DiscordStruct {
public static class ByReference extends DiscordInputMode implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordInputMode implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("type", "shortcut");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java
index 514ddadf..18453004 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordLobby.java
@@ -25,6 +25,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordLobby extends DiscordStruct {
public DiscordSnowflake id = new DiscordSnowflake();
public EDiscordLobbyType type = EDiscordLobbyType.DiscordLobbyType_Private;
@@ -36,4 +39,9 @@ public class DiscordLobby extends DiscordStruct {
public static class ByReference extends DiscordLobby implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordLobby implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("id", "type", "owner_id", "secret", "capacity", "locked");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java
index f03a0aa3..f870f830 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordOAuth2Token.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordTimestamp;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordOAuth2Token extends DiscordStruct {
public byte[] access_token = new byte[128];
@@ -31,4 +34,9 @@ public class DiscordOAuth2Token extends DiscordStruct {
public static class ByReference extends DiscordOAuth2Token implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordOAuth2Token implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("access_token", "scopes", "expires");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java
index a890d235..43c40723 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPartySize.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordPartySize extends DiscordStruct{
public Int32 current_size = new Int32();
public Int32 max_size = new Int32();
@@ -29,4 +32,9 @@ public class DiscordPartySize extends DiscordStruct{
public static class ByReference extends DiscordPartySize implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordPartySize implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("current_size", "max_size");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java
index 1c17bdac..4e12f175 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordPresence.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordStatus;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordPresence extends DiscordStruct {
public EDiscordStatus status = EDiscordStatus.DiscordStatus_Offline;
public DiscordActivity activity;
@@ -29,4 +32,9 @@ public class DiscordPresence extends DiscordStruct {
public static class ByReference extends DiscordPresence implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordPresence implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("status", "activity");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java
index 3b22d0d2..03cbae4a 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordRelationship.java
@@ -22,6 +22,9 @@ import com.sun.jna.Pointer;
import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordRelationshipType;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordRelationship extends DiscordStruct {
public EDiscordRelationshipType type = EDiscordRelationshipType.DiscordRelationshipType_None;
public DiscordUser user;
@@ -30,4 +33,9 @@ public class DiscordRelationship extends DiscordStruct {
public static class ByReference extends DiscordRelationship implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordRelationship implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("type", "user", "presence");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java
index 51693fa0..2e9aaf1d 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSku.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordSkuType;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordSku extends DiscordStruct {
public DiscordSnowflake id = new DiscordSnowflake();
@@ -33,4 +36,9 @@ public class DiscordSku extends DiscordStruct {
public static class ByReference extends DiscordSku implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordSku implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("id", "type", "name", "discordSkuPrice");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java
index 74be946a..6eea0924 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordSkuPrice.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordSkuPrice extends DiscordStruct {
public UInt32 amount = new UInt32();
public byte[] currency = new byte[16];
@@ -30,4 +33,9 @@ public class DiscordSkuPrice extends DiscordStruct {
public static class ByReference extends DiscordSkuPrice implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordSkuPrice implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("amount", "currency");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java
index 7abd0c71..b20d18c2 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUser.java
@@ -25,6 +25,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import lombok.Getter;
import lombok.Setter;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordUser extends DiscordStruct {
public DiscordSnowflake id = new DiscordSnowflake();
public byte[] username = new byte[256];
@@ -35,4 +38,9 @@ public class DiscordUser extends DiscordStruct {
public static class ByReference extends DiscordUser implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordUser implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("id", "username", "discriminator", "avatar", "bot");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java
index 1f2b4cb8..c12dcf56 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/datastruct/DiscordUserAchievement.java
@@ -24,6 +24,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class DiscordUserAchievement extends DiscordStruct {
public DiscordSnowflake user_id = new DiscordSnowflake();
public DiscordSnowflake achievement_id = new DiscordSnowflake();
@@ -33,4 +36,9 @@ public class DiscordUserAchievement extends DiscordStruct {
public static class ByReference extends DiscordUserAchievement implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends DiscordUserAchievement implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override
+ protected List getFieldOrder() {
+ return Arrays.asList("user_id", "achievement_id", "percent_complete", "unlocked_at");
+ }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java
index 6cfd19cd..e7cf3b38 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementEvents.java
@@ -24,6 +24,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordUserAchievement;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordAchievementEvents extends DiscordStruct { public IDiscordAchievementEvents() {super();} public IDiscordAchievementEvents(Pointer pointer) {super(pointer);}
public interface OnUserAchievementUpdateCallback extends GameSDKCallback { void onUserAchievementUpdate(Pointer eventData, DiscordUserAchievement userAchievement); }
public OnUserAchievementUpdateCallback OnUserAchievementUpdate;
@@ -32,4 +35,6 @@ public class IDiscordAchievementEvents extends DiscordStruct { public IDiscordAc
public static class ByReference extends IDiscordAchievementEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordAchievementEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnUserAchievementUpdate"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java
index 2103cf67..f83c0195 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordAchievementManager.java
@@ -30,6 +30,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt8;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordUserAchievement;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordAchievementManager extends DiscordStruct { public IDiscordAchievementManager() {super();} public IDiscordAchievementManager(Pointer pointer) {super(pointer);}
public interface SetUserAchievementCallback extends GameSDKCallback { void setUserAchievement(IDiscordAchievementManager manager, DiscordSnowflake achievementId, UInt8 percentComplete, Pointer callbackData, NativeGameSDK.DiscordCallback callback); }
public SetUserAchievementCallback SetUserAchievement;
@@ -50,4 +53,6 @@ public class IDiscordAchievementManager extends DiscordStruct { public IDiscordA
public static class ByReference extends IDiscordAchievementManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordAchievementManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("SetUserAchievement", "FetchUserAchievements", "CountUserAchievements", "GetUserAchievement", "GetUserAchievementAt"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java
index 26819edd..d6a6ce48 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityEvents.java
@@ -26,6 +26,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordActivityActionT
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordActivity;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordUser;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordActivityEvents extends DiscordStruct { public IDiscordActivityEvents() {super();} public IDiscordActivityEvents(Pointer pointer) {super(pointer);}
public interface OnActivityJoinCallback extends GameSDKCallback { void onActivityJoin(Pointer eventData, String secret); }
public OnActivityJoinCallback OnActivityJoin;
@@ -43,4 +46,6 @@ public class IDiscordActivityEvents extends DiscordStruct { public IDiscordActiv
public static class ByReference extends IDiscordActivityEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordActivityEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnActivityJoin", "OnActivitySpectate", "OnActivityJoinRequest", "OnActivityInvite"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java
index 3c1f3c34..b20e6660 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordActivityManager.java
@@ -30,6 +30,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordActivity;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordActivityJoinRequestReply;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordActivityManager extends DiscordStruct { public IDiscordActivityManager() {super();} public IDiscordActivityManager(Pointer pointer) {super(pointer);}
public interface RegisterCommandCallback extends GameSDKCallback { EDiscordResult registerCommand(IDiscordActivityManager manager, String command); }
public RegisterCommandCallback RegisterCommand;
@@ -56,4 +59,6 @@ public class IDiscordActivityManager extends DiscordStruct { public IDiscordActi
public static class ByReference extends IDiscordActivityManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordActivityManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("RegisterCommand", "RegisterSteam", "UpdateActivity", "ClearActivity", "SendRequestReply", "SendInvite", "AcceptInvite"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java
index 294c2161..a8165234 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordApplicationManager.java
@@ -26,6 +26,9 @@ import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordOAuth2Token;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordApplicationManager extends DiscordStruct { public IDiscordApplicationManager() {super();} public IDiscordApplicationManager(Pointer pointer) {super(pointer);}
public interface ValidateOrExitCallback extends GameSDKCallback { void validateOrExit(IDiscordApplicationManager manager, Pointer callbackData, NativeGameSDK.DiscordCallback callback); }
public ValidateOrExitCallback ValidateOrExit;
@@ -53,4 +56,6 @@ public class IDiscordApplicationManager extends DiscordStruct { public IDiscordA
public static class ByReference extends IDiscordApplicationManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordApplicationManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("ValidateOrExit", "GetCurrentLocale", "GetCurrentBranch", "GetOauth2Token", "GetTicket"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java
index ccc4abdf..7519987e 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordCore.java
@@ -27,6 +27,9 @@ import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordLogLevel;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordCore extends DiscordStruct { public IDiscordCore() {super();} public IDiscordCore(Pointer pointer) {super(pointer);}
public static final TypeMapper TYPE_MAPPER = GameSDKTypeMapper.INSTANCE;
@@ -84,4 +87,6 @@ public class IDiscordCore extends DiscordStruct { public IDiscordCore() {super()
}
public static class ByValue extends IDiscordCore implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}
}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("Destroy", "RunCallbacks", "SetLogHook", "GetApplicationManager", "GetUserManager", "GetImageManager", "GetActivityManager", "GetRelationshipManager", "GetLobbyManager", "GetNetworkManager", "GetOverlayManager", "GetStorageManager", "GetStoreManager", "GetVoiceManager", "GetAchievementManager"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java
index f400724f..5601f41b 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordImageManager.java
@@ -28,6 +28,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordImageDimensions;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordImageHandle;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordImageManager extends DiscordStruct { public IDiscordImageManager() {super();} public IDiscordImageManager(Pointer pointer) {super(pointer);}
public interface FetchCallback_Callback extends GameSDKCallback {
void callback(Pointer callbackData, EDiscordResult result, DiscordImageHandle.ByValue handleResult);
@@ -45,4 +48,6 @@ public class IDiscordImageManager extends DiscordStruct { public IDiscordImageMa
public static class ByReference extends IDiscordImageManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordImageManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("Fetch", "GetDimensions", "GetData"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java
index 879f89bc..268fe2f5 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyEvents.java
@@ -27,6 +27,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt8;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int64;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordLobbyEvents extends DiscordStruct { public IDiscordLobbyEvents() {super();} public IDiscordLobbyEvents(Pointer pointer) {super(pointer);}
public interface OnLobbyUpdateCallback extends GameSDKCallback { void onLobbyUpdate(Pointer eventData, Int64 lobbyId); }
public OnLobbyUpdateCallback OnLobbyUpdate;
@@ -56,4 +59,7 @@ public class IDiscordLobbyEvents extends DiscordStruct { public IDiscordLobbyEve
public static class ByReference extends IDiscordLobbyEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordLobbyEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnLobbyUpdate", "OnLobbyDelete", "OnMemberConnect", "OnMemberUpdate", "OnMemberDisconnect", "OnLobbyMessage", "OnSpeaking", "OnNetworkMessage"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java
index cbaac01b..bfaf3c4a 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyManager.java
@@ -33,6 +33,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordUser;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordLobbyManager extends DiscordStruct { public IDiscordLobbyManager() {super();} public IDiscordLobbyManager(Pointer pointer) {super(pointer);}
public interface GetLobbyCreateTransactionCallback extends GameSDKCallback { EDiscordResult getLobbyCreateTransaction(IDiscordLobbyManager manager, IDiscordLobbyTransaction transaction); }
public GetLobbyCreateTransactionCallback GetLobbyCreateTransaction;
@@ -141,4 +144,6 @@ public class IDiscordLobbyManager extends DiscordStruct { public IDiscordLobbyMa
public static class ByReference extends IDiscordLobbyManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordLobbyManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("GetLobbyCreateTransaction", "GetLobbyUpdateTransaction", "GetMemberUpdateTransaction", "CreateLobby", "UpdateLobby", "DeleteLobby", "ConnectLobby", "ConnectLobbyWithActivitySecret", "DisconnectLobby", "GetLobby", "GetLobbyActivitySecret", "GetLobbyMetadataValue", "GetLobbyMetadataKey", "LobbyMetadataCount", "MemberCount", "GetMemberUserId", "GetMemberUser", "GetMemberMetadataValue", "GetMemberMetadataKey", "MemberMetadataCount", "UpdateMember", "SendLobbyMessage", "GetSearchQuery", "Search", "LobbyCount", "GetLobbyId", "ConnectVoice", "DisconnectVoice", "ConnectNetwork", "DisconnectNetwork", "FlushNetwork", "OpenNetworkChannel", "SendNetworkMessage"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java
index 1b79a900..d061d34b 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyMemberTransaction.java
@@ -24,6 +24,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordLobbyMemberTransaction extends DiscordStruct { public IDiscordLobbyMemberTransaction() {super();} public IDiscordLobbyMemberTransaction(Pointer pointer) {super(pointer);}
public interface SetMetadataCallback extends GameSDKCallback { EDiscordResult setMetadata(IDiscordLobbyMemberTransaction lobbyMemberTransaction, Pointer key, Pointer value); } // key is 256 bytes, value is 4096
public SetMetadataCallback SetMetadata;
@@ -35,4 +38,6 @@ public class IDiscordLobbyMemberTransaction extends DiscordStruct { public IDisc
public static class ByReference extends IDiscordLobbyMemberTransaction implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordLobbyMemberTransaction implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("SetMetadata", "DeleteMetadata"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java
index e2061b13..af2bb1ea 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbySearchQuery.java
@@ -28,6 +28,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordLobbySearchDist
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordLobbySearchCast;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordLobbySearchQuery extends DiscordStruct { public IDiscordLobbySearchQuery() {super();} public IDiscordLobbySearchQuery(Pointer pointer) {super(pointer);}
public interface FilterCallback extends GameSDKCallback { EDiscordResult filter(IDiscordLobbySearchQuery lobbySearchQuery, Pointer key, EDiscordLobbySearchComparison comparison, EDiscordLobbySearchCast cast, Pointer value); }
public FilterCallback Filter;
@@ -45,4 +48,6 @@ public class IDiscordLobbySearchQuery extends DiscordStruct { public IDiscordLob
public static class ByReference extends IDiscordLobbySearchQuery implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordLobbySearchQuery implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("Filter", "Sort", "Limit", "Distance"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java
index 2a49e516..354c3b37 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordLobbyTransaction.java
@@ -27,6 +27,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordLobbyTransaction extends DiscordStruct { public IDiscordLobbyTransaction() {super();} public IDiscordLobbyTransaction(Pointer pointer) {super(pointer);}
public interface SetTypeCallback extends GameSDKCallback { EDiscordResult setType(IDiscordLobbyTransaction lobbyTransaction, EDiscordLobbyType type); }
public SetTypeCallback SetType;
@@ -50,4 +53,6 @@ public class IDiscordLobbyTransaction extends DiscordStruct { public IDiscordLob
public static class ByReference extends IDiscordLobbyTransaction implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordLobbyTransaction implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("SetType", "SetOwner", "SetCapacity", "SetMetadata", "DeleteMetadata", "SetLocked"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java
index b17064d1..0c99e5c6 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkEvents.java
@@ -27,6 +27,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordNetworkChannelId;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordNetworkPeerId;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordNetworkEvents extends DiscordStruct { public IDiscordNetworkEvents() {super();} public IDiscordNetworkEvents(Pointer pointer) {super(pointer);}
public interface OnMessageCallback extends GameSDKCallback { void onMessage(Pointer eventData, DiscordNetworkPeerId peerId, DiscordNetworkChannelId channelId, ByteByReference data, UInt32 dataLength); }
public OnMessageCallback OnMessage;
@@ -38,4 +41,6 @@ public class IDiscordNetworkEvents extends DiscordStruct { public IDiscordNetwor
public static class ByReference extends IDiscordNetworkEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordNetworkEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnMessage", "OnRouteUpdate"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java
index fbc2edee..b14bb832 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordNetworkManager.java
@@ -29,6 +29,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordNetworkChannelId;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordNetworkPeerId;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordNetworkManager extends DiscordStruct { public IDiscordNetworkManager() {super();} public IDiscordNetworkManager(Pointer pointer) {super(pointer);}
public interface GetPeerIdCallback extends GameSDKCallback { void getPeerId(IDiscordNetworkManager manager, LongByReference peerId); }
public GetPeerIdCallback GetPeerId;
@@ -58,4 +61,6 @@ public class IDiscordNetworkManager extends DiscordStruct { public IDiscordNetwo
public static class ByReference extends IDiscordNetworkManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordNetworkManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("GetPeerId", "Flush", "OpenPeer", "UpdatePeer", "ClosePeer", "OpenChannel", "CloseChannel", "SendMessage"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java
index ca1681ed..91ab9e81 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayEvents.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordOverlayEvents extends DiscordStruct { public IDiscordOverlayEvents() {super();} public IDiscordOverlayEvents(Pointer pointer) {super(pointer);}
public interface OnToggleCallback extends GameSDKCallback { void onToggle(Pointer eventData, boolean locked); }
public OnToggleCallback OnToggle;
@@ -31,4 +34,6 @@ public class IDiscordOverlayEvents extends DiscordStruct { public IDiscordOverla
public static class ByReference extends IDiscordOverlayEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordOverlayEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnToggle"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java
index 2207f0ff..9c39ed38 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordOverlayManager.java
@@ -26,6 +26,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordActivityActionType;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordOverlayManager extends DiscordStruct { public IDiscordOverlayManager() {super();} public IDiscordOverlayManager(Pointer pointer) {super(pointer);}
public interface IsEnabledCallback extends GameSDKCallback { void isEnabled(IDiscordOverlayManager manager, ByteByReference enabled); }
public IsEnabledCallback IsEnabled;
@@ -49,4 +52,6 @@ public class IDiscordOverlayManager extends DiscordStruct { public IDiscordOverl
public static class ByReference extends IDiscordOverlayManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordOverlayManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("IsEnabled", "IsLocked", "SetLocked", "OpenActivityInvite", "OpenGuildInvite", "OpenVoiceSettings"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java
index 50ff21f4..259ca819 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipEvents.java
@@ -24,6 +24,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordRelationship;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordRelationshipEvents extends DiscordStruct { public IDiscordRelationshipEvents() {super();} public IDiscordRelationshipEvents(Pointer pointer) {super(pointer);}
public interface OnRefreshCallback extends GameSDKCallback { void onRefresh(Pointer eventData); }
public OnRefreshCallback OnRefresh;
@@ -35,4 +38,6 @@ public class IDiscordRelationshipEvents extends DiscordStruct { public IDiscordR
public static class ByReference extends IDiscordRelationshipEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordRelationshipEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnRefresh", "OnRelationshipUpdate"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java
index 406978cd..f2db8dd6 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordRelationshipManager.java
@@ -28,6 +28,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordRelationshipManager extends DiscordStruct { public IDiscordRelationshipManager() {super();} public IDiscordRelationshipManager(Pointer pointer) {super(pointer);}
public interface FilterCallback extends GameSDKCallback { void filter(IDiscordRelationshipManager manager, Pointer filterData, FilterCallback_Callback filter); }
public interface FilterCallback_Callback extends GameSDKCallback { boolean filter(Pointer filterData, Structure relationShip);}
@@ -46,4 +49,6 @@ public class IDiscordRelationshipManager extends DiscordStruct { public IDiscord
public static class ByReference extends IDiscordRelationshipManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordRelationshipManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("Filter", "Count", "Get", "GetAt"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java
index 8e77bef2..8e62b115 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStorageManager.java
@@ -31,6 +31,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordFileStat;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt64;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordStorageManager extends DiscordStruct { public IDiscordStorageManager() {super();} public IDiscordStorageManager(Pointer pointer) {super(pointer);}
public interface ReadCallback extends GameSDKCallback { EDiscordResult read(IDiscordStorageManager manager, String name, ByteByReference data, UInt32 dataLength, IntByReference read); }
public ReadCallback Read;
@@ -73,4 +76,7 @@ public class IDiscordStorageManager extends DiscordStruct { public IDiscordStora
public static class ByReference extends IDiscordStorageManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordStorageManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+
+ @Override protected List getFieldOrder() { return Arrays.asList("Read", "ReadAsync", "ReadAsyncPartial", "Write", "WriteAsync", "Delete", "Exists", "Count", "Stat", "StatAt", "GetPath"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java
index 55e4ed92..8b3cbd69 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreEvents.java
@@ -24,6 +24,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordEntitlement;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordStoreEvents extends DiscordStruct { public IDiscordStoreEvents() {super();} public IDiscordStoreEvents(Pointer pointer) {super(pointer);}
public interface OnEntitlementCreateCallback extends GameSDKCallback { void onEntitlementCreate(Pointer eventData, DiscordEntitlement entitlement); }
public OnEntitlementCreateCallback OnEntitlementCreate;
@@ -35,4 +38,7 @@ public class IDiscordStoreEvents extends DiscordStruct { public IDiscordStoreEve
public static class ByReference extends IDiscordStoreEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordStoreEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnEntitlementCreate", "OnEntitlementDelete"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java
index b951ef9a..ce5ec134 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordStoreManager.java
@@ -31,6 +31,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordResult;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.Int32;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordStoreManager extends DiscordStruct { public IDiscordStoreManager() {super();} public IDiscordStoreManager(Pointer pointer) {super(pointer);}
public interface FetchSkusCallback extends GameSDKCallback { void fetchSkus(IDiscordStoreManager manager, Pointer callbackData, NativeGameSDK.DiscordCallback callback); }
public FetchSkusCallback FetchSkus;
@@ -66,4 +69,6 @@ public class IDiscordStoreManager extends DiscordStruct { public IDiscordStoreMa
public static class ByReference extends IDiscordStoreManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordStoreManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("FetchSkus", "CountSkus", "GetSku", "GetSkuAt", "FetchEntitlements", "CountEntitlements", "GetEntitlement", "GetEntitlementAt", "HasSkuEntitlement", "StartPurchase"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java
index 66b6379f..72e22b91 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserEvents.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordUserEvents extends DiscordStruct { public IDiscordUserEvents() {super();} public IDiscordUserEvents(Pointer pointer) {super(pointer);}
public interface OnCurrentUserUpdateCallback extends GameSDKCallback { void onCurrentUserUpdate(Pointer eventData); }
public OnCurrentUserUpdateCallback OnCurrentUserUpdate;
@@ -31,4 +34,6 @@ public class IDiscordUserEvents extends DiscordStruct { public IDiscordUserEvent
public static class ByReference extends IDiscordUserEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordUserEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnCurrentUserUpdate"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java
index e7e04029..f74c233a 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordUserManager.java
@@ -29,6 +29,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.enumuration.EDiscordUserFlag;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordUser;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordUserManager extends DiscordStruct { public IDiscordUserManager() {super();} public IDiscordUserManager(Pointer pointer) {super(pointer);}
public interface GetCurrentUserCallback extends GameSDKCallback { EDiscordResult getCurrentUser(IDiscordUserManager manager, DiscordUser currentUser); }
public GetCurrentUserCallback GetCurrentUser;
@@ -47,4 +50,5 @@ public class IDiscordUserManager extends DiscordStruct { public IDiscordUserMana
public static class ByReference extends IDiscordUserManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordUserManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+ @Override protected List getFieldOrder() { return Arrays.asList("GetCurrentUser", "GetUser", "GetCurrentUserPremiumType", "CurrentUserHasFlag"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java
index 59fedd08..301de3ad 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceEvents.java
@@ -23,6 +23,9 @@ import com.sun.jna.Structure;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordStruct;
import com.sun.jna.Pointer;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordVoiceEvents extends DiscordStruct { public IDiscordVoiceEvents() {super();} public IDiscordVoiceEvents(Pointer pointer) {super(pointer);}
public interface OnSettingsUpdateCallback extends GameSDKCallback { void onSettingsUpdate(Pointer eventData); }
public OnSettingsUpdateCallback OnSettingsUpdate;
@@ -31,4 +34,7 @@ public class IDiscordVoiceEvents extends DiscordStruct { public IDiscordVoiceEve
public static class ByReference extends IDiscordVoiceEvents implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordVoiceEvents implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+
+ @Override protected List getFieldOrder() { return Arrays.asList("OnSettingsUpdate"); }
}
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java
index b9239707..f9881008 100644
--- a/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java
+++ b/src/main/java/kr/syeyoung/dungeonsguide/gamesdk/jna/interfacestruct/IDiscordVoiceManager.java
@@ -29,6 +29,9 @@ import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.UInt8;
import kr.syeyoung.dungeonsguide.gamesdk.jna.datastruct.DiscordInputMode;
import kr.syeyoung.dungeonsguide.gamesdk.jna.typedef.DiscordSnowflake;
+import java.util.Arrays;
+import java.util.List;
+
public class IDiscordVoiceManager extends DiscordStruct { public IDiscordVoiceManager() {super();} public IDiscordVoiceManager(Pointer pointer) {super(pointer);}
public interface GetInputModeCallback extends GameSDKCallback { EDiscordResult getInputMode(IDiscordVoiceManager manager, DiscordInputMode inputMode); }
public GetInputModeCallback GetInputMode;
@@ -64,4 +67,7 @@ public class IDiscordVoiceManager extends DiscordStruct { public IDiscordVoiceMa
public static class ByReference extends IDiscordVoiceManager implements Structure.ByReference { public ByReference() {super();} public ByReference(Pointer pointer) {super(pointer);}}
public static class ByValue extends IDiscordVoiceManager implements Structure.ByValue { public ByValue() {super();} public ByValue(Pointer pointer) {super(pointer);}}
+
+
+ @Override protected List getFieldOrder() { return Arrays.asList("GetInputMode", "SetInputMode", "IsSelfMute", "SetSelfMute", "IsSelfDeaf", "SetSelfDeaf", "IsLocalMute", "SetLocalMute", "GetLocalVolume", "SetLocalVolume"); }
}