This game re-uses the tilemap and camera system from the CSV Tilemap Game example. However the map is generated randomly instead of from the CSV file, and there are less complex movement behaviors since the player is actually a cursor.

The full revealed map gets stored in the ORIGINAL_MAP dictionary. The CURRENT_MAP dictionary holds what has been revealed to the player. 

Just like the Tilemap example PLAYER_LOC is a tuple with the current location of the player, though in this case it's the cursor. So whenever we use the A or B buttons we will look up the PLAYER_LOC to know which tile to take an action on.

CAMERA_VIEW is a dictionary like CURRENT_MAP and ORGINAL_MAP but it only stores enough of the map to show on the screen at once. On the PyBadge thats a 10x8 tile section. Each time we call set_camera_view() this dictionary gets updated from the current game state stored in CURRENT_MAP

See in the repository for more details.