
the yellow, red and purple hexagons are active. Touching them and holding the touch will display their 'color' in the app's Title bar. Releasing will show the code # value for each
color.
Try it.
--
In the Designer, it will look something like this.

![]()
If you want to randomly set the outer ring and the sea (as in the board game) you can do much the same with sprites (suggest this is done first with lower Z values)

The blue section is in 6 pieces, and they are not all the same, but they all fit together whichever way, they will have to be images
The hexagons need to be images as you see them
The numbers need to be images as you see them
All of these three sets of elements need to be applied randomly at the beginning of the game (except that no number goes in the desert hexagon - see middle left !)

The attached Project File "Hexagons.aia" shows how to use the "map" method. Load the Project into App Inventor and then run the App in the Emulator, Companion or as an APK.
I have set it so that the Hexagon tapped is momentarily highlighted and the number on the hexagon is reported in a Label component. The Emulator does not show the highlighting, the Companion/APK on the phone does.


That makes everything very easy to calculate a little aligning algorithm.
The next hexagon X position can be calculated this way:
NextHexagon.X = CurrentHexagonX + (HexagonSprite.Width - (HexagonSprite.Width / 4 ))
and the next hexagon Y is
NextHexagon.Y = CurrentHexagonY - (HexagonSprite.Height / 2 )
because the next hexagon Y or "line" is exactly in the middle of the previous hexagon.
If you implement this in a loop, then you can automate the aligned "tiling" of your hexagons.
Does this makes sense?