Background
Of late, I have been going through various ways of implementing the sliding puzzle (in fact, there are numerous ways even). This version of game here is pretty simple and very dynamic in nature. Each and every line here is written in such a way that the user has complete flexibility to set the size of the individual pieces of a picture as well as the number of cells per row.
The key features in implementing the game are:
Extremely dynamic with respect to the number of rows and the size of each individual cell.
Loads image pieces dynamically.
Scales images to the length of the puzzle.
Uses events to implement the logic.