Exemplo n.º 1
0
    private void HandleLevelGraphChanged(Message message)
    {
        using (DarkRiftReader reader = message.GetReader())
        {
            _graphState.graph.Reset();

            _graphState.graph.TriggerId      = reader.ReadUInt16();
            _graphState.graph.EndLevelRoomId = reader.ReadUInt16();
            while (reader.Position < reader.Length)
            {
                short RoomId = reader.ReadInt16();
                short north  = reader.ReadInt16();
                short west   = reader.ReadInt16();
                short east   = reader.ReadInt16();
                short south  = reader.ReadInt16();
                _graphState.graph.AddVertex(RoomId, north, west, east, south);
            }
        }

        _levelSpawner.GenerateLevel();
        _sender.SendClientReady();
    }