Exemplo n.º 1
0
 public void OnLoginResponse()
 {
     if (!FB.IsLoggedIn)
     {
         Debug.Log("Login fail");
         if (OnLoginFail != null)
         {
             OnLoginFail.Invoke();
         }
     }
     else
     {
         Debug.Log("Login success");
         if (OnLoginSuccess != null)
         {
             OnLoginSuccess.Invoke();
             OnLoginSuccess -= OnLoginSuccess;
         }
     }
 }
Exemplo n.º 2
0
    async void Start()
    {
        token = PlayerPrefs.GetString("token");

        // Create socket and input the game server URL
        ws = new WebSocket("wss://api.cosmic.ygstr.com");


        ws.OnOpen += () => {
            Debug.Log("Connected to Cosmic server");
            OnConnected?.Invoke();
            Login();
        };

        ws.OnMessage += (bytes) => {
            string        message = System.Text.Encoding.UTF8.GetString(bytes);
            SocketPackage package = JsonUtility.FromJson <SocketPackage>(message);

            switch (package.identifier)
            {
            case "ping":
                stopwatch.Stop();
                OnPing?.Invoke((int)stopwatch.ElapsedMilliseconds);
                break;

            case "cards":
                LoadCards(package.packet);
                break;

            case "new_token":
                token = package.packet;
                PlayerPrefs.SetString("token", token);
                Login();
                break;

            case "user":
                OnUser(package.packet);
                break;

            case "login_fail":
                OnLoginFail?.Invoke();
                loggedIn = false;
                break;

            case "game_update":
                GameUpdate(package.packet);
                break;
            }
        };


        ws.OnClose += (e) => {
            Debug.Log("Connection closed");
            loggedIn = false;
            OnDisconnected?.Invoke();
            StartCoroutine(Reconnect());
        };

        // Connect to the server
        await ws.Connect();
    }
Exemplo n.º 3
0
 public void FailLogin() => OnLoginFail?.Invoke();