void CancelButtonOnClick() { SoundManager.PlayButtonSound(); //SceneManager.UnloadSceneAsync("Options Scene"); SocketioHandler.End(); SceneManager.LoadScene("Menu Scene", LoadSceneMode.Single); }
void ReconnectOnClick() { SoundManager.PlayButtonSound(); Dictionary <string, string> args = new Dictionary <string, string>(); SocketioHandler.Init("reconexion", args); SceneManager.LoadScene("Game Scene", LoadSceneMode.Single); }
void RandomGameOnClick() { SoundManager.PlayButtonSound(); Dictionary <string, string> args = new Dictionary <string, string>(); SocketioHandler.Init("buscarPartida", args); SceneManager.LoadScene("Lobby Scene", LoadSceneMode.Single); }
void InputIDButtonOnClick() { SoundManager.PlayButtonSound(); Dictionary <string, string> args = new Dictionary <string, string>(); args.Add("sala", IdentificadorInput.text); SocketioHandler.Init("unirseSala", args); SceneManager.LoadScene("Lobby Scene", LoadSceneMode.Single); }
void CreateGameOnClick() { SoundManager.PlayButtonSound(); Dictionary <string, string> args = new Dictionary <string, string>(); args.Add("priv", "true"); SocketioHandler.Init("crearSala", args); SceneManager.LoadScene("Lobby Scene", LoadSceneMode.Single); }
private void setConnectionHandlers() { SocketioHandler.AddHandler("turno", (data) => { // A quién le toca jugar // data = (string) GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(turno((string)data))); }); SocketioHandler.AddHandler("jugada", (data) => { // Un jugador acaba de realizar una jugada // data = { // user: (string), // casilla: (int), // ques: (string - vacío si no consigue) // } GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(jugada((JObject)data))); }); SocketioHandler.AddHandler("finDelJuego", (data) => { // Fin del juego con el ganador // data = (string) GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(findDelJuego((string)data))); }); SocketioHandler.AddHandler("chat", (data) => { // Mensaje del chat // data = { // usuario: (string), // msg: (string) // } GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(chat((JObject)data))); }); SocketioHandler.AddHandler("jugadorSale", (data) => { // Un jugador acaba de abandonar la partida // data = (string) GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(jugadorSale((string)data))); }); SocketioHandler.AddHandler("reconexionJugador", (data) => { // Un jugador que había salido vuelve // data = { // user: (string), // imgs: { // avatar: (string), // banner: (string), // ficha: (string), // } // } GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(reconexionJugador((JObject)data))); }); }
private void startReconnection() { Dictionary <string, Action <object> > handlers = new Dictionary <string, Action <object> >(); handlers.Add("estadoPartida", (data) => { GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(estadoPartida((JObject)data))); }); SocketioHandler.Start(() => { return; }, () => { GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => SceneManager.LoadScene("Menu Scene", LoadSceneMode.Single)); }, handlers); }
// Start is called before the first frame update void Start() { if (ExecuteOnMainThread == null) { ExecuteOnMainThread = new Queue <Action>(); } setLider(false); PlayersDataScript.turno = ""; Dictionary <string, Action <object> > handlers = new Dictionary <string, Action <object> >(); handlers.Add("nuevoJugador", (user) => { JObject usuario = (JObject)user; LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(nuevoUsuario(usuario))); }); handlers.Add("cargarJugadores", (usuarios) => { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(cargarJugadores((JObject)usuarios))); }); handlers.Add("cambioLider", (data) => { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(cambioLider((JObject)data))); }); handlers.Add("abandonoSala", (user) => { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(salidaUsuario((string)user))); }); handlers.Add("comienzoPartida", (_) => { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => SceneManager.LoadScene("Game Scene", LoadSceneMode.Single)); }); handlers.Add("turno", (usuario) => { PlayersDataScript.turno = (string)usuario; }); if (SocketioHandler.op.Equals("crearSala")) { StartCoroutine(setPropio()); setLider(true); } SocketioHandler.Start(() => { if (SocketioHandler.op.Equals("crearSala")) { SocketioHandler.socket.Emit("obtenerIdSala", (id) => { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => StartCoroutine(setIdSala((string)id))); }); } }, () => { if (LobbyBehaviourScript.ExecuteOnMainThread != null) { LobbyBehaviourScript.ExecuteOnMainThread.Enqueue(() => SceneManager.LoadScene("Menu Scene", LoadSceneMode.Single)); } if (GameBehaviourScript.ExecuteOnMainThread != null) { GameBehaviourScript.ExecuteOnMainThread.Enqueue(() => SceneManager.LoadScene("Menu Scene", LoadSceneMode.Single)); } SocketioHandler.End(); }, handlers); StartButton.onClick.AddListener(StartButtonOnClick); CancelButton.onClick.AddListener(CancelButtonOnClick); }
void OnApplicationQuit() { SocketioHandler.End(); }
void ReturnButtonOnClick() { //SceneManager.UnloadSceneAsync("Profile Scene"); SocketioHandler.End(); SceneManager.LoadScene("Menu Scene", LoadSceneMode.Single); }