Looks like several problems.
1:
You dont enter anything into the form and leave it as True it will do nothing. (just runs and exit's);
2:
Your begin and end's are pretty much messed with the end else's which causes them to logout if u have them and also doesn't make the if statements work.
SCAR Code:
program New;
{.include srl/srl.scar}
var
x, y: integer;
StartSkill, EndSkill: integer;
WaterRune, EarthRune, BodyRune: integer;
const
////////////////////////////
CompassDirection = 'E'; // If your at the monk of zamorak then let this, else change!
Color0 = 8103122; // If your at the monk of zamorak then let this, else change!
Color1 = 3883688; // If your at the monk of zamorak then let this, else change!
Color2 = 6918074; // If your at the monk of zamorak then let this, else change!
UpText1 = 'onk'; // If your at the monk of zamorak then let this, else change!
UpText2 = 'of'; // If your at the monk of zamorak then let this, else change!
UpText3 = 'amorak'; // If your at the monk of zamorak then let this, else change!
Tolerance = 25; // Let this!
////////////////////////////
function FindRune(DTM: string): boolean;
begin
GameTab(4);
if (DTM = 'Water Rune') then
begin
WaterRune := DTMFromString('78DA63CC656660E8636440062252CB1924813' +
'448F43F1030C603D5B4A3AA81C8C248209D0A54339D809A02A09A' +
'9904D45402D54C26A0A61AA8A69B0873DAF0AB01001E4B0C12');
if (FindDTM(WaterRune, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
writeln('Found Water Rune');
end else
begin
writeln('Did NOT Found Water Rune');
LogOut;
end;
end;
if (DTM = 'Earth Rune') then
begin
EarthRune := DTMFromString('78DA639CCECCC0D0C5C8800C723C781924813' +
'448F43F10307601D54C405503918591407A2250CD0C026AE611A1' +
'6629504D3701354B806A261250D30954D3895F0D00B54F0D18');
if (FindDTM(EarthRune, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
writeln('Found Earth Rune');
end else
begin
writeln('Did NOT Found Earth Rune');
LogOut;
end;
end;
if (DTM = 'Body Rune') then
begin
BodyRune := DTMFromString('78DA637461666098C8C8800C4404051924813' +
'448F43F10309A02D5F4A0AA81C8C248206D0E543389801A5BA09A' +
'1904D4B803D5CC24A0C61FA8663201358144B819644E1B0135664' +
'035ADF8D5000022460BED');
if (FindDTM(BodyRune, x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
writeln('Found Body Rune');
end else
begin
writeln('Did NOT Found Body Rune');
LogOut;
end;
end;
end;
function GetLevel(Skill: string; Option: boolean): integer;
begin
if not LoggedIn then Exit;
if (Option = True) then
begin
GameTab(2);
StartSkill := GetSkillLevel(Skill);
end else
begin
GameTab(2);
EndSkill := GetSkillLevel(Skill);
end;
end;
procedure CheckEquipMent;
begin
if (Players[CurrentPlayer].Booleans[0] = true) then
begin
if (Players[CurrentPlayer].Strings[0] = 'Earth') then
begin
FindRune('Body Rune');
FindRune('Water Rune');
end else
begin
if (Players[CurrentPlayer].Strings[0] = 'Water') then
begin
FindRune('Body Rune');
FindRune('Earth Rune');
end;
end;
end;
if (Players[CurrentPlayer].Booleans[0] = False) then
begin
FindRune('Body Rune');
FindRune('Earth Rune');
FindRune('Water Rune');
end;
end;
procedure Proggy;
begin
WriteLn('//////////////////////////////////////////////////////');
WriteLn('// Thanks for using my Auto-Curser. //');
WriteLn('// post Proggy,s and bugs. //');
WriteLn('//////////////////////////////////////////////////////');
WriteLn('// Ran for ' + (timerunning) + '//');
WriteLn('// You started with Magic level : ' + inttostr(StartSkill) + '');
WriteLn('// You Magic level is now : ' + inttostr(EndSkill) + '');
WriteLn('//////////////////////////////////////////////////////////////');
end;
procedure SetUpClient;
begin
SRLPlayerForm(True, ['Use staff?'], ['How many casts?'], ['earth/water staff? (when using one)'], []); // Thanks! Summilion
//MakeCompass(CompassDirection);
HighestAngle;
//GetLevel('magic', True);
GameTab(4);
end;
{===================]
MainLoop
[===================}
begin
SetUpSrl;
SetupClient;
ActivateClient;
wait(500);
CheckEquipMent;
end.
Thats what the script i just ran and it semi worked (logged out) cause i didnt have rune.
This is what i come up with for the FindRunes
SCAR Code:
function FindRunes: boolean;
var
i,dtm,temp:integer;
rune:string;
foundrune:array[1..3] of boolean;
begin
marktime(temp);
GameTab(4);
for i:=1 to 3 do
begin
case i of
//Water Rune
1: begin
DTM:= DTMFromString('78DA63CC656660E8636440062252CB1924813' +
'448F43F1030C603D5B4A3AA81C8C248209D0A54339D809A02A09A' +
'9904D45402D54C26A0A61AA8A69B0873DAF0AB01001E4B0C12');
Rune:='Water';
end;
//Earth Rune
2: begin
DTM:= DTMFromString('78DA639CCECCC0D0C5C8800C723C781924813' +
'448F43F10307601D54C405503918591407A2250CD0C026AE611A1' +
'6629504D3701354B806A261250D30954D3895F0D00B54F0D18');
Rune:='Earth';
end;
//Body Rune
3: begin
DTM:= DTMFromString('78DA637461666098C8C8800C4404051924813' +
'448F43F10309A02D5F4A0AA81C8C248206D0E543389801A5BA09A' +
'1904D4B803D5CC24A0C61FA8663201358144B819644E1B0135664' +
'035ADF8D5000022460BED');
Rune:='Body';
end;
end;
if(FindDTM(DTM,x,y,MIX1,MIY1,MIX2,MIY2))then
begin
FoundRune[i]:=True;
writeln('Found Rune '+Rune);
end else
begin
writeln('Missing Rune '+Rune);
end;
end;
if(Not FoundRune[1]) or (Not FoundRune[2]) or (Not FoundRune[3])then
begin
writeln('Didnt have the needed runes. Logging out');
//Logout;
end;
writeln('Finding runes took '+IntToStr(TimeFromMark(temp))+' Msec');
end;
Dunno if any use.