public void ChangeMode() { Console.WriteLine("===Salle d'attente complete==="); State = State.InGame; MasterOperation(false); GameManager = new GameManager(CurrentLobby.Players, _map, _em, this); Server.Stop(); Console.WriteLine("Debut du jeu"); }
public void SetAnimationStateMachine(RigType rig, States initialState) { state = initialState; switch (rig) { case RigType.FOOT: animationStateMachine = new PlayerState(initialState, "Player State Machine", this.gameObject); break; case RigType.CHARSELECT: animationStateMachine = new CharSelectState(initialState, "Char Select State Machine", this.gameObject); break; default: break; } animationStateMachine.Entry(); }
void Awake() { state = new State(); state.packetState = State.PacketState.HEADER; state.bytesReceived = 0; state.bytesExpected = PrefixSize; Connect(); }
private static void RecievePrefixCallback(IAsyncResult ar) { try { state = (State)ar.AsyncState; Socket client = state.socket; int bytesRead = client.EndReceive(ar); if (bytesRead > 0) { if (bytesRead == state.bytesExpected) { string size = Encoding.ASCII.GetString(state.buffer, 0, PrefixSize); Debug.Log("size: " + size); int payloadSize = Int32.Parse(size, System.Globalization.NumberStyles.HexNumber); state = new State(); state.packetState = State.PacketState.PAYLOAD; state.bytesExpected = payloadSize; state.bytesReceived = 0; } else { state.bytesExpected = PrefixSize - bytesRead; state.bytesReceived += bytesRead; } } } catch (Exception e) { Debug.Log(e.ToString()); } Recieve(); }
private static void RecievePayloadCallback(IAsyncResult ar) { try { state = (State)ar.AsyncState; Socket client = state.socket; int bytesRead = client.EndReceive(ar); if (bytesRead > 0) { state.sb.Append(Encoding.ASCII.GetString(state.buffer, state.bytesReceived, bytesRead)); if (bytesRead == state.bytesExpected) { string data = crypto.Decrypt(state.sb.ToString()); // Switch to header mode state = new State(); state.packetState = State.PacketState.HEADER; state.bytesExpected = PrefixSize; state.bytesReceived = 0; Debug.Log(data); JsonReader reader = new JsonReader(data); Packet packet = reader.Deserialize<Packet>(); PacketType type = (PacketType)packet.type; switch (type) { case PacketType.CHARACTER: CharacterManager.Instance.handlePacket(packet.operation, data); break; case PacketType.USER: UserManager.Instance.handlePacket(packet.operation, data); break; default: break; } } else { state.bytesExpected -= bytesRead; state.bytesReceived += bytesRead; } } } catch (Exception e) { Debug.Log(e.ToString()); } Recieve(); }
public void OpenLobby() { CurrentLobby = new Lobby(_maxPlayers, _map, _em, this); Server = new Server(_em, _parser.Parse); Server.Start(_port); State = State.Lobby; MasterOperation(true); Console.WriteLine("Salle d'attente ouverte pour la map " + _map); }