private static void OnCPacketFloatingPiece(NetConnection connection, CPacketFloatingPiece packet) { if (!IsConnectionCurrentPlayer(connection)) { return; } var room = Rooms[PlayerMap[connection.RemoteUniqueIdentifier]]; foreach (var player in room.Players.Where(player => player.RemoteClient.RemoteUniqueIdentifier != connection.RemoteUniqueIdentifier)) { player.RemoteClient.SendMessage( _server.CreateStructMessage(new SPacketFloatingPiece(packet.Type, packet.X, packet.Y)), NetDeliveryMethod.UnreliableSequenced, 0); } }