Log in

View Full Version : Radial Walking Aid Missing?



Dusk412
05-18-2008, 05:33 PM
Okay I am trying to do some radial walking, I am pretty new at it, so I go look at some tutorials. They all say that I should use this Radial Walking Aid which is to be found in Scar -> Includes -> SRL -> Scripts. Well, of course with my luck, my folders aren't even arranged in this order. I have Includes and Scripts both just in Scar. Radial Walking Aid is not in my Scripts folder. Inside my Includes I have SRL and a Placeholder.txt. Inside that SRL I have yet another SRL folder? along with like SCSS and Mass BitmapToString. Inside this SRL (the second) I have core, skill, and misc. So all in all, I think my folders are just totally out of place even though I just redownloaded everything yesterday. Any help would be great, and if you could place a link for me to download this Radial Walking Aid I will love you forever.

Thanks in advance.
Dusk412

itSchRis917
05-18-2008, 05:44 PM
Instead of love, you can give me rep+. ;)

program RadialWalkerAid;
{
RADIAL WALKER AID by YAKMAN


This is a utility which helps people use Radial Walk.


There are Four Functions of this script.

The first function shows the Radial and Radius of a point
when you move the mouse over the MiniMap. It will also show the Radial
with 360 added, so it can be used for walking upwards.

For Example, when you move the mouse above the center, it will show
a radial of 0 and a radius of around 40.


The second function Draws the Path which RadialWalk takes when you input
the StartRadial, EndRadial, Radius and press the 'Show Path' Button

For Example, if you put StartRadial=90 EndRadial=180 and Radius=50
it will draw a arc in the lower right 50 pixels from the center
moving inwards until it reaches the center.



Both these Functions can have their color changed using the DropDown
Menu, the choises are Red, Blue and Green.

Pressing the 'Clear Box' button will remove all the marks and leave
an empty minimap.

The first Function can be Disabled by UnChecking the 'Drawing Radial'
checkbox.


The thrid function is used by clicking the 'Capture From Client' button
it copys the area from the RS Minimap and displays it on the form.
This can be used now with the first and second functions.

The fourth function is activated by checking the Dynamic Capture
checkbox, it means that the script will capture the client minimap
repeatedly, the frame rate is decided by the drop-down menu
labeled 'DCapture Frame Rate'.



Enjoy!
Yakman.


Before i released this, i sent it to a few people
they all found it VERY useful and a good piece of work

(it also looks really cool when you make it draw the path)

'omg that is soooooooooo
cooooooooooooooool'
Sumilion


'wow, thats great!'
Freddy1990


'WOWAWAWEWA'
WT-Fakawi

}

const
DebugAll = False; //If you really want to see the script working


//Nothing Below needs to be edited
var
bmpBlank_Map:integer;
working:boolean;
//this global boolean shows if radial path is begin drawn
var
bmpCapture:integer;
Capture:TCanvas;
Captured:boolean;
FoundRS:boolean;

var
i,StartRadial,EndRadial,Color,Radius:integer;
//radial path drawing globals
var
frmDesign : TForm;
Label1 : TLabel; //form variables
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label6 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
Label9 : TLabel;
Label10 : TLabel;
Button1 : TButton;
Button2 : TButton;
ComboBox1 : TComboBox;
ComboBox2 : TComboBox;
CheckBox2 : TCheckBox;
CheckBox1 : TCheckBox;
Button3 : TButton;
Button4 : TButton;
Button5 : TButton;
Edit1 : TEdit;
Edit2 : TEdit;
Edit3 : TEdit;
Memo1 : TMemo;
Timer2 : TTimer;
Timer3 : TTimer;


//constants, dont change these unless RS updates
const
FormX = 190; //where to copy to the form
FormY = 100;

const
ClientX = 573; //where to copy from the clint
ClientY = 3;

const
Height = 150; //dimentions
Width = 157;

const
CenterX = 266; //center of the form image
CenterY = 179;


procedure ClearMap;
begin
if(captured)then
SafeCopyCanvas(capture,frmDesign.canvas,0,0,Width, Height,FormX,FormY,FormX+Width,FormY+Height)
else
SafeCopyCanvas(getbitmapcanvas(bmpBlank_Map),frmDe sign.canvas,0,0,Width,Height,FormX,FormY,FormX+Wid th,FormY+Height);
end;

procedure DrawBlankMap(sender:TObject);
begin
frmDesign.RePaint;
end;

function Distance(x1, y1, x2, y2: Integer): Integer;
// By PPLSUQBAWLZ edit BenLand100
begin
Result := Round(Sqrt(Sqr(x1 - x2) + Sqr(y1 - y2)));
end;

function FindRadial(x,y,radius:integer):integer;
var x1,y1,r:integer; //this finds the radial at your mouse by
begin //checking every radial of the radius and seeing if your
if(working)then exit; //mouse is close to there
for r:=0 to 360 do
begin
x1:= Round(Radius*Sin(r * pi / 180))+CenterX;
y1:= Round(-Radius*Cos(r * pi / 180))+CenterY;
if(DebugAll)then
frmDesign.Canvas.Pixels[x1,y1] := 16777215;
if(Distance(x1,y1,x,y)<=1)then
begin
result:=r;
exit;
end;
end;
writeln('Failed to get radial');
end;

procedure DrawRadial(x,y,Thecolor:integer);
var Radius,Radial:integer;
begin
if(working)then exit;
Radius := Distance(CenterX,CenterY,x,y);
Radial := FindRadial(x,y,Radius);
if(not DebugAll)then
ClearMap;
frmDesign.Canvas.Pen.Color := TheColor;
frmDesign.Canvas.MoveTo(CenterX,CenterY);
frmDesign.Canvas.LineTo(x,y);
Label1.Caption := 'Radial = '+inttostr(Radial);
Label2.Caption := 'Radius = '+inttostr(Radius);
Label10.Caption := 'Radial + 360 = '+inttostr(Radial+360);
end;

procedure SafeDrawRadial(x,y,color:integer);
var t:TVariantArray;
begin
t:= [x,y,color];
ThreadSafeCall('DrawRadial',t);
end;
//event called when the mouse if moved
procedure MouseMove(Sender:TObject;Shirt:TShiftState;x,y:int eger);
var fillcolor:integer;
begin
if(working)then exit;
if(DebugAll)then
writeln('Mouse Move Event - Mouse at '+inttostr(x)+','+inttostr(y));
if(not CheckBox1.Checked)then exit;
if(not ((x>FormX)and(x<FormX+Width-6)and(y>FormY)and(y<FormY+Height)))then exit;
case ComboBox1.Text of
'Red':fillcolor:=255;
'Blue':fillcolor:=16711680;
'Green':fillcolor:=65280;
end
SafeDrawRadial(x,y,fillcolor);
end;
//event called by Timer3
procedure DrawRadialStep(sender:TObject);
var x1,y1:integer;
begin //draws on step of the radial path, then changes global variables
Working:=true; //for the next time it is called
case ComboBox1.Text of
'Red':color:=255;
'Blue':color:=16711680;
'Green':color:=65280;
end
x1:= Round(Radius * Sin(i*pi/180))+CenterX;
y1:= Round(Radius * Cos(i*pi/180))+CenterY;
frmDesign.Canvas.Pixels[x1,y1]:=Color;
if(DebugAll)then
writeln('x1 = '+inttostr(x1)+' y1='+inttostr(y1));

if(i=EndRadial)then
begin
i:=StartRadial;
Radius:=Radius-4;
end;
if(Radius<=1)then
begin
Timer3.Enabled := False;
working:=false;
Button3.Caption:='Show Path';
exit;
end;
if(StartRadial < EndRadial)then
i:=i+1
else
i:=i-1;
if(DebugAll)then
writeln('i='+inttostr(i)+' radius='+inttostr(radius)+' sr='+inttostr(startradial)+' er='+inttostr(endradial));
end;
//called by pressing Button3
procedure OnRadialPath(Sender:TObject);
begin
if(not Working)then
begin
try
StartRadial:=StrToInt(Edit1.text);
EndRadial:=StrToInt(Edit2.Text);
Radius:=StrToInt(Edit3.text);
except
edit1.text:='0';
edit2.text:='0';
edit3.text:='0';
if(DebugAll)then
writeln('Numbers Only!');
end;
ClearMap;
if(Radius > 80)then exit;
StartRadial:= StartRadial + 180;
EndRadial:= EndRadial + 180;//all this because SCAR's sin uses radians
StartRadial := 360 - StartRadial;
EndRadial := 360 - EndRadial;
case ComboBox1.Text of
'Red':color:=255;
'Blue':color:=16711680;
'Green':color:=65280;
end;
i:=StartRadial
Timer3.Enabled:=True;
Button3.Caption:='Stop';
end
else
begin
Timer3.Enabled:= False;
Button3.Caption:='Show Path';
working:=false;
end;
end;
//called by clicking the mouse
procedure MouseDown(Sender:TObject;Button:TMouseButton;Shift :TShiftState;X,Y:Integer);
begin
if(working)then exit;
if(not ((x>FormX)and(x<FormX+Width-6)and(y>FormY)and(y<FormY+Height)))then exit;
CheckBox1.Checked:=not CheckBox1.Checked;
end; //simply freezes the radial display

procedure Paint(Sender:TObject);
begin
ClearMap;
end;

procedure PrintProc(sender:TObject);
var sRadial,eRadial,Radius:integer;
begin
if(working)then exit;
try
sRadial:=StrToInt(Edit1.Text);
eRadial:=StrToInt(Edit2.Text);
Radius:=StrToInt(Edit3.Text);
except
edit1.text:='0';
edit2.text:='0';
edit3.text:='0';
if(DebugAll)then
writeln('Numbers Only!');
end
Memo1.Lines.Add('');
Memo1.Lines.Add('RadialWalk( {TheColor} , '+inttostr(sRadial)+', '+inttostr(eRadial)+', '+inttostr(Radius)+', {Xmod}, {Ymod});');
Memo1.Lines.Add('RadialRoadWalk(RoadColor, '+inttostr(sRadial)+', '+inttostr(eRadial)+', '+inttostr(Radius)+', {Xmod}, {Ymod});');
end;

procedure FindClient;
begin //finds the RS window by size
if(working)then exit;
if(FindWindowBySize(766,504))then
label8.caption:='RS Handle = '+Inttostr(GetClientWindowHandle)
else
label8.caption:='RS Handle = 0';
end;

procedure CaptureFromClient;
begin
try //frees an older bitmap if it exists
FreeBitmap(bmpCapture);
except
//there was no older bitmap to free
end
bmpCapture:=BitmapFromString(Width,Height,'');
Capture:=GetBitmapCanvas(bmpCapture);
if(not FoundRS)then
FindClient;
if(Label8.Caption = 'RS Handle = 0')then
exit;
try
SafeCopyCanvas(GetClientCanvas,Capture,ClientX,Cli entY,ClientX+Width,ClientY+height,0,0,Width,Height );
SafeCopyCanvas(Capture,frmDesign.canvas,0,0,Width, Height,FormX,FormY,FormX+Width,FormY+Height);
except
CheckBox2.Checked:=false;
end
Captured:=true;
end;
//called by pressing button
procedure ClientCapture(sender:TObject);
begin
CaptureFromClient;
end;
//called by Timer2
procedure DynamicCapture(sender:TObject);
begin
if(working)then exit;
CaptureFromClient;
end;
//called by changing CheckBox2
procedure StartDCapture(sender:TObject);
begin
if(working)then exit;
if(CheckBox2.Checked)then
begin
Timer2.Interval:= StrToInt(ComboBox2.Text);
Timer2.Enabled:= True;
end
else
begin
Timer2.Enabled:= False;
end
end;
//called by pressing button
procedure FindRS(sender:TObject);
begin
if(working)then exit;
FindClient;
end;

procedure Form;
begin //constructs the form
frmDesign.Left := 267;
frmDesign.Top := 154;
frmDesign.BorderIcons := [biSystemMenu, biMinimize];
frmDesign.BorderStyle := bsSingle;
frmDesign.Caption := 'Radial Walking Aid - Yakman';
frmDesign.ClientHeight := 387;
frmDesign.ClientWidth := 519;
frmDesign.Color := clBtnFace;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.PixelsPerInch := 96;
frmDesign.OnMouseMove:= @MouseMove;
frmDesign.OnPaint:= @Paint;
frmDesign.OnMouseDown:=@MouseDown;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 48;
Label1.Top := 40;
Label1.Width := 48;
Label1.Height := 13;
Label1.Caption := 'Radial = ';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 48;
Label2.Top := 88;
Label2.Width := 48;
Label2.Height := 13;
Label2.Caption := 'Radius = ';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 64;
Label3.Top := 256;
Label3.Width := 55;
Label3.Height := 13;
Label3.Caption := 'Start Radial';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 64;
Label4.Top := 288;
Label4.Width := 52;
Label4.Height := 13;
Label4.Caption := 'End Radial';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 64;
Label5.Top := 320;
Label5.Width := 33;
Label5.Height := 13;
Label5.Caption := 'Radius';
Label6 := TLabel.Create(frmDesign);
Label6.Parent := frmDesign;
Label6.Left := 192;
Label6.Top := 16;
Label6.Width := 265;
Label6.Height := 13;
Label6.Caption := 'Move Your Mouse Over the MiniMap To Display Radials';
Label7 := TLabel.Create(frmDesign);
Label7.Parent := frmDesign;
Label7.Left := 168;
Label7.Top := 40;
Label7.Width := 332;
Label7.Height := 13;
Label7.Caption :=
'Input '#39'StartRadial'#39' '#39'EndRadial'#39' and '#39'Radius'#39' to Display RadialWa' +
'lk Path';
Label8 := TLabel.Create(frmDesign);
Label8.Parent := frmDesign;
Label8.Left := 376;
Label8.Top := 168;
Label8.Width := 64;
Label8.Height := 13;
Label8.Caption := 'RS Handle = 0';
Label9 := TLabel.Create(frmDesign);
Label9.Parent := frmDesign;
Label9.Left := 376;
Label9.Top := 240;
Label9.Width := 103;
Label9.Height := 13;
Label9.Caption := 'DCapture Frame Rate';
Label10 := TLabel.Create(frmDesign);
Label10.Parent := frmDesign;
Label10.Left := 24;
Label10.Top := 64;
Label10.Width := 72;
Label10.Height := 13;
Label10.Caption := 'Radial + 360 = ';
Button1 := TButton.Create(frmDesign);
Button1.Parent := frmDesign;
Button1.Left := 16;
Button1.Top := 344;
Button1.Width := 100;
Button1.Height := 25;
Button1.Caption := 'Print Procedure';
Button1.TabOrder := 15;
Button1.OnClick:= @PrintProc;
Button1.OnMouseDown:=@MouseDown;
Button2 := TButton.Create(frmDesign);
Button2.Parent := frmDesign;
Button2.Left := 16;
Button2.Top := 112;
Button2.Width := 118;
Button2.Height := 25;
Button2.Caption := 'Clear Map';
Button2.TabOrder := 8;
Button2.OnClick := @DrawBlankMap;
Button2.OnMouseDown:=@MouseDown;
Button3 := TButton.Create(frmDesign);
Button3.Parent := frmDesign;
Button3.Left := 16;
Button3.Top := 208;
Button3.Width := 75;
Button3.Height := 25;
Button3.Caption := 'Show Path';
Button3.TabOrder := 11;
Button3.OnClick:= @OnRadialPath;
Button3.OnMouseDown:=@MouseDown;
Button4 := TButton.Create(frmDesign);
Button4.Parent := frmDesign;
Button4.Left := 376;
Button4.Top := 104;
Button4.Width := 106;
Button4.Height := 25;
Button4.Caption := 'Capture From Client';
Button4.TabOrder := 16;
Button4.OnClick := @ClientCapture;
Button5 := TButton.Create(frmDesign);
Button5.Parent := frmDesign;
Button5.Left := 376;
Button5.Top := 136;
Button5.Width := 75;
Button5.Height := 25;
Button5.Caption := 'Find RS';
Button5.TabOrder := 17;
Button5.OnClick := @FindRS;
ComboBox1 := TComboBox.Create(frmDesign);
ComboBox1.Parent := frmDesign;
ComboBox1.Left := 16;
ComboBox1.Top := 144;
ComboBox1.Width := 118;
ComboBox1.Height := 21;
ComboBox1.ItemHeight := 13;
ComboBox1.TabOrder := 9;
ComboBox1.Text := 'Red';
ComboBox1.Items.Add('Red');
ComboBox1.Items.Add('Blue');
ComboBox1.Items.Add('Green');
CheckBox1 := TCheckBox.Create(frmDesign);
CheckBox1.Parent := frmDesign;
CheckBox1.Left := 16;
CheckBox1.Top := 176;
CheckBox1.Width := 97;
CheckBox1.Height := 17;
CheckBox1.Caption := 'Drawing Radial';
CheckBox1.TabOrder := 10;
CheckBox1.Checked:=True;
CheckBox1.OnMouseDown:=@MouseDown;
Edit1 := TEdit.Create(frmDesign);
Edit1.Parent := frmDesign;
Edit1.Left := 16;
Edit1.Top := 248;
Edit1.Width := 39;
Edit1.Height := 21;
Edit1.TabOrder := 12;
Edit1.Text := '0';
Edit1.OnMouseDown:=@MouseDown;
Edit2 := TEdit.Create(frmDesign);
Edit2.Parent := frmDesign;
Edit2.Left := 16;
Edit2.Top := 280;
Edit2.Width := 39;
Edit2.Height := 21;
Edit2.TabOrder := 13;
Edit2.Text := '0';
Edit2.OnMouseDown:=@MouseDown;
Edit3 := TEdit.Create(frmDesign);
Edit3.Parent := frmDesign;
Edit3.Left := 16;
Edit3.Top := 312;
Edit3.Width := 39;
Edit3.Height := 21;
Edit3.TabOrder := 14;
Edit3.Text := '0';
Edit3.OnMouseDown:=@MouseDown;
CheckBox2 := TCheckBox.Create(frmDesign);
CheckBox2.Parent := frmDesign;
CheckBox2.Left := 376;
CheckBox2.Top := 264;
CheckBox2.Width := 111;
CheckBox2.Height := 17;
CheckBox2.Caption := 'Dynamic Capture';
CheckBox2.TabOrder := 18;
CheckBox2.OnClick := @StartDCapture;
ComboBox2 := TComboBox.Create(frmDesign);
ComboBox2.Parent := frmDesign;
ComboBox2.Left := 376;
ComboBox2.Top := 216;
ComboBox2.Width := 87;
ComboBox2.Height := 21;
ComboBox2.ItemHeight := 13;
ComboBox2.TabOrder := 19;
ComboBox2.Text := '500';
ComboBox2.Items.Add('10');
ComboBox2.Items.Add('100');
ComboBox2.Items.Add('250');
ComboBox2.Items.Add('500');
ComboBox2.Items.Add('1000');
Timer3 := TTimer.Create(frmDesign);
Timer3.Interval:=2;
Timer3.Enabled:=False;
Timer3.OnTimer := @DrawRadialStep;
Timer2 := TTimer.Create(frmDesign);
Timer2.Interval := 10;
Timer2.Enabled:= False;
Timer2.OnTimer := @DynamicCapture;
Memo1 := TMemo.Create(frmDesign);
Memo1.Parent := frmDesign;
Memo1.Left := 152;
Memo1.Top := 296;
Memo1.Width := 185;
Memo1.Height := 68;
Memo1.ScrollBars := ssBoth;
Memo1.TabOrder := 20;
frmDesign.ShowModal;
end;

procedure SafeForm;
var T:TVariantArray;
begin
ThreadSafeCall('Form',t);
end;

procedure LoadBMP;
begin //loads the bitmap of the blank map
Writeln('Loading Bitmap');
bmpBlank_Map:= BitmapFromString(150, 157, 'z78DAED9D5B72E3380' +
'C45B7644B7627F399EE71F6BFA4F184991AA620C0972F49B6 CE4D' +
'15BBCB71FCA078744110944E27D4AAE9FE73BE79EDE53CFF9 E2F9' +
'78FCB3C7FA4F6D7E93A5FAEA94D8FDCFFF77139A547E257EB D5A6' +
'F74AEFEB7DAAEFF6EBF33FF88ED9F3D36BC6EDB7CED90F42C DF47' +
'D8FE7445CC65D3ECE53AB3032DFE6EBF436A255DEDD3295F3 98DA' +
'F4B8F20AB6FD41224285F228FBE120D96FC75136DDA6F7E9D CB98' +
'DDD3CFB5ED649D36F3DD263AF4428F6B8F87CAEB85B1A99F9 281D' +
'4ED3602AF39EB15EEFF9BE8DCC714614CFECECD9BE3D86DC8 01AF' +
'BDBF891AE6CC6F35CCB23E390399D327E729ABA91158EEAD1 B923' +
'B76DFE16F63CA6CF25199FAFCDDD8F2C8A33C7691A8DA67DC 1DCA' +
'FCC633C77F6A84CBF65C4BEB6D3D9FC7C3171764C7672AE27 A352' +
'EE2BBB2EA3B8243C3E7146C564D4F3B5B08568B3304A3C027 1C53' +
'D2F9FB5ECB1B0AB3CF4F6338E81EF3CA493A973E9935BFAB9 D82B' +
'05675CA810C85A6FD5837EDEDBFCCEB610F7042E196672BC9 663B' +
'44FFA6C6C534A1FBDBA319561A46AD9E4D86DA5F80CA95785 71EC' +
'769DE77132AB38E3B68AAB9E14D7BB9F6A3F4F7FE8C9A7F14 7214' +
'6B5A30212C7D157CA5D222E6FE9C9D770C678CE4815DCE8C8 13EE' +
'E0B1348783EA549A5D813B7874D71CA97F1B401F7E874A49C C6B0' +
'0E83D853EAF7209FA9042A25DB162B6A8CCFB98EBA175E68C EC61' +
'D4E9833BD4374655D6198F469F579D0B7D680489790D7F7EF E3F2' +
'689D6FB2C77D087D6CFDB1C615DC35694411F5A9FC76356C1 D9C8' +
'13E2D0C62486D1A91DB1CF3EFBA38613ED93446FF78D77C5E 3679' +
'FF7411FDA278971A58D2571FF2BFE4AD6859180F6C6A34E62 7EE5' +
'0DE843683489F13EE2FDF0087DE838247AD1E9563C421F223 ADD8' +
'A446F8F030CA2D72051894B151247F0087D88B8B4D4137B91 E8ED' +
'F2833E744C37B4F76A1CC760BCC716FA106E386E8618EFB18 53E7' +
'41C12BDBA9AF88AFD2D0C421F420A89364BD3BEA6AFD30783 0812' +
'FB56B8C5B501D087507CCF85D80DE3578EF717137F22E4B9E 1C2E' +
'EA7C29D17F1AE46E8434871C385EB471937ACA30F0611D2DD 5027' +
'31DECB8F0322D4EE865EBE34BE93110E88D06837D419843E8 4BAC' +
'D0D85963508847A91A873E76550A10FA196B8D4C69CD6EF3C 0671' +
'4084DA4954E67D5ED614FA10EAC6604662CC20512842A323D 278B' +
'502FA101AED861E83382042EBB861CC20F42134DA0DE39920 0C22' +
'343C22352B14F36DBE4E6F3088D06806136B3F484C0E789BD EA73' +
'30C22347C56F8C59ABDBE13F421B441444A2E14A1ADDC3023 1106' +
'11DA1B83AF74DF6D849E85411C10A1F549643D02A1BD31481 48AD' +
'0FA1169CE203D83100C22744C06894211DA8ABEADEE5C8FD0 31D5' +
'EB4E4C08A1760647DFA71E21A43398F6122284466BE15AF73 0881' +
'00C2204833088100C22048308A18D18A44E06A175E45DEF17 0611' +
'5A93C1DC0D611021184475FA34A24F6010C1208AE9F318844 4184' +
'46B3A200C22B41F06894811DA6A2668EFC4048308C1204247 6690' +
'8A3584C6C9BBEB2E756B08ADE3801E6B6466105A3F0A85418 4601' +
'0211884418460102118844184B662305EA9874484C63168EF C38B' +
'1B22B455146AEFFF0283088D7640EB7DDE239088500B7D0A6 B44A' +
'4086D1585C6B5A33088D0B60C52BF8D503B83CA4A443C4F84 4484' +
'EAE471E431881B22B4A603DA7DBBB82142A3E9F376CD7B6EE 8E55' +
'4E9678474063D9A2C83FA3A3E2422E4D16789D3E9531864B5 02A1' +
'98C19C91710C4222421E7DA50CFEFAF7DFAB47A217D9C2204 28A0' +
'3C6572FD419C40D116A71C01606E3CC0C3B0D11F4792CE851 68DE' +
'B6BB2124A263D2D7E2800A838A1B129722E2CFD25CA865D09 2185' +
'7DAC020C201952CA81285D6B9217129823E657FAEEE803A83 B11B' +
'E289E808F42973C05207F4188C49543E21CE889E973B7D6CE BF53' +
'075242A73C385FBFC7E5CE6F923B5F8237A1679A357CFC0D4 45A1' +
'E3E2522255F42CDEA78FDEBA3D11ED0CD65D237121E3FA756 E214' +
'645FB8939ADDFE96BE523E86B7743EFACE2BD2624A23DB85E 3C3E' +
'EB1CB085BEBA2C8DB277D87B7D723868FD1C8B1D8DA5A37A9 C038' +
'E2031FEEEF088D6CC6D2A5E309ABE9675C311242A3C32BA90 4E5F' +
'6995662FFADA992A7D7E7B745ADA3FF0885A5C6F5CE4595C1 1EAA' +
'C8028B1E2084FD43F3924A2D8F574F719419FE229DFF4E5AB 8A32' +
'8FBDA2D37855B1944478C4F5EAE853AE43581A79BA5C6494D 9F78' +
'D49CC5FB96FC6A674B6C89C11FA7A9DB747D0A7C49C2E7D86 C1F5' +
'3DD173C63A12E1F1C8AEE7D1178FBAE1DEA730E890E839633 B897' +
'11CDE9EDD82C7D7E0AE3DA3AE8CB496ACCB03EE74FA0A3D51 A931' +
'506ABFF51835FF24FA7900125F23DA54467E4BCC599775A99 CF7D' +
'5B5328FE348D4D75BC9E1BCD2CA425D5DC738FA56E5AED91F 4B49' +
'8CDFDDEDE7C26819129F6B65C1CBEA2BDC2963AC037755F42 99FB' +
'965CED8CB07751EF39E6175E395722C5E9CD93266EA48EC36 D72B' +
'1CF9EE73BA92D8DEA6CF39DFE6EBF4C6EAC62BAD2CA463DAE 41A6' +
'1DBD7F50A22BADBF43E9D5BE2E7D82587E76F07AF6E40CD56 D52C' +
'A52B0B7DE7500BF56C8523B320BF91180C496CF17DFD0E17A 35DB' +
'E65750382D69FF129B9CD113326AF9AB4657EE4FDF68EDCE7 E9CF' +
'0F061D12E37D8BDE3A8EB743B9A0C6661889FAE781C4D1F4D 5AD2' +
'C8C733DEB7DD2081776D95BFAF236265127CEE3A8C315A5BA 92D8' +
'B29B0CB246D0D79E6969A97C5672B0FA75D5625E2C7D0F487 478A' +
'CCBE2B6EC1DB60CA6197A2F1EBDD58DF4489E0D80449DBEEF 63E4' +
'F46AAF99CEC278902BBB5AF6F729D5200A77A5248E26AEB4E A35F' +
'57C5F1EE3F782C402FA1C22FA723782BE762AEBE87BC0A370 1F99' +
'BEDFB794C411AB1BDE718744893EA7DF7A1DA998BE11E350D 925A' +
'438E0E9FCFF8F446218EBAE4962D37E904EF1AA65F0C824DA 7EC8' +
'B9E836BFABDA67B72683968B5EF4E50CE6FF5776E0AED91BF 9517' +
'0336385C4D96F9D8F317B563F1A89F6BBDB9EF1FAB0804AE7 08AE' +
'3FD2F45DC096C19CBBF4E37965FC4CD70DC3D9E2881E28C8A 086A' +
'B1BF1DC59791C0647F464BCAE17673BD79C03E62BEC0A7DF1 79DE' +
'6330FE5B2F361BE7897DAB6ABDF841F144EF158ECC60AF9EE CB53' +
'767387D4EEC5DEA65317DF92B3C7081C2558C6ED7FA96CF8A 719E' +
'B3B40221BE1BE371E88B57A2F555ECD2DCA6B7D231EEFE0E0 BDFC' +
'B3860CE60BCBA679F1FFFE8F183BE76AF5CA3A6E03E504236 4CC9' +
'E49456EB1D33222D3D6B3DE8E1C26B352CAC1A779A272AF4C 5599' +
'105FA0630A8CC89BCE7B45F0BCE9D0B1766C6FA56E1C26053 857F' +
'556ED35BEB6FB9E692429F1745AFC36069654ECC6CCB7572E 273E' +
'9B8AB5DE90CBE2089665ED381C1AE47ADAE0AB1B4CAC58D7C F2B9' +
'5B57061708CA5E39F665C53D4B6B6F1E1CDF86DDFD31890F4 65DD' +
'8CFAFBA0E68E7444A5FB5645DF45D7B2DE3CA1BBDF959A857 141A' +
'3318D36719D4D7281557553CF741CD924C65E9EE8C7847583 C8B7' +
'C76EEEAFAA1EE6CA91C17AF26A76E5CC5EBE996C1F6285462 C4AB' +
'1DCD18F422E4D21A805E6DE93E32650D515F3BF646D77391F 8A07' +
'A36FFD60229A56B7FA57ED7DE2AAB031E836E145AC59DCEA0 F77C' +
'BD5E6E1D1E0BA8D4F74157ED037DAEFB9C96EE39AACB36EBB 54C2' +
'346859E0F89E7C275AB81C5635E6650A91BD75F6DE1338CA6 7270' +
'066FCFD169E9CEEB7115BCDD2873C6CC0235664C7A642D9C5 1DB1' +
'9D4C77618857A9FB060D7B0C2E3D773BCBAC4E11EDACCE03E F705' +
'7B47B02F83A38FD48F516146B5C25D4C5F3CC24B6BD22A633 FD90' +
'1F55D54F17C5377B1CA33A4F0EE7A26415FC3DA8F1B4AE71F F92A' +
'915275AE3DBE8559C4D2F1A070E7D1E73960A91B3E9A7F9D7 F9FA' +
'F52FBF7743D7F9CFE3ABD9FDEF2769AEE64DEAEF76335FFB1 6DFA' +
'6D6A17FEF6EB35DD36FD6DFE19BE1EB94CF7A8EED3B6F97B3 D686' +
'FD3C77479D066CF5F78C7DFF77FAFF6FBFE9AEEFF5E539B3F 9EFE' +
'6A7E9FA7E9AFBCB59FCD3E27B5DE2BD4B5CAFBA67754BEDDF 777F' +
'CEA9307C745E8ED85D68C016524A43176BEDE47FA7FAF138E 376F' +
'6C2B237CE16FBF3E6D7A77AF4DCFFC07272E4F07');
writeln('Bitmap Loaded');
end;

procedure SetSelfWindowState(State:TWindowState);
begin
GetSelf.WindowState :=State;
end; //sets the SCAR main form window state

procedure SafeSetSelfWindowState(State:TWindowState);
var t:TVariantArray;
begin
t:= [state];
ThreadSafeCall('SetSelfWindowState',t);
end;

begin
ClearDebug;
writeln('Successfully compiled');
LoadBMP;
if(not DebugAll)then
SafeSetSelfWindowState(wsMinimized);
frmDesign:= CreateForm; //this is already thread safe
SafeForm;
SafeSetSelfWindowState(wsNormal);
FreeBitmap(bmpBlank_Map);
try
FreeBitmap(bmpCapture);
except
end
end.

kitchenrange
10-23-2008, 03:06 AM
thx very much i was just looking at your tutorial and when i tried to download from your sig, you have to already be a member. I was like how the fuck do they expect me to write a script if i cant use the tools lol.