Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //////////////////////////////////////////////////////////////////////////
- ///////////////////////// MY FIRST RUNESCAPE SCRIPT /////////////////
- ///////////////////////// ANY TREE ANYWHERE POWERCUTTER /////////////////
- ///////////////////////// SCRIPT BY YOHOJO /////////////////
- ///////////////////////// RELEASED NOVEMBER 12,2005 /////////////////
- ///////////////////////// QUESTIONS?COMMENTS?ADVICE? /////////////////
- ///////////////////////// THEN IM ME ON AIM: YOHOJO88 /////////////////
- ///////////////////////////////////////////////////////////////////////////
- {History
- V1.0 Working with no anti-ent and axe fix
- V1.1 Added more randome movements and made less detectable
- V1.2 Added crappy ent protection and axe fix
- V1.3 Added progress report!
- V1.4 Added form!
- V1.5 Added very sexy ent protection(hasn't been tested yet) and fixed axe
- head finding
- V1.6 Added PWENED'S axehead finding procedure which i edited a bunch to
- work with Si.Scar
- V1.7 S0oper Do0per Axe ehad fixer added. Worked if equiped or not =)!
- V1.8 Sharpened up axe fixing procedure even more. Should work perfect now
- V1.9 Made script logout after certain ammount of loads were cut.
- }
- program Powercutter;
- {.include si.scar}
- var
- x,y:integer;
- cut,dropped: Integer;
- UserName:string;
- PassWord:string;
- frmDesign : TForm;
- Label1 : TLabel;
- Label2 : TLabel;
- Label3 : TLabel;
- Button1 : TButton;
- a****sername : TEdit;
- asdfPassword : TEdit;
- const
- ///////////////////////////////////SETUP/////////////////////////////////////////////
- TreesColor1=1066044 ;//color of tree in gamescreen
- TreesColor2=1452064 ;//color of tree in gamescreen
- TreesColor3=1986624 ;//color of tree in gamescreen
- Equiped= False;//true for equpied false for not
- CutTime=6500;//Take it takes to walk to/cut down a tree(eggagerate it)
- LoadsToCut=15;//Number of loads you want to cut untill logging out
- LampSkill='WoodCutting';//What you want to use lamps on
- ///////////////////////////////END OF SETUP////////////////////////////////
- procedure Tutorial1(senter: TObject);
- begin
- writeln('button pressed');
- frmDesign.Caption:=(frmDesign.Caption+('.'));
- frmDesign.ModalResult:= mrok
- end;
- Procedure ClickHumanA(xa, ya : integer; Click : boolean);
- begin {A little procedure PWND created to simluate human clicking }
- Holdmouse(xa, ya, click);
- wait(50 + random (50));
- Releasemouse(xa, ya, click);
- end;
- Procedure Getaxecolor;
- var A1,A2,A3,H:Integer;
- begin
- Writeln('Getting axe and handle colors')
- Wait(300)
- if(Equiped=False)then
- begin
- Gametab(4);
- A1 := (Getcolor(590, 220))
- A2 := (Getcolor(590, 218))
- A3 := (Getcolor(587, 219))
- H := (Getcolor(579, 230))
- Writeln('Axe colors ' + inttostr(A1)+ ' ' + inttostr(A2) + ' ' + inttostr(A3))
- Writeln('Handle color ' + inttostr(H))
- end;
- if(Equiped=True)then
- begin
- Gametab(5);
- A1 := (Getcolor(595, 296))
- A2 := (Getcolor(597, 296))
- A3 := (Getcolor(594, 294))
- H := (Getcolor(586, 306))
- Writeln('Axe colors ' + inttostr(A1)+ ' ' + inttostr(A2) + ' ' + inttostr(A3))
- Writeln('Handle color ' + inttostr(H))
- end;
- end;
- Function Axelost : boolean;
- var x, y,a1,a2,a3: integer;
- begin
- if(equiped=true)then
- gametab(5)
- If(findcolortolerance(x, y, A1, 560, 210, 740, 460, 5)) or
- (findcolortolerance(x, y, A2, 560, 210, 740, 460, 5)) or
- (findcolortolerance(x, y, A3, 560, 210, 740, 460, 5)) then
- result := true
- if(equiped=false)then
- gametab(4)
- If(findcolortolerance(x, y, A1, 560, 210, 740, 460, 5)) or
- (findcolortolerance(x, y, A2, 560, 210, 740, 460, 5)) or
- (findcolortolerance(x, y, A3, 560, 210, 740, 460, 5)) then
- result := true
- else
- result := false
- end;
- Procedure FixTheAxe;
- Var x, y,a1,a2,a3,h : integer;
- begin
- if(Axelost = false)and
- (Equiped=False)then
- begin
- repeat
- if FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x,y,2,2,true)
- if(not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)))or
- (not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)))or
- (not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)))then
- If(findcolortolerance(x, y, 1, 1, 5, 725, 160, 5))then
- Mouse(x, y,2,2,true)
- Flag;
- If FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x, y,2,2,true)
- until((findcolortolerance(x, y, A1, 1, 1, 740, 460, 5)) or
- (findcolortolerance(x, y, A2, 1, 1, 740, 460, 5)) or
- (findcolortolerance(x, y, A3, 1, 1, 740, 460, 5)))
- begin
- if (FindObjEx(x, y,'Axe',560, 210, 740, 460,A1, 5, 300, 300,true))or
- FindObjEx(x, y,'Axe',560, 210, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Axe',560, 210, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x, y,1,1,true)
- wait(500 + random(500))
- If(findcolortolerance(x, y, h, 565, 5, 725, 160, 5))then
- Mouse(x, y,2,2,true)
- end;
- end;
- if(Axelost = false)and
- (Equiped=True)then
- begin
- Gametab(5);
- if (findcolortolerance(x,y,H,560, 210, 740, 460, 5))then
- Mouse(x,y,2,2,true)
- Gametab(4);
- repeat
- if FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x,y,2,2,true)
- if(not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)))or
- (not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)))or
- (not(FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)))then
- If(findcolortolerance(x, y, 1, 1, 5, 725, 160, 5))then
- Mouse(x, y,2,2,true)
- Flag;
- If FindObjEx(x, y,'Take A',1, 1, 740, 460,A1, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Take A',1, 1, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x, y,2,2,true)
- until((findcolortolerance(x, y, A1, 1, 1, 740, 460, 5)) or
- (findcolortolerance(x, y, A2, 1, 1, 740, 460, 5)) or
- (findcolortolerance(x, y, A3, 1, 1, 740, 460, 5)))
- begin
- if (FindObjEx(x, y,'Axe',560, 210, 740, 460,A1, 5, 300, 300,true))or
- FindObjEx(x, y,'Axe',560, 210, 740, 460,A2, 5, 300, 300,true)or
- FindObjEx(x, y,'Axe',560, 210, 740, 460,A3, 5, 300, 300,true)then
- Mouse(x, y,1,1,true)
- wait(500 + random(500))
- If(findcolortolerance(x, y, h, 565, 5, 725, 160, 10))then
- Mouse(x, y,2,2,true)
- end;
- end;
- end;
- procedure Antirandoms;
- begin
- CheckRandoms(1,LampSkill,'N',false,false,srtAll)
- DropUseless;
- writeln('Checking Randoms');
- end;
- Function Antient: boolean;//My own Ent Detection Function
- var
- ENTCHOP:integer;
- begin
- ENTCHOP := BitmapFromString(8, 16, 'z78DA3330A0377003025492' +
- '1895B844F08B136FF2F0564F6A7892175F431100009E0198F 1');
- begin
- if FindBitmapToleranceIn(ENTCHOP,x, y, 2, 3,366, 21,25)then
- result:=true;
- end;
- begin
- if (not(FindBitmapIn(ENTCHOP,x, y, 2, 3,366, 21)))then
- result:=false;
- end;
- end;
- Procedure Check4Ent;//My own Ent Detection Procedure
- var cx,cy:integer;
- begin
- if(FindObj(cx, cy, 'Chop', TreesColor1, 5)) or
- (FindObj(cx, cy, 'Chop', TreesColor2, 5))or
- (FindObj(cx, cy, 'Chop', TreesColor3, 5))then
- Mouse(cx,cy,1,1,true)
- if (Antient=true) then
- begin
- writeln('!HOLY ****! Thats an ent!')
- Mouse(650, 90,3,3,true);
- wait(500+Random(500));
- Mouse(643, 74,3,3,True);
- wait (25000+Random(5000));
- end;
- if (Antient=false)then
- begin
- writeln('Entless Tree')
- end;
- end;
- procedure choptree1;
- var cx,cy:integer;
- begin
- if (not(FindObj(cx, cy, 'Chop', TreesColor1, 5))) or
- (not(FindObj(cx, cy, 'Chop', TreesColor2, 5)))or
- (not(FindObj(cx, cy, 'Chop', TreesColor3, 5)))then
- writeln('Could not find a tree. Please re-choose colors')
- if FindObj(cx, cy, 'Chop', TreesColor1, 5) or
- FindObj(cx, cy, 'Chop', TreesColor2, 5)or
- FindObj(cx, cy, 'Chop', TreesColor3, 5)then
- Mouse(cx,cy,3,5,true);
- writeln('Tree Found')
- writeln('Chopping Tree..')
- wait(3000)
- if FindObj(cx, cy, 'Chop', TreesColor1, 5) then
- Movemousesmooth(cx,cy);
- if (not(FindObj(cx, cy, 'Chop', TreesColor1, 5)))then
- if FindObj(cx, cy, 'Chop', TreesColor2, 5)then
- Movemousesmooth(cx,cy);
- if (not(FindObj(cx, cy, 'Chop', TreesColor2, 5)))then
- if FindObj(cx, cy, 'Chop', TreesColor3, 5)then
- Movemousesmooth(cx,cy);
- Check4Ent;
- wait(cuttime+Random(500));
- Sendarrowsilentwait(3+random(4),500+Random(500));
- end;
- procedure DropLogs;
- var x,y,dtmlogs, dropO:integer;
- begin
- writeln('Dropping Logs')
- repeat
- dtmLogs:= DTMFromString('78DA633CC4C4C0F090910119B4A4DA323C0 4D' +
- '220D1FF40C07800A8E626AA1A882C8C04D29B806A9E1250B3 07A8' +
- 'E61D0135E7816A5E10507316A8E6010135A7816AAEE357030 09B0' +
- 'B11B0');
- dropO := BitmapFromString(7, 14, 'z78DA3330182CC00D07C0A506' +
- 'BFF8C0AA24DE47C3090000FE4E7AA1');
- if(findDTM(dtmlogs,x,y,560, 212, 736, 464))then
- mouse(x,y,5,5,false)
- Wait(200+Random(500));
- if (findbitmap(dropO,x,y))then
- Mouse(x,y,5,3,true)
- Wait(910+Random(500));
- until(not(findDTM(dtmlogs,x,y,560, 212, 736, 464)))
- cut:=cut+27
- dropped:=dropped+1
- writeln('All Logs Dropped')
- end;
- procedure off;
- begin
- SetChat('off', 1);
- SetChat('off', 2);
- SetChat('off', 3);
- end;
- procedure ProgressReport;
- begin
- Writeln(' ');
- Writeln(' ');
- writeln(' Yohojos Any Tree Anywhere Powercutter Progress Report')
- writeln(' You have dropped ' +inttostr(cut)+' logs')
- writeln(' You have dropped ' +inttostr(dropped)+' load(s)')
- writeln(' You have worked for ' +ScriptTime2(2))
- Writeln(' You have Ran Away From ' + inttostr(gSiRandoms[4]) + ' Attacks');
- Writeln(' You have Solved ' + inttostr(gSiRandoms[7]) + ' Boxes');
- Writeln(' You have Talked To ' + inttostr(gSiRandoms[1]) + ' Randoms');
- Writeln(' You have Gained ' +inttostr(gSiRandoms[5]) + ' Levels');
- Writeln(' You have Completed '+inttostr(gSiRandoms[6]) +' Eye Tests');
- end;
- procedure FinalProgressReport;
- begin
- Writeln(' ');
- Writeln(' ');
- writeln(' Yohojos Any Tree Anywhere Powercutter Final Progress Reprot')
- writeln(' !Your Autoing Sesion Has Been Completed!')
- writeln(' You have dropped ' +inttostr(cut)+' logs')
- writeln(' You have dropped ' +inttostr(dropped)+' load(s)')
- writeln(' You have worked for ' +ScriptTime2(2))
- Writeln(' You have Ran Away From ' + inttostr(gSiRandoms[4]) + ' Attacks');
- Writeln(' You have Solved ' + inttostr(gSiRandoms[7]) + ' Boxes');
- Writeln(' You have Talked To ' + inttostr(gSiRandoms[1]) + ' Randoms');
- Writeln(' You have Gained ' +inttostr(gSiRandoms[5]) + ' Levels');
- Writeln(' You have Completed '+inttostr(gSiRandoms[6]) +' Eye Tests');
- end;
- procedure logout1;
- var x,y:integer;
- begin
- if(not(findcolorspiral(x,y,TreesColor1,1, 0,514, 336))
- or(findcolorspiral(x,y,TreesColor2,1, 0,514, 336))
- or(findcolorspiral(x,y,TreesColor3,1, 0,514, 336)))then
- Logout;
- end;
- procedure InitForm;
- begin
- frmDesign := CreateForm;
- frmDesign.Left := 289;
- frmDesign.Top := 161;
- frmDesign.Width := 589;
- frmDesign.Height := 395;
- frmDesign.Caption := 'frmDesign';
- frmDesign.Color := clBtnFace;
- frmDesign.Font.Color := clWindowText;
- frmDesign.Font.Height := -11;
- frmDesign.Font.Name := 'WP MultinationalB Roman';
- frmDesign.Font.Style := [fsBold, fsItalic];
- frmDesign.Visible := False;
- frmDesign.PixelsPerInch := 96;
- Label1 := TLabel.Create(frmDesign);
- Label1.Parent := frmDesign;
- Label1.Left := 51;
- Label1.Top := 30;
- Label1.Width := 95;
- Label1.Height := 24;
- Label1.Alignment := taCenter;
- Label1.Caption := 'User Name';
- Label1.Font.Color := clWindowText;
- Label1.Font.Height := -20;
- Label1.Font.Name := 'MS Sans Serif';
- Label1.Font.Style := [];
- Label1.ParentFont := False;
- Label2 := TLabel.Create(frmDesign);
- Label2.Parent := frmDesign;
- Label2.Left := 450;
- Label2.Top := 30;
- Label2.Width := 91;
- Label2.Height := 24;
- Label2.Alignment := taCenter;
- Label2.Caption := 'Pass Word';
- Label2.Font.Color := clWindowText;
- Label2.Font.Height := -20;
- Label2.Font.Name := 'Times';
- Label2.Font.Style := [];
- Label2.ParentFont := False;
- Label3 := TLabel.Create(frmDesign);
- Label3.Parent := frmDesign;
- Label3.Left := 450;
- Label3.Top := 47;
- Label3.Width := 33;
- Label3.Height := 14;
- Label3.Caption := '(Its Bleeped Out)';
- Label3.Font.Color := clWindowText;
- Label3.Font.Height := -11;
- Label3.Font.Name := 'Times';
- Label3.Font.Style := [fsBold, fsItalic];
- Label3.ParentFont := False;
- Button1 := TButton.Create(frmDesign);
- Button1.Onclick:=@Tutorial1;
- Button1.Parent := frmDesign;
- Button1.Left := 261;
- Button1.Top := 261;
- Button1.Width := 78;
- Button1.Height := 25;
- Button1.Caption := 'Start Chopping';
- Button1.TabOrder := 8;
- a****sername := TEdit.Create(frmDesign);
- a****sername.Parent := frmDesign;
- a****sername.Left := 41;
- a****sername.Top := 60;
- a****sername.Width := 121;
- a****sername.Height := 30;
- a****sername.Font.Color := clWindowText;
- a****sername.Font.Height := -20;
- a****sername.Font.Name := 'Times New Roman';
- a****sername.Font.Style := [];
- a****sername.ParentFont := False;
- a****sername.TabOrder := 9;
- a****sername.Text := '';
- asdfPassword := TEdit.Create(frmDesign);
- asdfPassword.Parent := frmDesign;
- asdfPassword.Left := 440;
- asdfPassword.Top := 60;
- asdfPassword.Width := 121;
- asdfPassword.Height := 29;
- asdfPassword.Font.Color := clWindowText;
- asdfPassword.Font.Height := -20;
- asdfPassword.Font.Name := 'Wingdings 3';
- asdfPassword.Font.Style := [fsBold, fsItalic];
- asdfPassword.ParentFont := False;
- asdfPassword.TabOrder := 10;
- asdfPassword.Text := '';
- 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 FormNames;
- begin
- username:=a****sername.text
- password:=asdfpassword.text
- end;
- begin
- SafeInitForm;
- SafeShowFormModal;
- FormNames;
- activateclient;
- LoadInclude('Windows Media Player');
- SetAccount(1,UserName,PassWord);
- Login(1)
- wait(1000)
- off;
- Getaxecolor;
- repeat
- Antirandoms;
- Choptree1;
- FixTheAxe;
- wait(10);
- if(InvCount = 28)then
- ProgressReport;
- if(InvCount = 28)then
- DropLogs
- until(dropped>=(LoadsToCut));
- Logout;
- FinalProgressReport;
- Terminatescript;
- end.
Add Comment
Please, Sign In to add comment