Simba Code:
{
RadialWalkAid - Rebirth
by mormonman
This will help you make Radials for
RadialRoadWalk.
}
program RadialWalkerAid;
//{$DEFINE SMART}
{$i srl\srl.simba}
const
Debug = False; //recommended at false
MCX = 109;
MCY = 85;
//Don't touch below this
var
mForm: TForm;
mMap, mCol: TImage;
mButtons: array[0..5] of TButton;
mLabels: array[0..5] of TLabel;
mEdits: array[0..2] of TEdit;
mList: TListBox;
mCheck: TCheckBox;
emptyMap, CColor, curMap, Ind: Integer;
Paused, Working: Boolean;
procedure m_Debug(str: String);
begin
if Debug then
Writeln('['+MsToTime(GetTimeRunning, TIME_BARE)+'] ' + str);
end;
procedure DrawColor(col: Integer; b: TImage);
var
bmp: Integer;
begin
bmp := BitmapFromString(b.Width-4, b.Height-4, '');
FloodFillBitmap(bmp, Point(0, 0), 0, col);
DrawBitmap(bmp, b.Canvas, 2, 2);
FreeBitmap(bmp);
end;
procedure GetMinimap;
var
tpa: TPointArray;
tia: TIntegerArray;
begin
//if not LoggedIn then
// begin
// m_Debug('Not logged in, unable to get minimap');
// ShowMessage('Unable to get minimap: Either SMART is not enabled or player is not logged in');
// Exit;
// end;
m_Debug('Retrieving map points');
tpa := TPAFromBox(MMBox);
FilterPointsDist(tpa, 0, 80, MMCX, MMCY);
tia := GetColors(tpa);
OffsetTPA(tpa, Point(-517, 0));
FastSetPixels(curMap, tpa, tia);
DrawBitmap(curMap, mMap.Canvas, 0, 0);
end;
procedure NextColor;
var
ColArr: TIntegerArray;
s, Hi: Integer;
begin
ColArr := [clBlue, clWhite, clRed, clGreen, clPurple, clAqua, clOlive, 65536, 49647, 5083366];
if InIntArrayEx(ColArr, s, CColor) then
begin
Hi := High(ColArr);
if s = Hi then
s := 0
else
Inc(s);
CColor := ColArr[s];
end;
end;
function FindRadial(x,y,radius: Integer): Integer;
var
x1,y1,r: Integer;
begin
for r := 0 to 360 do
begin
x1 := Round(Radius*Sin(r * pi / 180)) + MCX;
y1 := Round(-Radius*Cos(r * pi / 180)) + MCY;
if(Distance(x1,y1,x,y)<=1)then
begin
Result := r;
Exit;
end;
end;
m_Debug('Failed to get radial');
end;
procedure DrawRadial(x, y: Integer);
var
Radius, Radial: integer;
begin
Radius := Distance(MCX, MCY, x, y);
if (Radius > 80) then Exit;
Radial := FindRadial(x, y, Radius);
DrawBitmap(curMap, mMap.CANVAS, 0, 0);
mMap.CANVAS.Pen.Color := CColor;
mMap.CANVAS.MoveTo(MCX, MCY);
mMap.CANVAS.LineTo(x, y);
mLabels[1].Caption := 'Radial: ' + ToStr(Radial);
mLabels[0].Caption := 'Radius: ' + ToStr(Radius);
end;
procedure DoRadialPath(StartRadial, EndRadial, Radius: Integer);
var
x1, y1, i, ma, mi, len, c, bmp: Integer;
tpa: TPointArray;
tia: TIntegerArray;
begin
if (Working) then exit;
if (Radius > 80) then exit;
Working := true;
StartRadial := StartRadial + 180;
EndRadial := EndRadial + 180;
StartRadial := 360 - StartRadial;
EndRadial := 360 - EndRadial;
ma := Max(EndRadial, StartRadial);
mi := Min(EndRadial, StartRadial);
c := 0;
SetLength(tpa, ceil((4/3)*Pi*pow(Radius, 3)));
repeat
for i := mi to ma do
begin
x1:= Round(Radius * Sin(i*pi/180)) + MCX;
y1:= Round(Radius * Cos(i*pi/180)) + MCY;
tpa[c] := Point(x1, y1);
Inc(c);
m_Debug('x1: ' + ToStr(x1) + ' y1: '+ToStr(y1));
end;
Radius := Radius - 4;
until(Radius <= 1);
SetLength(tpa, c);
bmp := CopyBitmap(curMap);
DrawTPABitmap(bmp, tpa, CColor);
DrawBitmap(bmp, mMap.CANVAS, 0, 0);
Working := False;
end;
procedure OnClick(Sender : TObject);
var
ints: array[0..2] of Integer;
i: Integer;
strarr: array[0..2] of String;
str: String;
begin
if Working then Exit;
m_Debug('OnClick');
case Sender of
mMap:
begin
Paused := not Paused;
if not Paused then mCheck.Checked := True;
mLabels[5].Caption := 'Paused: ' + ToStr(Paused);
end;
mCheck:
begin
Paused := not mCheck.Checked;
mLabels[1].Caption := 'Radial: 0';
mLabels[0].Caption := 'Radius: 0';
mLabels[5].Caption := 'Paused: ' + ToStr(Paused);
DrawBitmap(curMap, mMap.Canvas, 0, 0);
end;
mButtons[0]://Change color
begin
NextColor;
m_Debug('New Color: ' + ToStr(CColor) + ' Old Color: ' + ToStr(mButtons[0].Font.Color));
DrawColor(CColor, mCol);
end;
mButtons[1]://Clear map
begin
m_Debug('Cleared map');
Paused := False;
mLabels[1].Caption := 'Radial: 0';
mLabels[0].Caption := 'Radius: 0';
mLabels[5].Caption := 'Paused: ' + ToStr(Paused);
mCheck.Checked := True;
DrawBitmap(curMap, mMap.Canvas, 0, 0);
end;
mButtons[2]://Load map
begin
m_Debug('Loading new map');
GetMinimap;
end;
mButtons[3]://Add
begin
if mEdits[2].Text <> '0' then
try
for i := 0 to 2 do
ints[i] := StrToIntDef(mEdits[i].TEXT, 0);
if (not InRange(ints[0], 0, 360)) or
(not InRange(ints[1], 0, 360)) or
(not InRange(ints[2], 1, 80)) then
begin
m_Debug('Info not right');
ShowMessage('Please use correct values for radians and radius');
Exit;
end;
m_Debug('Adding info to list');
mList.ITEMS.Add('SR: '+(mEdits[0].Text)+' ER: '+(mEdits[1].Text)+' Rad: '+(mEdits[2].Text)+' ');
except
ShowMessage('Please only use integers!');
finally
end;
end;
mButtons[4]://Delete
begin
if (mList.SELCOUNT > 0) then
begin
m_Debug('Deleting info from list');
mList.ITEMS.Delete(Ind);
case mList.ITEMS.Count of
0:
begin
end;
1:
begin
mList.SELECTED[0] := True;
Ind := 0;
end;
else
begin
Dec(Ind);
mList.SELECTED[Ind] := True;
end;
end;
end;
end;
mButtons[5]://Draw path
begin
if (mList.SELCOUNT > 0) then
begin
Ind := mList.ITEMINDEX;
m_Debug('Drawing radial path');
str := mList.ITEMS.Strings[Ind];
strarr[0] := Between('SR: ', ' ER:', str);
strarr[1] := Between('ER: ', ' Rad:', str);
strarr[2] := Between('Rad: ', ' ', str);
for i := 0 to 2 do
ints[i] := StrToIntDef(strarr[i], 0);
if (not InRange(ints[0], 0, 360)) or
(not InRange(ints[1], 0, 360)) or
(not InRange(ints[2], 1, 80)) then
begin
m_Debug('Info not right');
ShowMessage('Please use correct values for radians and radius');
Exit;
end;
DoRadialPath(ints[0], ints[1], ints[2]);
Paused := True;
mLabels[1].Caption := 'Radial: 0';
mLabels[0].Caption := 'Radius: 0';
mLabels[5].Caption := 'Paused: ' + ToStr(Paused);
mCheck.Checked := False;
end;
end;
mList://Set Ind
begin
if (mList.SELCOUNT > 0) then
begin
Ind := mList.ITEMINDEX;
m_Debug('Index: ' +ToStr(Ind));
end;
end;
end;
end;
procedure OnMouseMove(Sender: TObject; S: TShiftState; x, y: integer);
begin
if Working then Exit;
m_Debug('Mouse moved: ' + ToStr(Point(x, y)));
if not Paused then DrawRadial(x, y);
end;
procedure FormInit;
var
i: Integer;
EBox, BBox, LBox: TBoxArray;
LCap, BCap: TStringArray;
begin
mForm := TForm.Create(nil);
with mForm do
begin
Caption := 'RadialWalkAid - Rebirth';
SetBounds(100, 100, 450, 263);
BorderStyle := bsDialog;
end;
mMap := TImage.Create(mForm);
with mMap do
begin
Parent := mForm;
SetBounds(5, 5, 248, 169);
DrawBitmap(emptyMap, Canvas, 0, 0);
OnMouseMove := @OnMouseMove;
OnClick := @OnClick;
end;
mCol := TImage.Create(mForm);
with mCol do
begin
Parent := mForm;
SetBounds(114, 179, 10, 25);
end;
DrawColor(CColor, mCol);
mList := TListBox.Create(mForm);
with mList do
begin
Parent := mForm;
SetBounds(258, 5, 187, 169);
OnClick := @OnClick;
end;
mCheck := TCheckBox.Create(mForm);
with mCheck do
begin
Parent := mForm;
SetBounds(129, 209, 121, 25);
Caption := 'Draw Radial';
Checked := True;
OnClick := @OnClick;
end;
SetLength(EBox, 3);
EBox[0] := IntToBox(258, 235, 60, 25);
EBox[1] := IntToBox(321, 235, 60, 25);
EBox[2] := IntToBox(384, 235, 60, 25);
SetLength(LBox, 6);
LBox[0] := IntToBox(5, 179, 60, 20);
LBox[1] := IntToBox(5, 199, 60, 20);
LBox[2] := IntToBox(260, 215, 60, 25);
LBox[3] := IntToBox(323, 215, 60, 25);
LBox[4] := IntToBox(386, 215, 60, 25);
LBox[5] := IntToBox(5, 219, 60, 20);
LCap := ['Radius: 0', 'Radial: 0', 'Start Rad:',
'End Rad:', 'Radius:', 'Paused: False'];
SetLength(BBox, 6);
BBox[0] := IntToBox(129, 179, 125, 25);
BBox[1] := IntToBox(5, 234, 123, 25);
BBox[2] := IntToBox(131, 234, 123, 25);
BBox[3] := IntToBox(257, 179, 61, 25);
BBox[4] := IntToBox(321, 179, 61, 25);
BBox[5] := IntToBox(385, 179, 61, 25);
BCap := ['Change Debug Color', 'Clear Map', 'Load Map',
'Add', 'Delete', 'Draw'];
for i := 0 to 5 do
begin
if (i < 3) then
begin
mEdits[i] := TEdit.Create(mForm);
with mEdits[i] do
begin
Parent := mForm;
SetBounds(EBox[i].X1, EBox[i].Y1, EBox[i].X2, EBox[i].Y2);
Text := '0';
end;
end;
mLabels[i] := TLabel.Create(mForm);
with mLabels[i] do
begin
Parent := mForm;
SetBounds(LBox[i].X1, LBox[i].Y1, LBox[i].X2, LBox[i].Y2);
Caption := LCap[i];
end;
mButtons[i] := TButton.Create(mForm);
with mButtons[i] do
begin
Parent := mForm;
SetBounds(BBox[i].X1, BBox[i].Y1, BBox[i].X2, BBox[i].Y2);
if (i = 0) then
Font.Color := CColor;
Caption := BCap[i];
OnClick := @OnClick;
end;
end;
mForm.ShowModal;
end;
procedure FormSafeCall(proc: string);
var
v: TVariantArray;
begin
SetLength(v, 0);
ThreadSafeCall(proc, v);
end;
procedure FormFree();
begin
mForm.Free();
end;
procedure Init;
begin
CColor := clBlue;
emptyMap := BitmapFromString(248, 169, 'meJztnQl0FNed7sGxDbbBsc1i' +
'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' +
'ze1U0d5Q3d6xu3FLR7DGfkc75pocfD647D0mPKN0SXjMAlw7UU43E' +
'i5DMAO2DhLMvuqHkrIFC3gMdJUFL6yK2XCLnOCZ+yG+ORZf0wXkYL' +
'Xq+dknmjg2rT+9uRPXTRs9fPPzM8e5Httdtca5akZSQNDcoeVaw+B' +
'Yr52s3u2Fu6TLNzCgvhfOyhvaVdW2lG9vi89eZfAsqiXFpWUA9b+B' +
'Z1f98gep/HlrcCWhhPFS/RLd0s7MWytgY336OnpxtQ4rwyoOAHDVQ' +
'cB5aPYB9lq9vZAuRn/ObY9E5H5yHMTKyJDwFnO9JK4M/b4pfVh21O' +
'Dc0tiwl9aEt619/5mHdn//b+9959emjvS3OooTEpPuDlsx8MGvW/N' +
'wHIktD45ly8eFbPGemc21xPUe6WQXE3Hhw+pbSho68dQ0m38JxFvi' +
'z6dLZ0SXEMN6gF/XKqNbzIJlsw36jAODJP9Zs6GfbUGTpFkAe4jwY' +
'0/tS3rbjEHMOIPJzfnMsJj035mFU+Ra2ELGz1o6UVV2LiupiMrPnR' +
'JamZXzvmy+g4gkNh13BGpD/1TdfKExKTZoelDsnYlVwbElIHCH3xr' +
'nTO+ei52qmDEPPVzdsKd3UXtbYkeVsNvkWPhdaPdFiff3SzmOhTef' +
'V+NAFWaqOuVyhrqL2BIEn8wgUsAUBwnEXAOSq53nKcqwV5NuPs5ui' +
'35zfTIuJc9c8jEZesTEmS/ol7kxZVRO1OCMoqnLZ8pWO9IOb16Li+' +
'X9/+T7sCpQckJfnr4ifGZwx88GVwQsEcvEtZhkfhp67pgYw9Hx1Q3' +
'tpw5allTUyD6OJc0deEVGHqqMuOTUmO2BhgbIixZ1hpdthSwi2Yhv' +
'1TUPDQTV3IOQAHlXX+F1XNnTtJOc0537Ob45F5xxoueZhjIyMmBfv' +
'DFvE3lmIjoS8yvnJy6OSgHr6zAeXL1x4fOdGVDw/t6O+MDEhbtpsQ' +
'J46L2rR/XOLgqJ1MbflvNI906JpRlGTb6l0ca4senlTp6OkWuZhFM' +
'7luRZU9ezm3oiu55RKp5cGxC9FRCxvgPHm8E+ATbZZgOzjclCefO1' +
'AzvG/AOQbdx2QsRX4cj/nN80CzjlclK3/7nkYXdaFIylULMiqjVpc' +
'GpKAWDE3duGM4C1VK95+9TGs42Y8AEMOJQfkWbPmrQyOtYq5JFiGz' +
'7mb9g7l0pu2OFu745etkHkYdT0PMuatUM/wT1minjIE1NsvqZ7klQ' +
'dnZ6wCyQQeMTU2WwXUnlsWFuCKUI9tMYbUwecDcv35cn7Ib6ZFJJ2' +
'cu+ZhNCQdtVF2QWQvxA3zHYiy4IQlgQ+WOpJfPN+LdWpAyPKgGNgV' +
'KLlA7sO0jDQU6vDtbVv1eRg5+M7EOVGPTskoWteQ0DDA6qdq5Szdn' +
'rphNyKhahvXuARgYDhQNOPom7uOHV9Svh6Qb9p9WB/47Of8ZlrMFl' +
'3mYTRcOtyLcM6+iBWhi3JnR6aFzOuuW50SHAYNL9Yqnjrn1ozi6Dh' +
'Xqcj2rfo8jKRan1dRHp0Um5oVk5qBUA9LbO7N2fMoouDoaxkHX2J/' +
'XT7LYsWxq1WPvbH31LnFILzYmVlYXNbYCc4rW3r8nN+UCzlPqOtna' +
'9GGzp3ueRjpXlLBNiEn55Whi5Y/sCB5VvDa3Cysc+dElNhxLpDDtD' +
'BQLm9sX9vW456uTjUSsaAmkjbqpE63sSHeWK9paOMcXqZ5GJVvKV2' +
'XVbUxKCp+Vng0IyAsPCEjr7CqLrOoJC4taziRXeJ0FJZiXdmyddPu' +
'I8VNe/yc35QLOAfkwrkaIqrPw2igDnEm5Iw1IYnL5kRkzpqHtZ5g0' +
'SE3zcMoqLNA2lkQ5sG5MK/sitHLZXVD2+pNmys952EUzgtqm2dHxu' +
'qcp+QUgHPSO2TgcmAB+6/vPoAwOFeoR2XV+Dm/mRbqOSeQ5YALSDp' +
'CzcO42YW6CLseVrxJOCHX52HU66FgmEgjsH3dlm0EWySd+1S466qV' +
'xpSjiOHoOcLEOUgWmH0EPuLJ+R4/5zfZonMuT+gq27QZkdW0H6gHF' +
'h9SM9O5abfFWwj3Ng+jaU5Gb+F+d2+yEUnap/R5GL3puXBuEm1b1P' +
'WN+B4X580uzgOy1/OBitf7/PiXa7PYco4oWt+42o26EnY1D2MZabd' +
'dPs15GHXOdcgRFOfhcK5HyabO9T0G5AxwngPO1/s5v2kWcC4T3+uc' +
'E3XXPIybTyraWy8E1Z8PrezXxfnTn4dxTmSsiXPYcuEcjqWoqi6ts' +
'BSRU+LMKipB8GXa8DlvNjjPAeerrvf58S/XZvHBeWXr1m0nHityzc' +
'PYndW4j9IKjRXV/ZTnYQyOipcHFtGfC+Gzw6NxCYBq4E3IyblAbks' +
'7fA451yEf5DzSz/lNsthzbpzr6s7dnQOnES29xzgPI+x34boGID0o' +
'tu55GGNlHsawcJvw+TgL2ykAhnxMOjmnP5/tyXlqfnHGijWLC0ocO' +
'fkLswsQi3IKU3JXYrtOOyAn57gv+Dm/uRcbzt3nGnre9fA5RFvfSa' +
'BetK5RzcPoyLIqbXBCCsKecC1sH9jibX6uIecCoG+Bws92cz5zXuT' +
'ivBXpBcVJS3ISlyyNXpQWEZv44ALEwvnxSTGpGfFLli7KLkg2gE/N' +
'KUjMyGNSsbB+my3nkxeuvd7nx79cm0XnPL2qSz/X9C3gnJIOqGId2' +
'dEpmYyIhelDgm3mHAbDE/Lg+VHB3jn3PeUiOM+u2gjOIeMgHDeLKT' +
'PnJCYnv/TylX/651/9/qOPfvzjH126dJHxne/+D2z59W9+881vvZm' +
'xLC80IiYmJSMufWmaUW8ta+qycj6jqN3P+U2zDHJesd8b59RzmFgT' +
'56wDmmJGcBjDnnNP1G0fijuEmLtRT3VzPmu++jOmzQl+4sLj//Xb3' +
'4Lny88/m1+QP37cOD0caemPPnr2ww8/+O3vfvfa16+GRsVHLUpPzl' +
'2xakOTCXIELiI/5zfT4uK86awt5wfOXBDO8TIhI88H50K4zrkO/GA' +
'C0OeMosOc58LFeUy8UvLA2cmpSSD81jvvQXzmjs/qodM+6a67Ojs7' +
'QPu62trIxJTkorJVda0Vzd36Pw4bg6OBmODovN7nx79cm0Vx3nTWl' +
'vP1PQd0zlEtHRHnVuY9ct3D4Nz3RLrgfEn5hgfCo2FXilas+Pu//3' +
'sQfvLb7z79w3/8ys9+/sRf/+++b/6458rb6x75IrbPnBkIwoX2sND' +
'gDz78YPe+/UlZebkVG6rad/k5v7mX23OP+eB866lL3vQ8MnmxcO6D' +
'cK+cDxt1b/4cnDtWVU6fHZSbl/GjH/0QMHe+8J0j3/pp3zd+hOh9/' +
'W92vfYuw3nxm3MmPjhzxtSp905yoT5+/M7du99+5390dm925K1YVt' +
'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' +
'8gfj/+dvVLg5F7aFcMTE6JzZ/+ujcd/5LxVGQgbXyPDnVWQMZ15F1' +
'1NDMwtmzpq5c9euHTt3Tr0X1uWzcWs2R9TsQ8C3zEhbC5j1eijz6p' +
'qefxZi3tLSBM7DQoOXrFidW71FOGdtlJz7LfrYXWjOyTm7KerzKuo' +
'1UGVawPnPPgLngFnYnmiwzRhv1EwnGJzf/dM/Yk8l/lD1L36P8yqu' +
'be0ZzlND+Yg5rvUo85xXkZwn5JdOvOPOVEfa2UfPiks3RZKzfcO5l' +
'zONvCL0PPXARV3PoyLnX7p4FmI+ceIdq2qaVhqNoSbO1556A6j7OR' +
'+jCzgH5GtPf0PnXOZVFM4nPvxnd19+B8QK50L1RKMg2EPkhXNlXSD' +
'pRtWV87aY5tsaRejzKpLz5OKqhKy82ydMnHTXXSdPnnjlla8B9YhZ' +
'98QH3YdICZ2GIO1zMtbMXLz6wbLWB5aW35+0AoQjLj//LAK+5d4p0' +
'/Ira+p39nOEhXAOL5fX9XlwjvBbl7G40LQAckRe9+clcy7zcOmcKw' +
'dCzt0Bnq3WhQHyXdaFev6d/7omT4fmc0RlfiLXc6FL1yUXrb57yrT' +
'PfOZWVEUvXryYk5kK1IPvnyy0O+a7suvuUITD5MTFRL722qvQ87sm' +
'Tc5cXrqua29b30kZTCR6ro7SqTeannjLn3UZiwszLU1Pfgec05zjt' +
'OrzKt4eledqHoJvgSyDc5hzDfXxlgop8y0ui049v3acr2lst/oWcL' +
'549fopM2fffd/Uz3zmM1D1Dz/8ANXS0JBgRfvMKaB9yvTZtbV1UXO' +
'nR866hyMsAHlzc+PPf/7PUPI77rzLkVvkbO1u2T/Q9fC5ytatoudS' +
'G4VpAeeg3c/5mFvAOQgH57Au0k1Rn1cRnA/6c0PPx737W9+ci8Krd' +
'lJWRV/9BZgf3XzQw/Et4Dyzsu7+oLCps+fePWXqrbfdVuWs/PGPf/' +
'Srf/vN0YEjcOwgH0j//qOPoPYgPD4+Bi//9od/i8tB9Vqf/NnFRaX' +
'O1q7mfUc6HjoBzjftOWKyLvgJco6AdfH3dRlDC00LICfnOJVsAdTn' +
'VTRzDhPy7m9VBdMNuTmLbkqhu/X8GnJu61vguGaEzLs/OGzqzNmfn' +
'Tb9lltuAdJg+K//+vvAGwVgD6qvXv3Kzl27+EQXCL4aZPeZW3NKKt' +
'a2bW3ef6TnkUf52LHOI6d1ztmhq7hpNzkH8H7Ox9DCGig5x2mVbor' +
'6vIrgXHXfKj0k+RaF7tu/1jj/g1XJCbmL82/9q6qQfvF7H3+KIkZa' +
'sXNwXkVjFBKfxyW9CO6fGzJ15px77w+YfN+UCXfc+Zlbbx0/fjy7p' +
'gN+XAITJkyc/Nl77581d358Ut6a9W39j7jwdkPedezc+p4Dg5zXqU' +
'h3dtKiI1JKqv2oj4kFpwl4EHJYFzEtiMqWLjVjy+YLrvZQw6K78ue' +
'GdZEsoi7mQjhinJFaVEpu6DmuiHHbL18rzhMKKwbnVTSeMmfinKhP' +
'nxME2u8LmHnP9BmT75s6+d4pk6dMmxI4e+bc0OCIBcERsQuS07Mr1' +
'm/o3meCnJyrqVtE0g3Os5z1Yl3yuk77OR8TC05TXvfnxbSImIuky7' +
'yKLuvCzi3nfnDH/Q4iLZ1bTBruUnJmWr7zX6o26hZz87yKo4rYnCK' +
'ZV9Fo9I92+RbLmGvQfv8DwQr4WQ9MnTVn2pygOfOjwuOTY1Iylywv' +
'q2rb3tJ7DGy39Z3EGmxvO/6YRNvBky7O6xhboedYk3MIu5/zMbFMW' +
'HZU3YUNzplPMHHepOZVfGyw53npIdWxnJy/ZOTJfzKYUcTGQaNieB' +
'XV7m/UWNXLskPXSsyp5zKvIjifExlLPR/O02OCouIXLltVXNuCmib' +
'xNsm4jnpx0x6BnAHUqwaubH/+bxD+2uiNv0wwptzi+ao6+lUT5OS8' +
'dXdv3pGnA4sPiXtRQ4ROviNIM/CSW1yEE3LDkzOveEvXuWuVOdc5d' +
'/lzN+fQc3m0nY9Hx6TkFMgzrnXCTUHOYV1MnMO6wLHwuPkl/cZfwH' +
'n16W9sv6zOF5uHTJxD7mq6drYePgGXLu7lNodTDSY6+Y6r4yK8Oqq' +
'l0k331V+44t3fxvz0jzFG3VOHXGaa+5ihz8OlxmJExeuce4vQuIXZ' +
'Jc76nf0+8G7Zfwx2BarOUNZFSfpWXc8R8C0i6f5c+g274NQk1h/im' +
'Wp68i15ioUEfCnu6V0Pn4Okr+47J5PN3b5w5aCB4RgKw8m4hs4ZqR' +
'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' +
'EQxZzCvmFdjZBdbXDVQtqUi3j64BuacW/BD+Dn8qHCOaHbXj2Ad/a' +
'hfq4WQ73BXglD3XFzVRc7Zj0U6tDBhbrIrrb3H2E6ENQJizvFiypY' +
'nL45JyUQI5zQtcOYqiWfkW4R5V4bcG+eSMLdwLu0+s9ycz5Z6qLs2' +
'Oqjkbj33xjnuR8I5CY9rWgtNtnJuUnUaGAbEn9cINkLSwTlRB+Soh' +
'5Jz3CaEc/woOUdkO+vBto46yPej/jEXQA6kt2uQg/nsqo3S81a6bK' +
'EAhqXiyRxLe99Jl5IbqGOLs3VrSnY+kAbeUg9NzMgD5yiDTFY/pxr' +
'1UBfnRscSZhcVb1bODbzZvm9CXedc9HyWxbF7QO6p5+BK5xy1QoA3' +
'0dEBzmE8mPdGAEuA/X++/yjCRLsAD5hBOIIv8RGKuUBOzr/dVSZ6j' +
'h+qNlIuwjlRx1pOCgrY4kd91Mvty45mOev148knjehsi2PZ0HOAiU' +
'RJmJs4B/yoT+EaQZVT1UAXpgNs4dxlWiDjhNyTc8mfB7AvooXzAGH' +
'bs6ybc5eYu7fY5hWH1HP8Lyv7nifn1GRQqqOuaqPuCqk3eRfOBXKY' +
'c/pzcP5GWx44vychBP4cP4SfE9/iA3W/qo9umZB7TFfyHW7Idbylo' +
'BKJ6gFrj5JqEA6kyTmNevfD57CubOlJzSlwZVrcnMO0gHMUgBbZnm' +
'bhfLBZPyh0BJy79XyWp57PdjsWH/kWW85ZDwV4ICrAnTwnqIDWg3N' +
'P2llLVVL/7iEV7z1PyCnaUgMVc670PGIuAj+En5N6qB7420xe3Y/6' +
'SBcZvK97cutAId2W05nQk+MlPAx7cHELCkrMiyvjHNnknL6FzUPgP' +
'NTItHjjnKZlhh3k7HkyQ2qjGudkdZYpo6j5c2sNVPRcqT375Wqchy' +
'UkAzkYiYCiduZbyKqL55+d+4e3uxXGOuo/O4fdXO7dgBz7/K9vPbx' +
'o0SJdxt/sr5BQSs6+i+Gz8UP4Ofxoak5+kdsoqnCrOs6LoL7jsr9a' +
'OoLFWvGEsNOumMZQsExbDpJZCRXTIractVGmWQRvog7CaVpCYxNdz' +
'aDw5xJa7kVgs8+6SN8tunQvnOv1ULErVn/uyjpGxqr7V22zyywFh8' +
'0Oj9q4o2/7iceCjUb/mYsT2E7EgRXvv9EKhvUg80C6Zntd+4YVsh1' +
'7knAEqOa9gBVP3hqE86Dyffg5/GhaYQnxHqwZEfWqjenuZOPDr6lk' +
'I283/j4wPha2Jq/oe96UQrRt9JTOWq5e5VpvFpA/iLqxEWKeWVisd' +
'2hhcz/T5iiAK0kh2nZrET23l3Stz3ng8Dj3JeluzpVvqW0m5CpC5z' +
'tbeuDB2E5EFCnC719ot3IuIZBjHwYh56BRCbggrMH5Pe4vD288g5+' +
'D31te3eDKbjGkXK8en46/E8e/7yXXWQP2qruXvxXJbmEHrbVaMwQb' +
'g7ylygm5DKCQ3iySbJE+5yhLzlwaQMW0DGZaxLHYNfcP2VRk31Nxt' +
'JwP+nONcxSgq7hJOfa8cMt9k760xvFc5jxUGzka1FbSdbYlsCcgD0' +
'uOIN4wPxxYFF1eyCYn4Txtzwv4uUJnbauRqrLlnJ2i8afmd39eBAo' +
'eRo2283sYz2WCMQJODLk06/uAHCJjGj0hjoV1T14CFHNHQQnF3Mq5' +
'R58W75CPhvPw6EBj9JDe4XbOUJXQOe4mJFdesWqjznlwVBw82ArDG' +
'zybMQ/xdLkDnP/d+XIVFtStkJNzBDkH4eyvyKcBgHnpgu6qhPYeA+' +
'c4khR2W87dNdN1KO+5cAWnj88YcXsYP+0eXoWBA4XD5a1ZXyAXjPU' +
'cCxwLTQsvAeyDclF1gy7m8UuWipJz+3DEfBSc06uberb4gHwwvHMe' +
'GKasCzxzeNPZM1mRz2bOo6S/fXCNoC7A61S7trt3gP6Dc9ZkIeMIQ' +
'I6XlHGmXPAT+CH8nBxtoA5VF6MuzEvlFGcNlVP4FpxHSDporz79DX' +
'8eBv8+u0xwIDPWKONA4fyaslh6ON2HnUZFOEd1qcHtzOUqcKpcYn5' +
'MSkbkwjQECokZuVwj4hxZYQnJHnVPozHUNgaropYAflxbA5VHbzEn' +
'cgEDKi1lIzzaiXTOmUWHi+B0n2ey7VDXQydci58cLZsWMRdgQ8ll1' +
'D+8EAlHAV+On+CjkKQLHI857ryFnmdkMDNgJGHwZ0PJm92PJG164i' +
'2XsP/pOXbezvSj0WwcDZ5ZH5CXuPvc6mJuMi3SLxHk55RUAgxCLpx' +
'L4CVQ/JiQeyN8SM511BHaS/v2UPmtkppmHARUEsE5VB2cU4f1UI7d' +
'wrbEj/auBOfsAyaQPxl9//hx4xio6uInoBJOwx/qqENbnGJgvASz6' +
'1AtnlkEyn9qWUf8s/iX8Y/zCOBQoMy6jO+j5zSenGmFXK9+osDhny' +
'gvr24A5LqYk/NFy1aSc2xkVxbfnI8aclvOh8F/tA/O9QYjog5Ep6V' +
'EsgopAdR1sMk214h3ela8vi6F7fsC+UNhUx8KmHwoYDIcywqjeaiw' +
'pqnV3WVIr/LjIK/r2OX7ZOnCLvEn4th1Gdf/d1RhfMs4Yp3R4VY/2' +
'qLkMlbIPZZfPfEY++uOJSo5HWVgD8jTCktoWmAYTKbFFvWPw/mQkj' +
'4KzvGduE+BwLQ9LwSX74P8snGHZhtrOm3ADDNDsCX+qsnBAOe4EYD' +
'wwFlTX80JFcjxhWmGY4Gq4IbYqmWuJK/FwobuXtxehxR27COaxsjv' +
'On2z0s7/C/+g/v/i38dBUDKu52btvMoGdwpRjrOounTBFc1h9RMkW' +
'JXcJeYFxbam5RPifOSouzj38fxzPkpU9aV3o86HhbJSSUOCLfIoUT' +
'AveCMANgNlKLkSczfk+EJ8bXXHLoRuBfXAQeZNc313L+26j8hy1uM' +
'fyes6zSntJDgo6aYx7baE86IedOPeOSfkcmBNB9x0IrgDmIeD1R1L' +
'9KIlg87cgDxxsY1pseXcN+TD5HyEqHvlXOVw3GXsA9Rx3OClEYI6C' +
'A/OSUXAlkCrsRFrBNSbbL+9zEU41rQrhwzI+T0cq4IQGfGNOi6KIV' +
'FPd3bGFNanG1PD6KivPfXGTUA723/zuz9fffobHkal//Liqq4FRRu' +
'xtuamTJA37D48HMh1MwPHQrkGyWEJydRzYE/OaVqwBTU+K+RW1L1l' +
'V0bK+UiA9+DclaJ0Q25CPbOwWEcdPoQDPCHpQJ0GBhsROuQIYA/IS' +
'bgOeXFNc2VLj367NNXxrbSrtEzTbivteicN0o7/KKGuv2rgCiHnPN' +
'SAX2gfQ2aGAq40vPvzK43rF/8OUV87cCWx/hBkXG8AKvI8IEJ4iTE' +
'4yDfhJs5RwHUBkkXJTWkWaw3UVtJ11L2lEK2Es445cjcexdSiFvEc' +
'Da1zPpiTtxiYhCW5OG5AhaxCxhXqEXOxhm8H/OD5OSP9KHg/AcI9Z' +
'RwfV8ffWQslF4alEqQfc9O4cuy29eTFTmNajZKNHT44120MaAfeRJ' +
'1zyiBgmTgv0g1OO//Cxc5OVGRAOHQbfzxMOAJl/Gsuo2JVb0/fUrq' +
'xY4PxlCEcQGtqxaotki1XrULOWh1yOnPhXMQcdI0Ccm8CPkyYrRlF' +
'T7wHOdfHQfPZL95Q55bIpHTObkBoEexYC+bBuYi2KWRnEg4l14eQ6' +
'+ZEDCEhN6W8OMMXzoLJrpseXGw1M0ACbAvnQntifT+fEnNDPSgG5o' +
'SEQ6tdhDP6LyPS9r6I7XwunN6ygH98EHWNc6l1yvxoevLWerSxD/U' +
'EkOu2XByLB+TuGihwJclDVj99u5Thp8d9gj0E5/KkIxPqehk7cBIu' +
'nXaEPjkRQ3+XRkWXcSvnRF1/SIhoOM+FnAg+M0RQt9Vzq5PBGncTQ' +
'g5+wDnXcZ0XODn1dWSezVv0J8AYf1Ka8eeBakEdvkX+EftqpqWbBC' +
'DfaDxiSGREqBZt11MrchawZXVjp8mWmxqGwHlqTj4KTCdaxdzWlpN' +
'nK+QjdSYfh3PXkOrwaI9xeSwb/YGJ+vQHQrBznCM7p8QpjAHmtL0K' +
'G0Z409lB0lCNddaypxDHz8oAQ2zkg/sOnrnAoObg4Leq6UpdVX6U5' +
'd66/cRjiO6Hz0nN1DSA10dChhP1qj9V41yCwAeV7/t0mNd/JbhiH3' +
'46nnjvfZF/m5TDG89wbHh21UazS5GXlm4SJc17GozO5NZKkBxY8Yc' +
'kXDRfr3tabTmVXEyLwOyNcF3MfdQlP44n18M354K0eQiqu8e7q2OA' +
'uyc8OwnPmh8VuTA9JTsffqaoqg4s4atANcrEu6yxU6ZllI766p5Y2' +
'+IoKIHnx9rZulUONRjWd+Y5IucAGwU9x86aqWkAr29tp7wn1vUL7b' +
'aBd63Mfxzyrd+DL08w/gy54tLcIeVw488A4dbOD4Xet1DJpV+K9Ke' +
'V/irWNlAR806jE4u17imcs2GIqGMLO7T4gHx0acOP2Takc858S4ie' +
'b7EdmhcWPtgfXgauugv6yFb8j7hwgDosyrrO3da6JJ+EAA0H2zEpm' +
'eyiH5ualVZYCj/D2yskncccwMvp4MhEDlG0Nm3gt3x7GN3Ms+y+Eb' +
'juRFByb8DjLQTdlzfyhxNCNX/O9Is621B14K0TK2t9i49moHWGOTQ' +
'1upkejSjv0qhI3QefBcOm9n22fiYudiXMXZy724Z0MR8yWz46zkdq' +
'4z0TL/HsqQ7OAact5x5se3IuweEhAcazdmcZyXYZYCiVeuINkWfXZ' +
'dRnyTlRhwWS2XhpXUTYxbewgyg5N1Wm8FtSM9UH87JOylSkKRvJd8' +
'k5FZ4BFAmhcCgvvYVeDdFjyA/q3x9vWKZ0w5zo6l26scNENTOE3Gj' +
'7LlMrJsUWzhu0fra6jFPJYeazioptIXeZFjfkinN325DVpZgItzXk' +
'nwLwbm1XvoV6buXcKt1WPdeHPk13o47bRGJGHiSavqWougEBVwPC+' +
'WQPdtGXJ34g+HAb7KOeyzpwmocdwAvM4JxDzmUcuj6Si8pPuw5Taq' +
'vngr2+hZzLJQDM8KfSxoM6xpDEjo5z3h0Y6TTe1Q3pbsKFXkFax95' +
'Wz7mdzUBSnTeNd2NvW/oWPYUlkLM7oql939QqhMBuNDZQS29W3IeS' +
'X1vmh4G68i305y7OiXpwmNhvr5xbJF2edzrNPc8R9mQPfBCOn1CcG' +
'6hDvfXxs4I63oLgU9U5f/SBMxdQ36Swc8g5ThBesiarP1dksItj61' +
'bbZlNd0kXhS9wF24+IyOvYm0L8zDC3C9gSbrtl/lNNYf0vTP9dpdb' +
'50JoVl+3M6PJCIOGcvBiHHaIkj72Vx5h7PDIxv1hOJfcMCAo1DZ3Q' +
'C94GTdiOofiY4esp6OHRwW5/jpC/wTpA1UfZ22hWmvaw2EQcDRwWH' +
'h+IPEed4LhR1QV1jkxRTVHO2np3KgynQG+klvYLXayws55y9NZDwB' +
'Ye0XMTUdY99XuBTqmEJHO8hXwcX2X7l/gA2/Yt/V/bpLXmk2fe/nQ' +
'xF5GXPSkmTNIScg4O0iHnmeJZE8j54NAw96B+a7co33NSfHLhjXPJ' +
't5DzIYcyDT/IeYAh6ThQPDjgnFJgevKkHFu+xZ5junXUW5HE8+PsM' +
'IRzCT5Fx4ewi557Y8mE/ZA5HNvbgbe3rFdTiQ35KjHoA2+rjOv/vn' +
'5wTNUZOaSs8uNQE3KrmMtoOEIuQY2y8jzkwLfrQ7sxjJR6jj/+GnC' +
'uZR2nGw8uQFmX9NTSdfpdzxoiHQU1TXrjhZ710nO/VC3ZItrFwBlE' +
'/dQ3596UcxRgjzqsDgqQu/5CDXXTv4B/TW9Wln/cx8HRFYMPacFVg' +
'EMtkEcmuR6r5ZKd/GIVbiU3iblItw8kbhDO6c//PxsNvA0=');
m_Debug('Loaded empty map');
curMap := CreateBitmap(248, 169);
FastDrawTransparent(0, 0, emptyMap, curMap);
try
m_Debug('Loading form');
FormSafeCall('FormInit');
except
Writeln(exceptionToString(exceptionType, exceptionParam));
finally
FormSafeCall('FormFree');
end;
end;
begin
SetupSRL;
Init;
m_Debug('Form closed');
FreeBitmap(emptyMap);
FreeBitmap(curMap);
m_Debug('Empty/cur map freed');
end.