ActivateClient; just does what it says, Activates the Client, which is what ever you drag the crosshair to.. so the person doesnt have to click on the runescape screen and I have been testing it and the ActivateClient; in the ML ( MainLoop ) isnt working.. so I put it at the beggining of the talk proc, and for the Proggy I made you a short simple one
procedure Proggy;
begin
Writeln('------------------------');
Writeln('------Mylesmadness------');
Writeln('-------AutoTalker-------');
Writeln('------------------------');
Writeln('----Talked ' + IntToStr(Talked) +' Times----');
Writeln('------------------------');
Writeln('------Mylesmadness------');
Writeln('------------------------');
Writeln('Thank You For Using This');
Writeln('------------------------');
end;
so pretty much the whole script is this
program AutoTalker;
{.include SRL/SRL.scar}
var
Form1 : TForm;
Edit1 : TEdit;
Button1 : TButton;
Talked : Integer;
procedure ClickButton(sender: TObject);
begin
form1.Caption:= form1.Caption + '.';
form1.ModalResult:= mrOk;
end;
procedure MakeForm;
begin
Form1 := CreateForm;
Form1.Left := 192;
Form1.Top := 114;
Form1.Width := 357;
Form1.Height := 114;
Form1.Caption := 'Form1';
Form1.Color := clBtnFace;
Form1.Font.Color := clWindowText;
Form1.Font.Height := -11;
Form1.Font.Name := 'Tahoma';
Form1.Font.Style := [];
Form1.PixelsPerInch := 96;
Edit1 := TEdit.Create(Form1);
Edit1.Parent := Form1;
Edit1.Left := 8;
Edit1.Top := 8;
Edit1.Width := 337;
Edit1.Height := 21;
Edit1.Hint := 'Type your message here';
Edit1.TabOrder := 0;
Edit1.Text := 'Your message here';
Button1 := TButton.Create(Form1);
Button1.Parent := Form1;
Button1.Left := 72;
Button1.Top := 40;
Button1.Width := 185;
Button1.Height := 33;
Button1.Hint := 'click to start';
Button1.Caption := 'Start';
Button1.TabOrder := 1;
Button1.onclick := @ClickButton
end;
procedure SafeShowWF;
var
tva: TVariantArray;
begin
setarraylength(tva, 0);
ThreadSafeCall('MakeForm', tva);
end;
procedure ShowFormModal;
begin
Form1.ShowModal
end;
procedure SafeShowFormModal;
var
tva: TVariantArray;
begin
setarraylength(tva, 0);
ThreadSafeCall('ShowFormModal', tva);
end;
procedure Form;
begin
SafeShowWF;
SafeShowFormModal;
end;
procedure talk;
begin
ActivateClient;
wait(1000+random(300))
TypeSend(Edit1.Text);
Talked := Talked + 1;
end;
procedure Proggy;
begin
Writeln('------------------------');
Writeln('------Mylesmadness------');
Writeln('-------AutoTalker-------');
Writeln('------------------------');
Writeln('----Talked ' + IntToStr(Talked) +' Times----');
Writeln('------------------------');
Writeln('------Mylesmadness------');
Writeln('------------------------');
Writeln('Thank You For Using This');
Writeln('------------------------');
end;
begin
SetUpSRL;
Form;
repeat
Talk;
Proggy;
until(isfkeydown(12))
end.
the only problem is that it says the proggy after every talk… so you could make it do it after every 10 and change something in the proggy to make it even ( take out one space before or after the IntToStr(Talked) thing ) or maybe just have an option in the forms for how many times to say it and in the ML after Talk; put If(Talked = Talked) then
Proggy; or something like that :) well hope i help as much as i could ( without just making a script for you and you calling it yours ) so study study study! :D:D:D