From 30c93579d5ce493da0a6de66fa6d2df276400633 Mon Sep 17 00:00:00 2001 From: msciotti Date: Fri, 2 Nov 2018 14:56:01 -0700 Subject: [PATCH] Fix crashes --- .../Assets/DiscordController.cs | 58 +++++++------------ 1 file changed, 22 insertions(+), 36 deletions(-) diff --git a/examples/button-clicker/Assets/DiscordController.cs b/examples/button-clicker/Assets/DiscordController.cs index 66554f0..65f44a1 100644 --- a/examples/button-clicker/Assets/DiscordController.cs +++ b/examples/button-clicker/Assets/DiscordController.cs @@ -9,24 +9,6 @@ public class DiscordSpectateEvent : UnityEngine.Events.UnityEvent { } [System.Serializable] public class DiscordJoinRequestEvent : UnityEngine.Events.UnityEvent { } -public class GameManager { - private static GameManager instance = null; - public static GameManager Instance { - get - { - if (instance == null) - { - instance = new GameManager(); - } - return instance; - } - } - public UnityEngine.Events.UnityEvent onConnect; - public UnityEngine.Events.UnityEvent onDisconnect; - public UnityEngine.Events.UnityEvent hasResponded; - public DiscordRpc.DiscordUser joinRequest; -} - public class DiscordController : MonoBehaviour { public DiscordRpc.RichPresence presence = new DiscordRpc.RichPresence(); @@ -36,6 +18,10 @@ public class DiscordController : MonoBehaviour public DiscordJoinEvent onJoin; public DiscordJoinEvent onSpectate; public DiscordJoinRequestEvent onJoinRequest; + public UnityEngine.Events.UnityEvent onConnect; + public UnityEngine.Events.UnityEvent onDisconnect; + public UnityEngine.Events.UnityEvent hasResponded; + public DiscordRpc.DiscordUser joinRequest; DiscordRpc.EventHandlers handlers; @@ -47,54 +33,54 @@ public class DiscordController : MonoBehaviour DiscordRpc.UpdatePresence(presence); } - public static void RequestRespondYes() + public void RequestRespondYes() { Debug.Log("Discord: responding yes to Ask to Join request"); - DiscordRpc.Respond(GameManager.Instance.joinRequest.userId, DiscordRpc.Reply.Yes); - // hasResponded.Invoke(); + DiscordRpc.Respond(joinRequest.userId, DiscordRpc.Reply.Yes); + hasResponded.Invoke(); } - public static void RequestRespondNo() + public void RequestRespondNo() { Debug.Log("Discord: responding no to Ask to Join request"); - DiscordRpc.Respond(GameManager.Instance.joinRequest.userId, DiscordRpc.Reply.No); - // hasResponded.Invoke(); + DiscordRpc.Respond(joinRequest.userId, DiscordRpc.Reply.No); + hasResponded.Invoke(); } - public static void ReadyCallback(ref DiscordRpc.DiscordUser connectedUser) + public void ReadyCallback(ref DiscordRpc.DiscordUser connectedUser) { Debug.Log(string.Format("Discord: connected to {0}#{1}: {2}", connectedUser.username, connectedUser.discriminator, connectedUser.userId)); - // GameManager.Instance.onConnect.Invoke(); + onConnect.Invoke(); } - public static void DisconnectedCallback(int errorCode, string message) + public void DisconnectedCallback(int errorCode, string message) { Debug.Log(string.Format("Discord: disconnect {0}: {1}", errorCode, message)); - // onDisconnect.Invoke(); + onDisconnect.Invoke(); } - public static void ErrorCallback(int errorCode, string message) + public void ErrorCallback(int errorCode, string message) { Debug.Log(string.Format("Discord: error {0}: {1}", errorCode, message)); } - public static void JoinCallback(string secret) + public void JoinCallback(string secret) { Debug.Log(string.Format("Discord: join ({0})", secret)); - // onJoin.Invoke(secret); + onJoin.Invoke(secret); } - public static void SpectateCallback(string secret) + public void SpectateCallback(string secret) { Debug.Log(string.Format("Discord: spectate ({0})", secret)); - // onSpectate.Invoke(secret); + onSpectate.Invoke(secret); } - public static void RequestCallback(ref DiscordRpc.DiscordUser request) + public void RequestCallback(ref DiscordRpc.DiscordUser request) { Debug.Log(string.Format("Discord: join request {0}#{1}: {2}", request.username, request.discriminator, request.userId)); - GameManager.Instance.joinRequest = request; - // onJoinRequest.Invoke(request); + joinRequest = request; + onJoinRequest.Invoke(request); } void Start()