I have a small dusty project I found in my files that I've recently touched up to a pseudo-functional state, and hope to work on more over the course of time. But anyway, I thought I would post it here for those who learn by reading code.
Here is a recent screen shot.
And here is my to do list.
KEY: x=Complete(reasonably), o=Incomplete, ~=Changed/Dropped/Obsolete
To Do:
o Render Background
x Load tiles into array
x Set map array
x Draw the tile in map array corresponding to tile array image
x Return tile when mouse over tile
x Display a cursor
x Allow scrolling
x Allow flexible sizes
o Automated Tile Border Mixing System
o Draw Walls/Trees, static objects
o Draw Objects non-static
o Draw Player/Players objects
o Save Map
x Output File
o Saving Map screen
o Load Map
x Input File
o Loading Map screen
o Graphical Selector
x Draw Thumbnails of tiles
x Click to select
o Checkerboard background / Lines, or something for aesthetics.
o Scroll bar
o Draw Thumbnails of objects
o Switch to select objects
o Collision Mapping
o test object is colliding with map
o test object is colliding with object
o pixel-perfect object overlapping object
o linear collision
o Lighting system
o create lights
o move lights
o color lights
o Line Of Sight From Point System
o Weather Overlay
o Allow continuous Scrolling
o Allow import weather effect