I am probably wasting my breath here, but it really would be nice if you documented this thing better. A couple of issues:
1. The little tutorial you have on Codeplex makes use of the following overload of the Draw method of the Map class:
I have found that if I want to be able to scroll I need to use the following overload:
map.Draw(mapDisplayDevice, displayOffset, viewport),
where I treat displayOffset as the location of the map viewport. Using this overload means I have to offset my character's x and y when I draw him:
Vector2 correctedPosition = new Vector2(character.X + displayOffset.X, character.Y + displayOffset.Y);
spriteBatch.Draw(character.sprite, correctedPosition, Color.White);
2. The intellisense in VisualStudio says that there are two overloads for the Tiles method of the Layer class. One takes a Location as a parameter, and the other takes an x and a y. So far as I can tell, the overload with the x and y parameters
interprets them as tile coordinates and not as x-y coordinates. Using this overload earned me many errors of the flavor "Tile indices out of bounds."
The overload that takes a location does what I want, in that it returns the tile that occupies those x-y coordinates on the map.