ok, so, i decided to make my autoalch with forms, but when i try to make it alch to Alchamount i get this error
Line 345: [Error] (15026:21): Type mismatch in script C:\Documents and Settings\Joe\Desktop\runescape\autoalchv03.scar
which would be in my main loop.
Whole script if needed.
SCAR Code:
program AutoAlcherv03;
{.include SRL/SRL.scar}
{============================================]
[ AutoAlcher v .3 ]
[ RECOMMENDED-> SCAR Divi 3.12c & SRL 5 ]
[============================================]
[ BY MAMBY ]
[============================================]
[ INSTRUCTIONS ]
[ ------------------- ]
[ 1.)Get Alching Supplies out of the bank ]
[ 2.)Place your item that you wish to alch ]
[ in the first inventory slot ]
[ 3.)Log out ]
[ 4.)Start the script ]
[============================================]
[ Fixes/Adds ]
[ ------------------- ]
[ v.1 - Release ]
[ v.2 - Fixed Anti Randoms ]
[ - Fixed Alch wait time ]
[ v.3 - Added forms ]
[ - Added failsafes ]
[============================================}
var
frmDesign : TForm;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
author : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Label6 : TLabel;
Label7 : TLabel;
Label8 : TLabel;
UserEdit : TEdit;
PassEdit : TEdit;
AlchEdit : TEdit;
StartButton : TButton;
NickUser : TEdit;
RunForm : TEdit;
GenieForm : TEdit;
i : integer;
Antibans : Integer;
Username, Password, Alchamount, nickName, Genie, RunDir: String;
{==========================================================================}
procedure StartClick(sender: TObject);
begin
Username := UserEdit.Text;
Password := PassEdit.Text;
Alchamount := AlchEdit.Text;
nickName := NickUser.Text;
Genie := GenieForm.Text;
RunDir := RunForm.Text;
Writeln('Logging in...');
frmDesign.ModalResult:= mrOk; // Closes the form
end;
{==========================================================================}
procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('InitForm', v);
end;
{==========================================================================}
procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;
{==========================================================================}
procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;
{==========================================================================}
Procedure DeclarePlayers;
begin
HowManyPlayers :=1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:=0;
Players[0].Name := Username;
Players[0].Pass := Password;
Players[0].Nick := nickName;
Players[0].Active:=True;
end;
Procedure CheckClient;
begin
if (Username = '') then
begin
readln('Please restart the script and enter a username.');
TerminateScript;
end else
if (Password = '') then
begin
readln('Please restart the script and enter a password.');
TerminateScript;
end else
if (Alchamount = '') then
begin
readln('Please restart the script and enter a Alch Amount.');
TerminateScript;
end else
if (nickName = '') then
begin
readln('Please restart the script and enter a nickname. (3-4 Characters of your name)');
TerminateScript;
end else
begin
writeln('All required infomation entered, Logging in.');
end;
end;
{==========================================================================}
procedure StartAlching;
begin
Mouse(716,336,10,10,true); //Click High Alch Button
wait(500+random(700));
FindNormalRandoms; //Find Randoms
FindLamp(Genie); //Find Genie Lamp
Mouse(577,225,5,8,true); //Move to the first inventory slot
wait(600+random(800));
i:= i+1;
end;
{==========================================================================}
procedure AntiRandom;
begin
FindTalk;
// FindNormalRandoms; //Check this during alching
// FindLamp(Genie); //Ditto
if FindFight then
begin
RunAwayDirection(RunDir);
Wait(10000+random(2000));
RunBack;
end;
end;
{==========================================================================}
procedure AntiBan;
begin
Antibans:= Random(4)
if(Antibans = 0)then
HoverSkill('Magic', false);
if(Antibans = 2)then
PickUpMouse;
if(Antibans = 4)then
wait(3000+random(1500));
end;
{==========================================================================}
procedure ProgressReport;
begin
writeln('//=============================================//');
writeln('// Progress Report //');
writeln('//=============================================//');
writeln(' Total Alchs: ' + IntToStr(i));
writeln(' Total Time: ' + TimeRunning);
writeln('//=============================================//');
writeln('// MAMBYS AUTO ALCHER v.3 //');
writeln('//=============================================//');
end;
{==========================================================================}
Procedure InitForm;
begin
frmDesign := CreateForm;
frmDesign.Left := 361;
frmDesign.Top := 517;
frmDesign.Width := 242;
frmDesign.Height := 253;
frmDesign.Caption := 'Mambys AutoAlcher v.3';
frmDesign.Color := clActiveBorder;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -11;
frmDesign.Font.Name := 'MS Sans Serif';
frmDesign.Font.Style := [];
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;
Label1 := TLabel.Create(frmDesign);
Label1.Parent := frmDesign;
Label1.Left := 32;
Label1.Top := 16;
Label1.Width := 51;
Label1.Height := 13;
Label1.Alignment := taCenter;
Label1.Caption := 'Username:';
Label2 := TLabel.Create(frmDesign);
Label2.Parent := frmDesign;
Label2.Left := 32;
Label2.Top := 40;
Label2.Width := 49;
Label2.Height := 13;
Label2.Alignment := taCenter;
Label2.Caption := 'Password:';
Label3 := TLabel.Create(frmDesign);
Label3.Parent := frmDesign;
Label3.Left := 0;
Label3.Top := 88;
Label3.Width := 79;
Label3.Height := 13;
Label3.Alignment := taCenter;
Label3.Caption := 'Amount To Alch:';
author := TLabel.Create(frmDesign);
author.Parent := frmDesign;
author.Left := 128;
author.Top := 176;
author.Width := 78;
author.Height := 13;
author.Caption := 'Script by Mamby';
Label4 := TLabel.Create(frmDesign);
Label4.Parent := frmDesign;
Label4.Left := 120;
Label4.Top := 192;
Label4.Width := 108;
Label4.Height := 13;
Label4.Caption := 'www.SRL-Forums.com';
Label5 := TLabel.Create(frmDesign);
Label5.Parent := frmDesign;
Label5.Left := 32;
Label5.Top := 64;
Label5.Width := 51;
Label5.Height := 13;
Label5.Alignment := taCenter;
Label5.Caption := 'Nickname:';
Label6 := TLabel.Create(frmDesign);
Label6.Parent := frmDesign;
Label6.Left := 16;
Label6.Top := 112;
Label6.Width := 68;
Label6.Height := 13;
Label6.Caption := 'Run Direction:';
Label7 := TLabel.Create(frmDesign);
Label7.Parent := frmDesign;
Label7.Left := 112;
Label7.Top := 112;
Label7.Width := 69;
Label7.Height := 13;
Label7.Caption := '(N, W, E, or S)';
Label8 := TLabel.Create(frmDesign);
Label8.Parent := frmDesign;
Label8.Left := 32;
Label8.Top := 136;
Label8.Width := 48;
Label8.Height := 17;
Label8.Caption := 'LampSkill:';
UserEdit := TEdit.Create(frmDesign);
UserEdit.Parent := frmDesign;
UserEdit.Left := 88;
UserEdit.Top := 16;
UserEdit.Width := 105;
UserEdit.Height := 21;
UserEdit.Hint := 'Username';
UserEdit.ParentShowHint := False;
UserEdit.ShowHint := True;
UserEdit.TabOrder := 0;
UserEdit.Text := 'UserName';
PassEdit := TEdit.Create(frmDesign);
PassEdit.Parent := frmDesign;
PassEdit.Left := 88;
PassEdit.Top := 40;
PassEdit.Width := 105;
PassEdit.Height := 21;
PassEdit.Hint := 'Password';
PassEdit.MaxLength := 16;
PassEdit.ParentShowHint := False;
PassEdit.PasswordChar := '*';
PassEdit.ShowHint := True;
PassEdit.TabOrder := 1;
PassEdit.Text := 'PassEdit';
AlchEdit := TEdit.Create(frmDesign);
AlchEdit.Parent := frmDesign;
AlchEdit.Left := 88;
AlchEdit.Top := 88;
AlchEdit.Width := 41;
AlchEdit.Height := 21;
AlchEdit.Hint := 'Alch';
AlchEdit.MaxLength := 4;
AlchEdit.ParentShowHint := False;
AlchEdit.ShowHint := True;
AlchEdit.TabOrder := 2;
AlchEdit.Text := 'AlchEdit';
StartButton := TButton.Create(frmDesign);
StartButton.Parent := frmDesign;
StartButton.Left := 8;
StartButton.Top := 176;
StartButton.Width := 105;
StartButton.Height := 33;
StartButton.Caption := 'Start';
StartButton.TabOrder := 3;
StartButton.OnClick := @StartClick;
NickUser := TEdit.Create(frmDesign);
NickUser.Parent := frmDesign;
NickUser.Left := 88;
NickUser.Top := 64;
NickUser.Width := 57;
NickUser.Height := 21;
NickUser.Hint := '3 Letters of your name';
NickUser.MaxLength := 3;
NickUser.TabOrder := 4;
NickUser.Text := 'Nickname';
RunForm := TEdit.Create(frmDesign);
RunForm.Parent := frmDesign;
RunForm.Left := 88;
RunForm.Top := 112;
RunForm.Width := 17;
RunForm.Height := 21;
RunForm.TabOrder := 13;
RunForm.Text := 'RunForm';
GenieForm := TEdit.Create(frmDesign);
GenieForm.Parent := frmDesign;
GenieForm.Left := 88;
GenieForm.Top := 136;
GenieForm.Width := 73;
GenieForm.Height := 21;
GenieForm.Hint := 'LampSkill';
GenieForm.HelpContext := 1;
GenieForm.TabOrder := 14;
GenieForm.Text := 'GenieForm';
end;
begin
cleardebug;
SetupSRL;
SafeInitForm;
SafeShowFormModal;
DeclarePlayers;
CheckClient;
activateclient;
wait(1000);
if not (LoggedIn) then
LoginPlayer;
ChatsOff;
repeat
GameTab(7);
StartAlching;
wait(1000+random(500));
AntiRandom;
wait(500+random(500));
AntiBan;
until(i = Alchamount);
logout;
ProgressReport;
TerminateScript;
end.