Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program SSPoweThiever; //(gem)
- {$I srl/srl.simba}
- var
- x, y, scimstall, scimstall1, shark, count: integer;
- Status:String;
- const
- USERNAME = 'pimd thiever';
- PASSWORD = 'G4jtnguit4ujgi';
- procedure proggy; //idea from rj
- begin
- cleardebug;
- writeln('JStemper ~~ SS3 Thiever');
- writeln(' Time Running: '+ MsToTime(GetTimeRunning,3))
- Writeln(' Status: ' + Status)
- exit;
- end;
- function IsLoggedIn: boolean; //stole and editted from hoodz ss1
- begin
- if findcolortolerance(x, y, 1911085, 740, 130, 762, 161, 20) then
- begin
- result := true
- //writeln('we are logged in');
- wait(200)
- end
- else
- begin
- result := false
- //writeln('we are not logged in');
- wait(200)
- end;
- end;
- procedure Login; //stole and editted from hoodz ss1
- begin
- wait(3000)
- begin
- movemouse(484, 338);
- Status := 'Entering Username';
- proggy;
- Wait(200);
- clickmouse(x, y, mouse_left);
- count := 0;
- repeat
- Inc(count);
- PressKey(VK_Back);
- until count > 25;
- Wait(250);
- sendkeys(USERNAME, 0, 0);
- Wait(1000);
- Status := ('Entering Password');
- proggy;
- movemouse(480, 385);
- Wait(200);
- clickmouse(x, y, Mouse_left);
- Wait(200);
- count := 0;
- repeat
- PressKey(VK_Back);
- Inc(count);
- until count > 25
- sendkeys(PASSWORD, 50, 25);
- Status := ('logging in');
- proggy;
- Wait(1000);
- movemouse(491, 417);
- Wait(1000);
- ClickMouse(x, y, mouse_left);
- Wait(4000);
- writeln('logged in! (?)')
- end;
- end;
- procedure setmeup;
- begin
- writeln('setting up....');
- writeln('putting angle right');
- sleep(5000)
- count := 0
- repeat
- inc(count);
- presskey(38);
- until count > 25;
- sleep(1000);
- writeln('completed');
- writeln('open inventory');
- movemouse(654, 186);
- sleep(200);
- clickmouse(x, y, mouse_left);
- sleep(1000);
- writeln('completed');
- writeln('set up completed!');
- end;
- procedure teleport;
- var
- x, tele, y:integer;
- begin
- tele := DTMFromString('mbQAAAHicY2VgYLBkYmAwA2JbIDYFYjsgfg8UfwXEbxgg7I9A/O/fP4aqqh9gbGqSB6aVgeLomBELBgMAFesQHQ==');
- Status := 'Teleporting home';
- proggy;
- presskey(115)
- wait(400)
- presskey(115)
- wait(500)
- if findDTM(tele, x, y, 552, 221, 590, 252) then
- begin
- mmouse(x, y, 1, 1);
- wait(randomrange(300, 600));
- clickmouse2(mouse_Left);
- clickmouse(x, y, mouse_left);
- freedtm(tele);
- end;
- terminatescript;
- end;
- {function DebugTPA(Points: TPointArray; BmpName: string): Boolean;
- var
- Bmp: integer;
- Box : TBox;
- TempTPA : TPointArray;
- begin
- Box := GetTPABounds(Points);
- Bmp := BitmapFromClient(Box.x1,Box.y1,Box.x2,Box.y2);
- TempTPA := CopyTPA(Points);
- OffsetTPA(TempTPA,Point(-box.x1,-box.y1));
- DrawTPABitmap(Bmp,TempTPA,clRed);
- DisplayDebugImgWindow(box.x2-Box.x1 + 1, box.y2-box.y1 + 1);
- DrawBitmapDebugImg(Bmp);
- if bmpname <> '' then
- SaveBitmap(Bmp, ScriptPath + BmpName +'.bmp');
- FreeBitmap(Bmp);
- Result := True;
- end; }
- function rsps_getUpText:string;
- var
- blueTPA: tpointarray;
- blueATPA: t2dpointarray;
- begin
- FindColorsTolerance(blueTPA, 14080518, 0, 0, 194, 25, 40);
- if (length(blueTPA) > 1) then
- blueATPA := splitTPAEx(blueTPA, 1, 10);
- sortATPAFromFirstPointX(blueATPA, point(0, 0));
- result:= getTextATPA(blueATPA, 5, 'UpChars07');
- //DebugTPA(blueTPA, 'bmp');
- end;
- Function rspsIsUpTextMultiCustom(Text: TStringArray): Boolean;
- Var
- TheText: String;
- i, n: Integer;
- Begin
- TheText := rsps_getUpText;
- n := High(Text);
- For i := 0 to n do
- If (Pos(Text[i], TheText) > 0) then
- Begin
- Result := True;
- Exit;
- End;
- End;
- Function InCombat: boolean;
- begin
- if findcolortolerance(x, y, 45647, 254, 135, 268, 162, 45) or
- findcolortolerance(x, y, 330180, 254, 135, 268, 162, 45) then
- Begin
- Status := ('We are being attacked');
- proggy;
- Begin
- Result:=True
- End
- End
- Else
- wait(100);
- exit;
- End;
- {procedure thief;
- Var
- TPAA: T2DPointArray;
- TPA: TPointArray;
- CTS, I: Integer;
- Begin
- CTS := GetColorToleranceSpeed;
- ColorToleranceSpeed(2);
- setcolorspeed2modifiers(0.25, 0.12);
- FindColorsSpiralTolerance(348, 177, TPA, 1456985, 220, 79, 268, 150, 6);
- ColorToleranceSpeed(CTS);
- TPAA := TPAToATPAEx(TPA, 30, 30); //Put the Width and Heigh here
- SortATPASize(TPAA, True);
- For I := 0 To High(TPAA) Do
- If GetArraylength(TPAA[i]) > 100 Then // Set How Much Points you need for your function to take Ation
- Begin
- MiddleTPAEx(TPAA[i], x, y);
- MMouse(X, Y, 3, 3);
- Status := 'Thieving';
- proggy;
- KeyUp(37);
- If (rspsIsUpTextMultiCustom(['enera'])) Then
- begin
- clickmouse(x, y, mouse_left);
- wait(randomrange(10, 50))
- exit;
- end
- else
- KeyDown(37);
- Status := ('Rotating Screen')
- proggy;
- exit;
- end else
- begin
- KeyDown(37);
- Status := ('Rotating Screen')
- proggy;
- exit;
- end;
- end; }
- procedure thief;
- Var
- TPAA: T2DPointArray;
- TPA: TPointArray;
- CTS, I: Integer;
- Begin
- CTS := GetColorToleranceSpeed;
- ColorToleranceSpeed(2);
- setcolorspeed2modifiers(0.25, 0.12);
- FindColorsSpiralTolerance(348, 177, TPA, 8099495, 229, 197, 261, 261, 6);
- ColorToleranceSpeed(CTS);
- TPAA := TPAToATPAEx(TPA, 30, 30); //Put the Width and Heigh here
- SortATPASize(TPAA, True);
- For I := 0 To High(TPAA) Do
- If GetArraylength(TPAA[i]) > 100 Then // Set How Much Points you need for your function to take Ation
- Begin
- MiddleTPAEx(TPAA[i], x, y);
- MMouse(X, Y, 3, 3);
- Status := 'Thieving';
- proggy;
- KeyUp(37);
- If (rspsIsUpTextMultiCustom(['pic'])) Then
- begin
- clickmouse(x, y, mouse_left);
- wait(randomrange(10, 50))
- exit;
- end
- else
- KeyDown(37);
- Status := ('Rotating Screen')
- proggy;
- exit;
- end else
- begin
- KeyDown(37);
- Status := ('Rotating Screen')
- proggy;
- exit;
- end;
- end;
- function Lowish_HP(): Boolean;
- var
- x, y, i: Integer;
- colours: TIntegerArray;
- begin
- colours := [1912114, 3886164]
- for i := 0 to High(colours) do
- begin
- if FindColorTolerance(x, y, colours[i], 712, 30, 718, 35, 20) then
- begin
- //WriteLn('Health Point is low');
- Result := True
- end else
- //WriteLn('Health point not low');
- end;
- end;
- function VeryLowHp(): Boolean;
- var
- x, y, i: Integer;
- colours: TIntegerArray;
- begin
- colours := [3426899]
- for i := 0 to High(colours) do
- begin
- if FindColorTolerance(x, y, colours[i], 697, 36, 715, 40, 25) then
- begin
- //WriteLn('Health Point is very low, teleporting');
- Result := True
- end else
- //WriteLn('Health point not low');
- end;
- end;
- function Restore: Boolean;
- var
- x, y, i: Integer;
- potDTMs: TIntegerarray;
- begin
- potDTMs := [
- DTMFromString('mbQAAAHicY2VgYNjPhMDHgHgnEC9iZGCYC8TTGSHsZUC8RieaYb1uDMM2vUSGUFFdhuVaEQySQP3omBELBgMAqUMM4Q=='),
- DTMFromString('mggAAAHicY2NgYJjAxMAwFYjnAvFMKHsaEC9ghOCFQDwHiKdA6SVa4WAcKqrL0KHkzlBeUckwVyOYQRJoFjbMiANDAAC3tw46'),
- DTMFromString('mggAAAHicY2NgYMhlYmDIBOJCIM4B4gwgTgfiuYwMDAuheDoQzwPiJUC8oKCVYYlWOEOmlDlDWVk5w9GmOWC+JNAsbJgRB4YAAK3KDs4='),
- DTMFromString('mggAAAHicY2NgYDjAxMBwBIhPQvE5KP85IwPDHSC+DcQPgPgJFO+pnspQUFDEEB4RwxARGcsQ4RzIML+sg0ESaBY2zIgDQwAAMiMSYw==')
- ];
- for i := 0 to High(potDTMs) do
- if FindDTM(potDTMs[i], x, y, 548, 206, 737, 467) then
- begin
- Wait(100 + Random(200));
- Status := ('Drinking ' + toStr(i + 1) + ' dose restore');
- proggy;
- MMouse(x, y, 2, 2);
- Mouse(x, y, 2, 2, True);
- clickmouse(x, y, mouse_left);
- Wait(1200);
- Result := True;
- exit;
- end; //else
- // WriteLn('Can''t drink Restore');
- for i := 0 to high(potDTMs) do
- FreeDTM(potDTMs[i]);
- end;
- function Brew: Boolean;
- var
- x, y, i: Integer;
- potDTMs: TIntegerArray;
- begin
- potDTMs := [
- DTMFromString('mggAAAHicY2NgYJjGxMAwFYhnA3E/EM8E4klA/BYo9wSIPwDxZyB+CcTvgPjwQVOG40cCGebP0wTyGBlmzdRgOHrEg0ESyMOGGXFgCAAA4SsR4g=='),
- DTMFromString('mbQAAAHicY2VgYMhiguACIM4F4jQgrmNkYCgB4nogrgDiWiA+ctiJoba2jmHjel2GwweNwHxJoH50zIgFgwEAb8YNYQ=='),
- DTMFromString('mWAAAAHicY2FgYMhlYmBIZ4LQ2UCsw8jAoAfEhkBsBsQFBUUM5eUVDEVFxQwP7k9jkATqQcaMaBgEANvdCUo='),
- DTMFromString('mggAAAHicY2NgYHBkgmB3ILYEYhcgdgLiGkYGhkIgroXiEiBuBOIjh+wZamvrGObP02TYuF6XIS0tk+HIYScGSaBZ2DAjDgwBAEgfDkc=')
- ];
- for i := 0 to High(potDTMs) do
- if FindDTM(potDTMs[i], x, y, 548, 206, 737, 467) then
- begin
- Status := ('Drinking ' + toStr(i + 1) + ' dose Brew ');
- proggy;
- MMouse(x, y, 2, 2);
- Mouse(x, y, 2, 2, True);
- clickmouse(x, y, mouse_left);
- Wait(1200);
- Result := True;
- if (i >= 2) then
- begin
- // writeln ('Drank 3 or more brews so restoring');
- restore;
- break;
- end;
- end; //else
- // WriteLn('Can''t drink brew');
- for i := 0 to high(potDTMs) do
- FreeDTM(potDTMs[i]);
- end;
- begin
- setupsrl();
- mouseresetclientarea;
- imageresetclientarea;
- cleardebug;
- writeln('JStemper ~~ SS3 Thiever');
- repeat
- if (not isloggedin) then
- begin
- login;
- SetMeUp;
- end;
- if (isloggedin) then
- begin
- if (not incombat) then
- begin
- repeat
- thief;
- If VeryLowHp then teleport;
- until(not isloggedin) or (incombat)
- end;
- If (incombat) then
- begin
- If lowish_Hp then
- begin
- brew;
- end;
- If VeryLowHp then teleport;
- end;
- end;
- until(false)
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement