That's it for this game. All the rest of the implementation is taken straight from the game we created in Chapter 4, Looking Sideways. We use the same object-oriented code of the player and the other sprites to resolve the collision between the player and the level.
A good exercise would be to make the enemies move around and attack the player, implement an experience and life bar for the player, and design a bigger world and more NPCs to make the story more interesting. Indeed, that's what makes RPGs so great to write; they are a great medium for telling stories!
Another way you could improve this game is to use an isometric projection instead of an orthogonal one. Explaining how to write a general-purpose isometric engine is outside the scope of this book, but if you want to learn more about this, you could read Making Isometric Social Real-Time Games with HTML5, CSS3, and JavaScript by Andres Pagella (http://shop.oreilly.com/product/0636920020011.do).