Joaquin Monedero from Embarcadero built a Bejeweled clone for Delphi Firemonkey as a CodeRage 8 demo called Jweled. Originally it was built for Delphi XE5 Firemonkey but it should work in Delphi XE6 Firemonkey (I loaded it up in AppMethod). It should run on all of the Firemonkey platforms which are Android, IOS, OSX, and Windows. The main idea behind Bejeweled is the Match 3 mechanic. Which is to say you have to match 3 of the same icon in a straight line. You do this by selecting an icon and swapping it with another icon that is next to it. When you match 3 icons together they poof and more icons drop down from the top to replace them. You have a limited amount of time to match as many icons as you can. A twist on this idea can be seen in the popular mobile game Puzzle & Dragons where you can swap an icon with any other icon on the grid. You could easily re-skin this demo and expand it into a full game. The demo includes a full local high score system. There is some interesting code in there including a function called CreateTextAnimation which creates a piece of text and animates it upwards using TFloatAnimation before disappearing. Here is that function: procedure TfrmGame.CreateTextAnimation(i, j: Integer; Const aValue: string; aTextType: TTextType);
lText := TText.Create(nil);
lText.Parent := BoardLayout;
lText.Text := aValue;
lText.WordWrap := False;
lText.AutoSize := True;
lText.Position.X := i * fCellWidth;
lText.Position.Y := j * fCellHeight;
lText.HitTest := False;
lText.Font.Style := [TFontStyle.fsBold];
FMXExpress.com has over 700 tips and tricks for building cross platform apps on Android, IOS, OSX, Windows, and Linux with a single codebase and single UI using the FireMonkey framework found in Delphi and C++Builder.
FMXExpress covers top cross platform secrets for FireMonkey in C++Builder and Delphi XE5, XE6, XE7, XE8, Seattle, Berlin, Tokyo, Rio, and Sydney.