Burt
2007-07-22 10:00:04
<!– BEGIN TEMPLATE: formanswers –>
Burt - SRL Member Application Form
Burt
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, VB
Other Communitys
Rune-server.org cheatengine.org moparisthebest.com
How Long have You Played Runescape
5 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I am a nice person. Helps people when they need it.I like to socialize with others. Im never a noob who makes sensless post like GTFO N00b@@. I help a lot of people here with errors and so on. I think it would be great if i was a member.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Spins flax in lumby
——————————————————
<!– END TEMPLATE: formanswers –>
Burt - SRL Member Application Form
Burt
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, VB
Other Communitys
Rune-server.org cheatengine.org moparisthebest.com
How Long have You Played Runescape
5 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I am a nice person. Helps people when they need it.I like to socialize with others. Im never a noob who makes sensless post like GTFO N00b@@. I help a lot of people here with errors and so on. I think it would be great if i was a member.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
Spins flax in lumby
// be in lumby bank with full inv of flax, may take 1 min to find bank symbol color
// Fill lines 17 - 24. Dont forget to declare players
// Post Progress reports and bugs
Program Flax0r;
{.include srl/srl.scar }
var BankSymbolColor, MMStairColor, Ix, Iy, TimeMarker, I, FlaxColor: integer;
XpGained, BsMade, TotalBsMade, BsToMake, DoorsOpened, SymbolTime: integer;
Floor3StairColor, Floor2StairColor, WheelColor, BankBoothColor, BankBoothColor2: integer;
SearchSymbol: boolean;
Procedure Parameters;
begin
BankSymbolColor := 4643039; // If script cant detect bank color , add it here . Leave 0 for autocoloring
BsToMake := 280; // How many Bs to make before switching players
SRLID := '';
SRLPassword := '';
SearchSymbol := True; // Add true if you dont want to add bank color manually
// Will search for symbol 1 min
//Change only if necessary
//------------------------------------------------------------------------------
Floor3StairColor := 10043;
Floor2StairColor := 7208;
WheelColor := 871280;
BankBoothColor := 2707804;
BankBoothColor2 := 3625825;
MMStairColor := 0; // Leave 0 to autocolor
end;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;
Players[0].String1 := '0000' //Bank pin if any
end;
procedure ClearVars;
var
I: Integer;
begin
for I := 0 to 4 do
ReportVars[i] := 0;
end;
Procedure AntiBann;
Begin
I := Random(25);
case I of
1: HoverSkill('random', false);
2: PickUpMouse;
//3: DragItem(2, 1+Random(18));
4: GameTab(1 + Random(12));
5: begin
Ix := Random (500);
Iy := random (500);
MMouse (Ix, Iy, 10 , 10)
end;
end;
end;
Function LoggedIn2: boolean; // I had bug with prievisly loggedIn function
Begin
Result := GetColor (27, 475) = 16777215;
end;
function UpgradeColor(color: integer): integer;
var
I: integer;
begin
for I := 1 to 30 do
if FindColorTolerance(Ix, Iy, Color, msx1, msy1, msx2, msy2, I) then
begin
Result := GetColor(Ix, Iy)
Break;
end;
end;
Function FindFastRandoms: Boolean;
var
i: Integer;
begin
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
for i:=1 to 8 do
begin
case I of
1: If FindDead then
Result := True;
2: If FindMod then
Result := True;
3: If FindMime then
Result := True;
4: If FindMaze then
Result := True;
5: If FindQuiz then
Result := True;
6: If FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
end;
wait(1);
end;
end;
Procedure GetBankSymbolColor;
Begin
MarkTime (SymbolTime);
Status ('Searching for bank symbol... It may take 1 min');
Writeln ('Searching for bank color , if you dont want to wait , add color manually ');
If BankSymbolColor <> 0 then exit;
Repeat
BankSymbolColor := GetSymbolColor(Ix, Iy, 'bank');
Wait(100);
Until (not SearchSymbol) or (BankSymbolColor <> 0) or (TimeFromMark (SymbolTime) > 60000);
If BankSymbolColor = 0 then
Begin
writeln ('Did not find bank symbol , add color manually');
TerminateScript;
end;
Writeln (Inttostr (BankSymbolColor));
Status ('Running');
end;
function Floor3: boolean;
begin
Result := FindColor(Ix, Iy, BankSymbolcolor, mmx1, mmy1, mmx2, mmy2)
end;
procedure MakeScreenPerfect;
begin
if not LoggedIn2 then exit;
MarkTime(TimeMarker)
if GetColor(653, 117) = 0 then
KeyDown(37)
else
KeyDown(39);
repeat
wait(1);
until (GetColor(655, 106) = 0) and (GetColor(655, 135) = 0) and (GetColor(655,
145) = 0) and (GetColor(653, 117) <> 0)
or (TimeFromMark(TimeMarker) > 30000)
Keyup(37);
KeyUp(39);
if TimeFromMark(TimeMarker) > 30000 then
begin
writeln('MakeScreenPerfect did not work ! .. ');
MakeCompass('S');
end;
end;
Procedure AutoColorStair;
begin
for I := 1 to 50 do
if FindColorTolerance(Ix, Iy, 4673, mmx1, mmy1, mmx2, mmy2, I) then
begin
MMStairColor := GetColor(Ix, Iy);
break;
end;
If MMStairColor = 0 then
begin
writeln ('Cant find stair color , add it manually')
TerminateScript;
end;
end;
function ClickStair: boolean;
var
Ix2, Iy2: integer;
begin
if not LoggedIn2 then exit;
If MMStairColor = 0 then AutoColorStair;
if FindColor(Ix2, Iy2, MMStairColor, mmx1, mmy1, mmx2, mmy2) then
Mouse(Ix2, Iy2, 2, 2, True)
Wait(100 + random(50));
if FindColor(Ix, Iy, 255, mmx1, mmy1, mmx2, mmy2) then
begin
if Distance(Ix2, Iy2, Ix + 1, Iy + 15) - 2 <= 10 then
Result := true
else
begin
writeln(' Doors are closed ... Walking to doors now');
Flag;
end;
end;
end;
function FindObjMultiText2(var cx, cy: Integer; Ut1, UT2, UT3: string; color,
tolerance, waitx: Integer): Boolean;
var
x, y, a, c, i, x1, y1, x2, y2: Integer;
begin
Color := UpgradeColor(Color);
if (FindColorTolerance(x, y, color, msx1, msy1, msx2, msy2, tolerance)) then
begin
x1 := 245;
y1 := 165;
x2 := 277;
y2 := 185;
repeat
if (not (Loggedin2)) then
Break;
a := a + 1;
if (a = 1) or (a = 3) then
c := c + 1;
for i := 1 to c do
begin
if (a = 1) then
begin
x1 := x1 + 30;
x2 := x2 + 30;
end
else if (a = 2) then
begin
y1 := y1 - 20;
y2 := y2 - 20;
end
else if (a = 3) then
begin
x1 := x1 - 30;
x2 := x2 - 30;
end
else if (a = 4) then
begin
y1 := y1 + 20;
y2 := y2 + 20;
end;
if (x1 = 485) and (x2 = 517) then
x2 := x2 - 2;
if (y1 = 325) and (y2 = 345) then
y2 := y2 - 7;
if (x2 > 515) then
Break;
if (FindColorTolerance(x, y, Color, x1, y1, x2, y2, tolerance)) then
begin
MMouse(x, y, 0, 0)
cx := x;
cy := y;
Wait(waitx);
if (IsUpTextMulti(UT1, UT2, UT3)) then
begin
Result := True;
Break;
end;
end;
end;
if (a = 4) then
a := 0;
until (x2 > 515) or (Result = True);
end;
end;
procedure ClimbDown;
begin
if not LoggedIn2 then
exit;
if (FindObjMultiText2(Ix, Iy, 'Cl', 'ca', 'Sta', Floor3StairColor, 5, 100)) then
begin
Mouse(Ix, Iy, 0, 0, False);
ChooseOption(Ix, Ix, 'own');
end;
end;
procedure ClimbUp;
begin
if not LoggedIn2 then
exit;
if (FindObjMultiText2(Ix, Iy, 'Cl', 'ca', 'Sta', Floor2StairColor, 5, 100)) then
begin
Mouse(Ix, Iy, 0, 0, False);
ChooseOption(Ix, Ix, 'up');
end;
end;
function ClickInRoom: boolean;
begin
if not LoggedIn2 then
exit;
Mouse(636 - 2, 111, 1, 1, True);
Wait(100 + random(50));
if FindColor(Ix, Iy, 255, mmx1, mmy1, mmx2, mmy2) then
begin
if Distance(637, 111, Ix + 1, Iy + 15) - 2 <= 3 then
Result := true
else
begin
writeln('Doors are closed ... Walking to doors now');
Flag;
exit;
end;
end;
end;
function OpenDoors: boolean;
begin
if not LoggedIn2 then
exit;
MarkTime(TimeMarker)
if not LoggedIn2 then
Exit;
MakeCompass('S')
repeat
if FindObjMultiText2(Ix, Iy, 'Do', 'or', 'oo', 2509163, 3, 100) then
begin
Wait(100 + random(100));
if IsUpTextMulti('Op', 'pen', 'Open') then
begin
Mouse(Ix, Iy, 0, 0, True);
Result := True;
exit;
end;
if IsUpTextMulti('lose', 'Close', 'Cl') then
begin
Result := true
exit;
end;
end;
wait(1000 + random(1000));
until TimeFromMark(TimeMarker) > 10000
Writeln('Did not find door ');
end;
Procedure GetFlaxColor;
Begin
GameTab (4);
FlaxColor := GetColor (584, 229);
end;
Function LevelGained: boolean;
Begin
Result := FindNpcChatText('ongr');
end;
Function FindWheel: Boolean;
Var
LittleMarker: integer;
begin
If not LoggedIn2 then exit;
MarkTime(LittleMarker);
Repeat
if GetColor(44, 37) = 3358280 then exit;
if FindObjMultiText2(Ix, Iy, 'wh', 'el', 'Sp', WheelColor, 3, 100) then
Begin
Mouse (Ix, Iy, 0, 0, True);
Result := True;
end;
Wait(100+random(100));
If FindFastRandoms then Result := False;
Until Result or (TimeFromMark (LittleMarker) > 7000) or (not LoggedIn2)
end;
Function DetectScreen: boolean;
Var
LittleMarker: Integer;
Begin
If Not LoggedIn2 then exit;
MarkTime (LittleMarker);
Repeat
Wait(100+Random(100));
If FindFastRandoms then exit;
if GetColor(44, 37) = 3358280 then Result := True;
Until Result or (TimeFromMark (LittleMarker) > 5000) or (not LoggedIn2)
End;
Function SelectAll: boolean;
Var
LittleMarker: integer;
Begin
If not LoggedIn2 then exit;
Mouse(265, 112, 3, 3, False);
Wait(500+random(500));
If not ChooseOption(Ix, Iy, ' X') then exit;
MarkTime (LittleMarker);
Repeat
Wait(100+Random(100));
If FindFastRandoms then exit;
Result := GetColor(266, 396) = 0 // every1 say thx to e-men
Until Result or (TimeFromMark(LittleMarker) > 5000) or (not LoggedIn2)
If Result then
Begin
wait (500+Random(500));
TypeSend('28' + Chr(13));
end;
end;
Function FindAndSpinn: boolean;
Var
SpecialMarker: integer;
Begin
If Not LoggedIn2 then exit;
MarkTime (SpecialMarker);
Repeat
If FindWheel then
If DetectScreen then
If SelectAll then Result := True
Wait(1000+random(500));
FindFastRandoms;
FindNormalRandoms;
Until Result or (TimeFromMark (SpecialMarker)> 30000) or (not LoggedIn2);
If TimeFromMark (SpecialMarker)> 30000 then
Writeln ('Did not find wheel within 30 sec... Going to bank');
end;
Function NoMoreFlax: boolean;
Begin
Result := not findColor (Ix, Iy, FlaxColor, mix1, miy1, mix2, miy2)
end;
Procedure Spin;
Var
WaitMarker: integer;
begin
If not LoggedIn2 then exit;
MarkTime(WaitMarker);
If not FindAndSpinn then exit;
Repeat
Wait(1000+random(500));
If FindNormalRandoms or FindFastRandoms or LevelGained then
If not FindAndSpinn then exit;
If FindFight then
begin
writeln ('Found fight.. Running to bank')
exit;
end;
AntiBann;
GameTab (4);
Until NoMoreFlax or (TimeFromMark (WaitMarker) > 80000) or (not LoggedIn2)
end;
function MyBankScreen: boolean;
begin
Result := IsTextAtEx(184, 34, 'The Bank', 30, upchars, True, False, 0, 0,
-1);
end;
function FindBank2(Colors: integer): boolean;
var
I: integer;
begin
if not LoggedIn2 then
exit;
if MyBankScreen then
exit;
if (FindObjMultiText2(Ix, Iy, 'Us', 'Ba', 'Boo', Colors, 5, 350)) then
begin
Mouse(Ix, Iy, 0, 0, false);
if (ChooseOption(x, y, 'qui')) or (ChooseOption(x, y, 'kly')) then
begin
Flag;
i := 0
repeat
Wait(100);
I := I + 1
If PinScreen Then InPin(Players[CurrentPlayer].String1)
until (MyBankScreen) or (I > 50)
if (MyBankScreen) then
begin
if not (Getcolor(475, 75) = 5531254) then
Mouse(475, 77, 2, 0, true);
Result := True
Exit;
end;
end;
end;
end;
Procedure Bank;
Begin
If not FindBank2 (BankBoothColor) then
If not FindBank2 (BankBoothColor2) then
If not FindBank2 (3955563) then
If not FindBank2 (5339791) then
Begin
Writeln ('Did not find Bank');
Players[CurrentPlayer].Active := false
Logout;
exit;
end;
Mouse (586, 230, 2, 2, False);
wait(500+random(500));
ChooseOption (Ix, Iy, 'All');
BsMade := BsMade +28;
ReportVars[0] := ReportVars[0] + 28;
XpGained := BsMade * 15;
ReportVars[3] := ReportVars[3] + 28 * 15;
TotalBsMade := TotalBsMade + BsMade;
If FindColor (Ix, Iy, FlaxColor, msx1, msy1, msx2, msy2) then
Begin
Mouse (Ix, Iy, 2, 2, False);
Wait(500+random(500));
ChooseOption (Ix, Iy, 'All');
end else
Begin
Writeln ('Did not find flax .. make sure its in top of the bank ');
If MyBankScreen then Mouse (487, 41, 2, 2, True);
Logout;
Players[CurrentPlayer].Active := false;
exit;
end;
If MyBankScreen then Mouse (487, 41, 2, 2, True);
end;
Procedure ToWheel;
Begin
If Not LoggedIn2 then exit;
MakeCompass('S');
SetRun(true);
ClickStair;
Flag;
wait(1000+random(500));
MarkTime (TimeMarker);
repeat
ClimbDown;
Wait(1000 + random(500))
repeat
wait(100 + random(10));
until GetColor(200, 148) <> 16777215
wait(1000+random(500));
until (not Floor3) or (TimeFromMark(TimeMarker) > 30000) or (not LoggedIn2)
If TimeFromMark(TimeMarker) > 30000 then
begin
writeln('Cant find stairs ');
Logout;
Players[CurrentPlayer].Active := false;
exit;
end;
Wait(1000+Random(500));
MakeScreenPerfect;
if not ClickInRoom then
begin
OpenDoors;
DoorsOpened := DoorsOpened + 1;
ReportVars[1] := ReportVars[1] + 1;
end;
Flag;
end;
Procedure ToBank;
Begin
If not LoggedIn2 then exit;
MakeCompass('S');
if not ClickStair then
begin
OpenDoors;
DoorsOpened := DoorsOpened + 1;
ReportVars[1] := ReportVars[1] + 1;
wait(500 + random(500));
if findColor(Ix, Iy, MMStairColor, mmx1, mmy1, mmx2, mmy2) then
Mouse(Ix, Iy, 2, 2, True)
end;
Flag;
wait(500 + random(500))
MarkTime(TimeMarker);
repeat
ClimbUp;
Wait(1000 + random(300))
repeat
wait(100 + random(10));
until GetColor(200, 148) <> 16777215
Wait(1000+random(500));
until (Floor3) or (TimeFromMark(TimeMarker) > 30000) or (not LoggedIn2)
if TimeFromMark(TimeMarker) > 30000 then
begin
writeln('Cant find stairs ');
Logout;
Players[CurrentPlayer].Active := false;
exit;
end;
Mouse(632, 130, 3, 0, True);
flag;
wait(500 + random(500));
end;
procedure ProgressReport;
begin
Writeln(' ');
writeln('--------Proggy :)--------');
Writeln('Total time Running: ' + TimeRunning);
Writeln('Bow strings made: ' + inttostr(XpGained/15));
Writeln('Xp gained: ' + inttostr(XpGained));
Writeln('Doors opened: ' + inttostr (DoorsOpened));
Writeln('--------Proggy :)--------');
Writeln(' ');
SRLRandomsReport;
end;
Procedure SetUpScript;
Begin
SetUpsrl;
DeclarePlayers;
ActivateClient;
ScriptID := '172'
end;
begin
SetUpScript;
If not LoggedIn2
then LoginPlayer;
GetFlaxColor;
Parameters;
GetBankSymbolColor;
Repeat
BsMade := 0;
Repeat
ToWheel;
Spin;
ToBank;
Bank;
ProgressReport;
SendSRLReport;
ClearVars;
Until (BsMade>=BsToMake) or (not LoggedIn2)
NextPlayer (True);
Until False;
end.——————————————————
<!– END TEMPLATE: formanswers –>