Skip to content

Commit

Permalink
Removed start
Browse files Browse the repository at this point in the history
  • Loading branch information
xxAROX committed Jul 15, 2023
1 parent 2a6e0ef commit a699be3
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 18 deletions.
15 changes: 13 additions & 2 deletions src/main/java/xxAROX/PresenceMan/Application/App.java
Original file line number Diff line number Diff line change
Expand Up @@ -157,9 +157,20 @@ public static void setDiscordCore(CreateParams discord_create_params, Core disco
public static void setActivity(APIActivity api_activity) {
if (api_activity == null) api_activity = APIActivity.none();
if (Objects.equals(getInstance().api_activity, api_activity)) return;
api_activity.setStart(created);
getInstance().api_activity = api_activity;
if (discord_core != null) discord_core.activityManager().updateActivity(api_activity.toDiscord(discord_create_params));
if (App.getInstance().xboxUserInfo != null) {
api_activity.setState(api_activity.getState()
.replace("{xuid}", App.getInstance().xboxUserInfo.getXuid())
.replace("{gamertag}", App.getInstance().xboxUserInfo.getGamertag())
);
api_activity.setDetails(api_activity.getDetails()
.replace("{xuid}", App.getInstance().xboxUserInfo.getXuid())
.replace("{gamertag}", App.getInstance().xboxUserInfo.getGamertag())
);
}
var activity = api_activity.toDiscord(discord_create_params);
activity.timestamps().setStart(Instant.ofEpochMilli(created));
if (discord_core != null) discord_core.activityManager().updateActivity(activity);
}

public static void clearActivity() {
Expand Down
1 change: 0 additions & 1 deletion src/main/java/xxAROX/PresenceMan/Application/RestAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ public static void heartbeat(){
APIActivity new_activity = null;
if (!response.has("api_activity") || response.get("api_activity").isJsonNull()) {
new_activity = APIActivity.none();
if (App.getInstance().getApi_activity() != null) new_activity.setStart(App.getInstance().getApi_activity().getStart());
} else if (response.get("api_activity").isJsonObject()) {
new_activity = APIActivity.deserialize(response.get("api_activity").getAsJsonObject());
} else if (response.get("api_activity").getAsString().equalsIgnoreCase("clear")) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,8 @@
public final class APIActivity {
private long client_id = AppInfo.discord_application_id;
private @NonNull ActivityType type = ActivityType.PLAYING;
private String network;
private String server;
private Long start;
private String state;
private String details;
private Long end;
private String large_icon_key;
private String large_icon_text;
Expand All @@ -30,9 +29,8 @@ public JsonObject serialize(){
JsonObject json = new JsonObject();
json.addProperty("client_id", client_id);
json.addProperty("type", type.name().toUpperCase());
json.addProperty("network", network);
json.addProperty("server", server);
json.addProperty("start", start);
json.addProperty("state", state);
json.addProperty("details", details);
json.addProperty("end", end);
json.addProperty("large_icon_key", large_icon_key);
json.addProperty("large_icon_text", large_icon_text);
Expand All @@ -47,9 +45,8 @@ public static APIActivity deserialize(JsonObject json){
APIActivity activity = new APIActivity();
activity.client_id = json.has("client_id") ? json.get("client_id").getAsLong() : AppInfo.discord_application_id;
activity.type = json.has("type") ? ActivityType.valueOf(json.get("type").getAsString()) : ActivityType.PLAYING;
activity.network = json.has("network") ? json.get("network").getAsString() : null;
activity.server = json.has("server") ? json.get("server").getAsString() : null;
activity.start = json.has("start") ? json.get("start").getAsLong() : null;
activity.state = json.has("state") ? json.get("state").getAsString() : null;
activity.details = json.has("details") ? json.get("details").getAsString() : null;
activity.end = json.has("end") ? json.get("end").getAsLong() : null;
activity.large_icon_key = json.has("large_icon_key") ? json.get("large_icon_key").getAsString() : null;
activity.large_icon_text = json.has("large_icon_text") ? json.get("large_icon_text").getAsString() : null;
Expand All @@ -64,9 +61,8 @@ public Activity toDiscord(CreateParams params) {
params.setClientID(client_id);
Activity activity = new Activity();
activity.setType(type.toDiscordType());
activity.setState(network != null ? network : "");
activity.setDetails(server != null ? server : "");
if (start != null) activity.timestamps().setStart(Instant.ofEpochMilli(start));
activity.setState(state != null ? state : "");
activity.setDetails(details != null ? details : "");
if (end != null) activity.timestamps().setEnd(Instant.ofEpochMilli(end));
if (large_icon_key != null) activity.assets().setLargeImage(large_icon_key);
if (large_icon_text != null) activity.assets().setLargeText(large_icon_text);
Expand Down Expand Up @@ -106,10 +102,9 @@ public de.jcm.discordgamesdk.activity.ActivityType toDiscordType(){

public static APIActivity none() {
var activity = new APIActivity();
activity.setNetwork("");
activity.setServer(App.getInstance().xboxUserInfo == null ? "" : "Playing as " + App.getInstance().xboxUserInfo.getGamertag());
activity.setState("");
activity.setDetails(App.getInstance().xboxUserInfo == null ? "" : "Playing as " + App.getInstance().xboxUserInfo.getGamertag());
activity.setLarge_icon_key("launcher");
activity.setStart(Instant.now().toEpochMilli());
return activity;
}
}

0 comments on commit a699be3

Please sign in to comment.