public static void SendTileChangePacket(Tile tile) { var tileChangePacket = new TileTypePacket() { X = tile.TileX, Y = tile.TileY, TileType = tile.TileType }; var package = NetworkManager.MessagePackager.Package(tileChangePacket); NetworkManager.SendMessage(package); }
private async void SendMap(Connection connection) { for (var i = 0; i < _gameWorld.Width; i++) { for (var j = 0; j < _gameWorld.Height; j++) { // TODO NETWORK GAME AREAS var tileToSend = _gameWorld.GameAreas[0].Tiles[i, j]; var tileTypePacket = new TileTypePacket() { X = tileToSend.TileX, Y = tileToSend.TileY, TileType = tileToSend.TileType }; var packet = _messagePackager.Package(tileTypePacket); _networkManager.SendMessage(packet, connection); } await Task.Delay(1); } foreach (var player in _entitySet.GetAll()) { var playerPacket = new NewPlayerPacket() { SteamId = player.EntityId, X = (int)player.X, Y = (int)player.Y, HeadId = 1 }; var package = _messagePackager.Package(playerPacket); _networkManager.SendMessage(package, connection); await Task.Delay(1); } var mapSendCompletePacket = new MapSendCompletePacket(); var mapSendCompletePackage = _messagePackager.Package(mapSendCompletePacket); _networkManager.SendMessage(mapSendCompletePackage, connection); }