Ejemplo n.º 1
0
 public void Connected()
 {
     client.autoReconnect = true;
     VRCModLogger.Log("Client autoReconnect set to true");
     State = ConnectionState.CONNECTED;
     VRCModNetworkStatus.UpdateNetworkStatus();
     OnConnected?.Invoke();
 }
Ejemplo n.º 2
0
 public override void OnUpdate()
 {
     if (!Initialized)
     {
         return;
     }
     VRCModNetworkManager.Update();
     VRCModNetworkStatus.Update();
     //ModdedUsersManager.Update();
 }
Ejemplo n.º 3
0
        private IEnumerator Setup()
        {
            // TODO check for updates

            MelonModLogger.Log("Initialising VRCModNetwork");

            MelonModLogger.Log("Overwriting login button event");
            VRCUiPageAuthentication loginPage = Resources.FindObjectsOfTypeAll <VRCUiPageAuthentication>().FirstOrDefault((page) => page.gameObject.name == "LoginUserPass");

            MelonModLogger.Log("loginPage: " + loginPage);
            if (loginPage != null)
            {
                Button loginButton = loginPage.transform.Find("ButtonDone (1)")?.GetComponent <Button>();
                if (loginButton != null)
                {
                    ButtonClickedEvent bce = loginButton.onClick;
                    loginButton.onClick = new ButtonClickedEvent();
                    loginButton.onClick.AddListener(new Action(() =>
                    {
                        VRCModNetworkManager.SetCredentials(Uri.EscapeDataString(loginPage.loginUserName.field_String_2) + ":" + Uri.EscapeDataString(loginPage.loginPassword.field_String_2));
                        bce?.Invoke();
                    }));
                }
                else
                {
                    MelonModLogger.Log("Unable to find login button in login page");
                }
            }

            try
            {
                VRCModNetworkStatus.Setup();
                VRCModNetworkLogin.SetupVRCModNetworkLoginPage();
                //ModdedUsersManager.Init();
            }
            catch (Exception e)
            {
                MelonModLogger.LogError(e.ToString());
            }

            MelonModLogger.Log("Injecting VRCModNetwork login page");
            VRCModNetworkLogin.InjectVRCModNetworkLoginPage();

            MelonModLogger.Log("Connecting");
            yield return(VRCModNetworkManager.ConnectInit());

            MelonModLogger.Log("VRCModNetwork sucessfully initialized!");

            Initialized = true;
        }
Ejemplo n.º 4
0
 public void ConnectionFailed(string error)
 {
     State = ConnectionState.DISCONNECTED;
     VRCModNetworkStatus.UpdateNetworkStatus();
 }
Ejemplo n.º 5
0
 public void ConnectionStarted()
 {
     State = ConnectionState.CONNECTING;
     VRCModNetworkStatus.UpdateNetworkStatus();
 }