When I revived my Monopoly Deal project (for the second time – first time here), I decided to scrap most of my Android code that I had built before. The reason for this was three-fold. The Android API has moved forward since I started, and I have learned a lot more about how to do UI effectively. Finally, I was not satisfied with how I abstracted the UI layer from the game engine so I figured I would just start from scratch.

I kept the UI design for some parts, especially the cards (although I re-wrote the code so that it is cleaner), but threw the rest out. I’m working on it bit-by-bit and finally finished adding the designs for normal and wildcard rent cards (see below). I’m not too happy with how the normal rent card looks so I might change it.

So far, I’ve spent most of my time working on the bank. The functionality of the bank is pretty straightforward. It needs to:

  • Show the cards and total in the bank
  • Allow changing of the top card (as opponents can see it)

I made the bank a slide out overlay that shows the cards. To move a card to the top, you can drag and drop it, and there are some nice animations around that.

I had a problem though, which is when a player has a lot of cards in the bank. I couldn’t let the user scroll the screen because a touch event would kick of the drag and drop. So I made all the cards stack up to fit on screen. This has the convenient side effect of making it look like a stack of cards.

Finally I added a little randomness in the stacking so the cards are not flush – just a little visual treat.