Simba Code:
program new;
{$DEFINE SMART}
{$i Reflection/Reflection.simba}
procedure paintWorlds;
const
Worlds: TIntegerArray = [301, 321, 345, 369,
302, 322, 346, 370,
303, 325, 349, 373,
304, 326, 350, 374,
305, 327, 351, 375,
306, 328, 352, 376,
308, 329, 353, 377,
309, 330, 354, 378,
310, 333, 357, 381,
311, 334, 358, 382,
312, 335, 359, 383,
313, 336, 360, 384,
314, 337, 361, 385,
316, 338, 362, 386,
317, 341, 365, 393,
318, 342, 366, 394,
319, 343, 367, -1,
320, 344, 368, -1];
var
I: Integer;
PVPW, FreeW, MembW: TIntegerArray;
begin
PVPW := [325, 337];
FreeW := [301, 308, 316, 326, 335, 381, 382, 383, 384, 385, 393, 394];
MembW := [302, 303, 304, 305, 306, 309, 310, 311, 312, 313, 314, 317,
318, 319, 320, 321, 322, 327, 328, 329, 330, 333, 334, 336,
338, 341, 342, 343, 344, 345, 346, 349, 350, 351, 352, 353,
354, 357, 358, 359, 360, 361, 362, 365, 366, 367, 368, 369,
370, 373, 374, 375, 376, 377, 378, 386];
For I:=0 to High(Worlds)do
begin
Reflect.Smart.Graphics.DrawBox(Reflect.Math.GridBox(I + 1, 4, 18, 87, 18, 93, 24, Point(242, 58)));
If InIntArray(PVPW, Worlds[I])then
Reflect.Smart.Graphics.DrawClippedText(ToStr(Worlds[I]), 'smallChars07', MiddleBox(Reflect.Math.GridBox(I + 1, 4, 18, 87, 18, 93, 24, Point(242, 58))), clRed) else
If InIntArray(FreeW, Worlds[I])then
Reflect.Smart.Graphics.DrawClippedText(ToStr(Worlds[I]), 'smallChars07', MiddleBox(Reflect.Math.GridBox(I + 1, 4, 18, 87, 18, 93, 24, Point(242, 58))), clWhite) else
If InIntArray(MembW, Worlds[I])then
Reflect.Smart.Graphics.DrawClippedText(ToStr(Worlds[I]), 'smallChars07', MiddleBox(Reflect.Math.GridBox(I + 1, 4, 18, 87, 18, 93, 24, Point(242, 58))), clGreen) else
Reflect.Smart.Graphics.DrawClippedText(ToStr(Worlds[I]), 'smallChars07', MiddleBox(Reflect.Math.GridBox(I + 1, 4, 18, 87, 18, 93, 24, Point(242, 58))), clYellow);
end;
end;
begin
Reflect.Setup;
Reflect.Smart.Graphics.Clear;
paintWorlds;
end.