SCAR Code:
Program LongbowFletcher;
{.include srl/srl.scar}
var
Loads, LogClr, Tries, x, y: integer;
frmDesign : TForm;
GroupBox1 : TGroupBox;
CheckBox1 : TCheckBox;
Edit1 : TEdit;
Edit2 : TEdit;
Edit3 : TEdit;
Edit4 : TEdit;
Edit5 : TEdit;
Button1 : TButton;
Loads1 : Integer;
procedure StartClick(sender: TObject);
begin
frmDesign.ModalResult:= mrOk;
Loads1:= StrToInt(Edit5.text)
end;
Procedure Form;
Begin
frmDesign := CreateForm;
frmDesign.Left := 250;
frmDesign.Top := 114;
frmDesign.Width := 300;
frmDesign.Height := 350;
frmDesign.Caption := 'frmDesign';
frmDesign.Color := clMaroon;
frmDesign.Font.Color := clRed;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'Comic Sans MS';
frmDesign.Font.Style := [];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
GroupBox1 := TGroupBox.Create(frmDesign);
GroupBox1.Parent := frmDesign;
GroupBox1.Left := 16;
GroupBox1.Top := 16;
GroupBox1.Width := 249;
GroupBox1.Height := 273;
GroupBox1.Caption := 'DR'#39's any longbow maker setup';
GroupBox1.Font.Color := clWindowText;
GroupBox1.Font.Height := -11;
GroupBox1.Font.Name := 'Comic Sans MS';
GroupBox1.Font.Style := [];
GroupBox1.ParentFont := False;
GroupBox1.TabOrder := 0;
CheckBox1 := TCheckBox.Create(GroupBox1);
CheckBox1.Parent := GroupBox1;
CheckBox1.Left := 112;
CheckBox1.Top := 16;
CheckBox1.Width := 121;
CheckBox1.Height := 41;
CheckBox1.Caption := 'Use every 50 sleep?';
CheckBox1.TabOrder := 0;
Edit1 := TEdit.Create(GroupBox1);
Edit1.Parent := GroupBox1;
Edit1.Left := 144;
Edit1.Top := 64;
Edit1.Width := 73;
Edit1.Height := 23;
Edit1.TabOrder := 1;
Edit1.Text := 'Username';
Edit2 := TEdit.Create(GroupBox1);
Edit2.Parent := GroupBox1;
Edit2.Left := 16;
Edit2.Top := 64;
Edit2.Width := 73;
Edit2.Height := 23;
Edit2.TabOrder := 2;
Edit2.Text := 'Password';
Edit3 := TEdit.Create(GroupBox1);
Edit3.Parent := GroupBox1;
Edit3.Left := 16;
Edit3.Top := 96;
Edit3.Width := 73;
Edit3.Height := 23;
Edit3.TabOrder := 3;
Edit3.Text := 'PIN';
Edit4 := TEdit.Create(GroupBox1);
Edit4.Parent := GroupBox1;
Edit4.Left := 144;
Edit4.Top := 96;
Edit4.Width := 73;
Edit4.Height := 23;
Edit4.TabOrder := 4;
Edit4.Text := 'Nickname';
Edit5 := TEdit.Create(GroupBox1);
Edit5.Parent := GroupBox1;
Edit5.Left := 80;
Edit5.Top := 136;
Edit5.Width := 73;
Edit5.Height := 23;
Edit5.TabOrder := 5;
Edit5.Text := 'Loads';
Button1 := TButton.Create(GroupBox1);
Button1.Parent := GroupBox1;
Button1.Left := 48;
Button1.Top := 200;
Button1.Width := 145;
Button1.Height := 41;
Button1.Caption := 'Start Any Longbow Maker';
Button1.TabOrder := 6;
Button1.OnClick := @StartClick
end;
procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('Form', v);
end;
procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;
procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;
Var
Knife, Log: integer;
Procedure LoadDTMs;
Begin
Knife := DTMFromString('78DA63E4676060E06500036608C59010E1CF2' +
'007A41981F83F10300A0019FCA86A5A2B2BE06A408091134888A1' +
'AAB157644055C383A9C65F9F15550D2B034413929A606F6F54356' +
'C986AD0DD0300D6E30B51');
Log := DTMFromString('78DA639CC9C4C0F088010514FAF2318832323' +
'00011C37F2060EC06AA79CC800618914820DD0154F386809A5940' +
'35EF08A8590254F38A809AC940351FF0AB0100D0AD0DF2');
End;
Function ColorDTM(DTMd : string; var color : integer) : boolean;// Footballjds
var
DTM : integer;
begin
case DTMd of
'Log' : DTM := log;
end;
if not(FindDTM(DTM, x, y, MIX1, MIY1, MIX2, MIY2)) then EXIT;
color := GetColor(x, y);
Result := True;
end;
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := Edit1.text;
Players[0].Pass := Edit2.text;
Players[0].Nick := Edit4.text;
Players[0].Integers[0] := Loads1;
Players[0].Strings[0] := Edit3.text;
Players[0].Active := True;
end;
Procedure Fletch;
Begin
If (FindDTM(Knife,x,y,MIX1,MIY1,MIX2,MIY2))then
Begin
Mouse(x, y, 1, 1, true);
WriteLN('Clicked Knife');
WriteLN('Clicking log');
Exit;
end;
Wait (500 + random(300));
If not (FindDTM(Knife,x,y,MIX1,MIY1,MIX2,MIY2))then
Begin
WriteLN('Couldnt find knife');
WriteLN('Make sure one was in your inventory');
WriteLN('Logging out and terminating script');
Logout;
TerminateScript;
Exit;
end;
If (FindDTM(Log,x,y,MIX1,MIY1,MIX2,MIY2))then
Begin
ColorDTM('log', LogClr);
Mouse(x, y, 2, 2, true);
WriteLN('Clicked Log');
WriteLN('Waiting to make longbow');
Exit;
end;
If not (FindDTM(Log,x,y,MIX1,MIY1,MIX2,MIY2))then
Begin
WriteLN('Couldnt find any logs');
WriteLN('Must have had an error banking');
WriteLN('Logging out and terminating script');
Logout;
TerminateScript;
Exit;
end;
Wait(500 + random(300));
Loads:=Loads+1;
end;
Procedure GetThingFromBank;
Var
Resultx : Boolean;
Begin
Repeat
If FindObjCustom(x,y,['Use','Bank','Booth'],[5405328,5339277,804444],5) then
Mouse(x,y,0,0,False);
ChooseOption('uickly');
Wait(1000+Random(2000));
Tries:=Tries+1;
If PinScreen Then
InPin(Players[CurrentPlayer].Strings[1]);
FixBank;
ResultX := BankScreen;
Until(BankScreen) or (Tries >= 6);
If BankScreen then
Begin
MMouse(95-Random(5), 77+Random(5),2,2);
If IsUpText('ogs') then
Begin
Mouse(95-Random(5), 77+Random(5),2,2,False);
ChooseOption('All');
wait(1000+Random(200));
CloseBank;
end;
end;
end;
Procedure Siggy;
Begin
WriteLN('Dude_Richard.......')
Wait(1000)
WriteLN('Presents.......')
Wait(1200)
WriteLN('The One the Only.......')
Wait(1300)
WriteLN('Any Longbow Maker v1.0!')
Wait(1500)
End;
Begin
SetupSRL;
LoadDTMs;
Siggy;
SafeInitForm;
SafeShowFormModal;
DeclarePlayers;
ActivateClient;
LoginPlayer;
Repeat
GetThingFromBank;
Fletch;
until (loads >= Players[CurrentPlayer].Integers[0])
end.