private void AddConnection(int connectionId) { string recAddress; int port; UnityEngine.Networking.Types.NetworkID recNetId; UnityEngine.Networking.Types.NodeID recNodeId; byte recError; NetworkTransport.GetConnectionInfo(socketId, connectionId, out recAddress, out port, out recNetId, out recNodeId, out recError); NetworkPlayer player = GetPlayer(recAddress); // Jugador existía y se reconecta. if (player != null) { player.connected = true; player.connectionId = connectionId; SendMessageToClient(connectionId, "ChangeScene/" + player.room.sceneToLoad, true); timesScene1IsLoaded += 1; messageHandler.SendAllData(connectionId, player.room, true); UnityEngine.Debug.Log("Client " + connectionId + " reconnected"); return; } //Jugador no existía y se crea uno nuevo. Room room = SearchRoom(); if (room == null) { room = new Room(rooms.Count, this, messageHandler, maxJugadores); rooms.Add(room); } room.AddPlayer(connectionId, recAddress); }
private void AddConnection(int connectionId) { int port; byte recError; string recAddress; UnityEngine.Networking.Types.NodeID recNodeId; UnityEngine.Networking.Types.NetworkID recNetId; NetworkTransport.GetConnectionInfo(socketId, connectionId, out recAddress, out port, out recNetId, out recNodeId, out recError); NetworkPlayer player = GetPlayer(recAddress); // Jugador existía y se reconecta. if (player != null) { player.connected = true; player.connectionId = connectionId; SendMessageToClient(connectionId, "ChangeScene/" + player.room.sceneToLoad, true); List <NetworkPlayer> players = player.room.players; foreach (NetworkPlayer connectedPlayer in players) { if (connectedPlayer.controlOverEnemies) { SendMessageToClient(connectionId, "PlayerHasReturned/", true); break; } } messageHandler.SendAllData(recAddress, player.room); player.room.SendControlEnemiesToClient(player, false); player.SendDataToRoomBoxManager(); UnityEngine.Debug.Log("Client " + recAddress + " reconnected"); return; } //Jugador no existía y se crea uno nuevo. Room room = SearchRoom(); if (room == null) { roomCounter++; RoomLogger logger = null; if (lastDestroyedRoom != null) { logger = lastDestroyedRoom.log; lastDestroyedRoom = null; } room = new Room(roomCounter, this, messageHandler, maxPlayers, logger); RoomManager rm = GameObject.FindGameObjectWithTag("RoomManager").GetComponent <RoomManager>(); if (!rm) { UnityEngine.Debug.LogError("No se encontró RoomManager en ServerScene. uwu 1"); } rm.AddNewRoom(room); rooms.Add(room); } room.AddPlayer(connectionId, recAddress); }