Add NoRequireDiscord flag when initializing Discord GameSDK.
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
using Discord;
|
using Discord;
|
||||||
using System;
|
using System;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using Logger = Cryville.Common.Logger;
|
||||||
|
|
||||||
namespace Cryville.Crtr {
|
namespace Cryville.Crtr {
|
||||||
internal class DiscordController : MonoBehaviour {
|
internal class DiscordController : MonoBehaviour {
|
||||||
@@ -16,22 +17,31 @@ namespace Cryville.Crtr {
|
|||||||
void Start() {
|
void Start() {
|
||||||
Instance = this;
|
Instance = this;
|
||||||
launchTime = (long)(DateTime.UtcNow - DateTime.UnixEpoch).TotalSeconds;
|
launchTime = (long)(DateTime.UtcNow - DateTime.UnixEpoch).TotalSeconds;
|
||||||
dc = new Discord.Discord(CLIENT_ID, (UInt64)CreateFlags.Default);
|
try {
|
||||||
am = dc.GetActivityManager();
|
dc = new Discord.Discord(CLIENT_ID, (UInt64)CreateFlags.NoRequireDiscord);
|
||||||
SetIdle();
|
Logger.Log("main", 1, "Discord", "Connected to Discord");
|
||||||
|
am = dc.GetActivityManager();
|
||||||
|
SetIdle();
|
||||||
|
}
|
||||||
|
catch (ResultException) {
|
||||||
|
Logger.Log("main", 3, "Discord", "Cannot connect to Discord");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Update() {
|
void Update() {
|
||||||
|
if (dc == null) return;
|
||||||
dc.RunCallbacks();
|
dc.RunCallbacks();
|
||||||
}
|
}
|
||||||
|
|
||||||
void OnApplicationQuit() {
|
void OnApplicationQuit() {
|
||||||
|
if (dc == null) return;
|
||||||
dc.Dispose();
|
dc.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Callback(Result result) { }
|
void Callback(Result result) { }
|
||||||
|
|
||||||
public void SetIdle() {
|
public void SetIdle() {
|
||||||
|
if (dc == null) return;
|
||||||
am.UpdateActivity(new Activity {
|
am.UpdateActivity(new Activity {
|
||||||
State = "Idle",
|
State = "Idle",
|
||||||
Instance = false,
|
Instance = false,
|
||||||
@@ -40,6 +50,7 @@ namespace Cryville.Crtr {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void SetPlaying(string detail, double? duration) {
|
public void SetPlaying(string detail, double? duration) {
|
||||||
|
if (dc == null) return;
|
||||||
long now = (long)(DateTime.UtcNow - DateTime.UnixEpoch).TotalSeconds;
|
long now = (long)(DateTime.UtcNow - DateTime.UnixEpoch).TotalSeconds;
|
||||||
am.UpdateActivity(new Activity {
|
am.UpdateActivity(new Activity {
|
||||||
State = "Playing a chart",
|
State = "Playing a chart",
|
||||||
|
Reference in New Issue
Block a user