I'm working on an android game that will have a "world map" for selecting which level to play. Some examples of other games that implement what I'm trying to do are: Angry Birds, Kingdom Rush, and Candy Crush. In these various implementations the world map is scrollable, zoomable and tapping on a map node either takes the player immediately to the appropriate level, or displays an info box/page from which the player can view their score or play the level.

I implemented a world map for my game using the ImageMap library. The implementation I have is scrollable, zoomable, and selectable. It feels like I'm almost there, but I have a problem yet to solve.

How should I go about showing information for each node? I'd prefer to show the completion directly on the world map (Kindom Rush does this) instead of showing all of the information in a new page or pop-up view.

The information I want to show for each node is: + An icon if the level is locked + another icon if the level is unlocked, but not completed + possibly another icon for a completed level + possibly a "star" panel for completion score (1,2 or 3 stars)

I don't really need to know how to setup the data structure, so much as how to display it efficiently in the Activity. What is the best way to get this done? So far I haven't had much luck with layering images on top of the image map (so they would all zoom and scroll together) and I can't imagine that I'd really want to create a separate image for every possibly combination of node status.

In case anyone cares, I'm basing my game off of the Replica Island code base.

Any tips would be greatly appreciated. Even a high level answer may help me get started in the right direction.

  • \$\begingroup\$ Hi Did you overcome your issue ? If yes, can you possibly post your solution so others can also find out about it ? That would really be appreciated. \$\endgroup\$ – SpiXel Jan 1 '15 at 13:30
  • \$\begingroup\$ I wound up using a pure OpenGL solution I stead of ImageViews. I've found the performance to be much better and using OpenGL avoids some of the uncompressed image memory issues you can run into using Android ImageViews. \$\endgroup\$ – vecima Jan 2 '15 at 13:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.