Fix crashes

This commit is contained in:
msciotti 2018-11-02 14:56:01 -07:00
parent bc22841700
commit 30c93579d5
No known key found for this signature in database
GPG Key ID: 40FADA25CF0EAD84

View File

@ -9,24 +9,6 @@ public class DiscordSpectateEvent : UnityEngine.Events.UnityEvent<string> { }
[System.Serializable]
public class DiscordJoinRequestEvent : UnityEngine.Events.UnityEvent<DiscordRpc.DiscordUser> { }
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()