SCAR Code:
program VarrokYewCutter;
{.include SRl/SRL/Misc/SMART.scar}
{.include SRl/SRl.scar}
{.include SRL/SRL/Skill/Woodcutting.scar}
{.include SRL/SRL/misc/Users.scar}
//////////////////////////////////////////////////////////////////////
// Varrok Yew Cutter By Nicbaz //
// \\
// This Script Has Theese Fetures //
// DTM's \\
// TPA's //
// Multi \\
// Map Walking //
// Multi Player \\
// Colour Usage //
// Cases \\
// Hello And Welcome To My first real \\
// Script this script is designed to cut and bank yew logs in //
// Varrok bank Fill in the script in the below lines lines 60-67 \\
// //
////////////////////////////////////////////////////////////////////\\
// V 1.1 //
// Wrote Wcing Procedure \\
// Walking With symbols //
// \\
//////////////////////////////////////////////////////////////////////
//V 1.2 \\
// Started To learn DTM's //
// And Radial Map Walking \\
// //
/////////////////////////////////////////////////////////////////////
//V 1.3 \\
//TPA's In the wood Cutting Procedure //
// \\
/////////////////////////////////////////////////////////////////////
//V 1.4 \\
//Added in random talking //
//And DTM's For Banking \\
/////////////////////////////////////////////////////////////////////
//V 1.5 //
//Removed Random Talking \\
//Added In Multi Player //
// \\
/////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////
//Future Updates \\
//Needed Failsafes //
//Needed SRL stats \\
// \\
/////////////////////////////////////////////////////////////////////
// Thanks to Torrent of Flame for his Tutorials and Help :D \\
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Delcare Players //////////////////
/////////////////////////////////////////////////////////////////////
const
YourSRLId = '0';
YourSRLPassword ='0';
SmartWorld = 77;
procedure DeclarePlayers;
begin
Disguise('Cs 1.6');
SRLPlayerForm(True, ['Do Not Change', 'Do Not Change'], ['Loads'], ['Do Not Change', 'Do Not Change'], ['Do Not Change']);
end;
/////////////////////////////////////////////////////////////////////
////////////////////////Dont Edit Below Here ////////////////////////
/////////////////////////////////////////////////////////////////////
var x, y: integer;
Loads, Yew: integer;
BrokenAxe: integer;
NormalAxe: integer;
BrokenAxes: integer;
FallyBank, VarrokBank, EdgeBank: integer;
LevelsGained: integer;
/////////////////////////////////////////////////////////////////////
////////////////////////nicbaz load DDTM's //////////////////////////
/////////////////////////////////////////////////////////////////////
function DDTMYews: integer;
var
YewMP: TDTMPointDef;
YewSP: array of TDTMPointDef;
YewDDTM: TDTM;
begin
SetArrayLength(YewSP, 4);
YewMP.x := 23;
YewMP.y := 17;
YewMP.color := 671314;
YewMP.tolerance := 9;
YewSP[0].x := 31;
YewSP[0].y := 7;
YewSP[0].color := 65536;
YewSP[0].Tolerance := 5;
YewSP[1].x := 11;
YewSP[1].y := 9;
YewSP[1].color := 3424328;
YewSP[1].Tolerance := 5;
YewSP[2].x := 21;
YewSP[2].y := 28;
YewSP[2].color := 65536;
YewSP[2].Tolerance := 5;
YewSP[3].x := 36;
YewSP[3].y := 20;
YewSP[3].color := 65536;
YewSP[3].Tolerance := 5;
YewDDTM.MainPoint := YewMP;
YewDDTM.SubPoints := YewSP;
result := AddDTM(YewDDTM);
end;
/////////BANK////////////////
function DDTMBank: integer;
var
BankMP: TDTMPointDef;
BankSP: array of TDTMPointDef;
BankDDTM: TDTM;
begin
SetArrayLength(BankSP, 4);
BankMP.x := 80;
BankMP.y := 30;
BankMP.color := 8094084;
BankMP.tolerance := 225;
BankSP[0].x := 90;
BankSP[0].y := 34;
BankSP[0].areasize := 2;
BankSP[0].areashape := 0;
BankSP[0].color := 1310462;
BankSP[0].Tolerance := 5;
BankSP[1].x := 71;
BankSP[1].y := 33;
BankSP[1].areasize := 2;
BankSP[1].areashape := 0;
BankSP[1].color := 195836;
BankSP[1].Tolerance := 5;
BankSP[2].x := 79;
BankSP[2].y := 34;
BankSP[2].areasize := 2;
BankSP[2].areashape := 0;
BankSP[2].color := 195836;
BankSP[2].Tolerance := 5;
BankSP[3].x := 75;
BankSP[3].y := 33;
BankSP[3].areasize := 2;
BankSP[3].areashape := 0;
BankSP[3].color := 195836;
BankSP[3].Tolerance := 5;
BankDDTM.MainPoint := BankMP;
BankDDTM.SubPoints := BankSP;
result := AddDTM(BankDDTM);
end;
////////////////////////////////////////////////////////////////////////
{ THIS IS WORK OF FR0ZON SOUL IM USEING THIS
FOR ANIT-BAN FOR TYPING I REPEAT IT IS NOT MINE USEING IT BEACUSE IT IS
BETTER THEN THE SRL TYPESEND }
////////////////////////////////////////////////////////////////////////
Type
TextType = Record
NWord, OWord : String;
ChangeType : Integer;
end;
{*************************************************************************************************
Procedure TypeSend2(Text: String; SMART : Boolean);
By: FrÕzÑ_§ÕµL.
Description: Types Text Human-like, pressing random keys around the original.Will not mess up words such as red: or wave:
as long as there is no space before the :. Will type in SMART if needed.
Use: TypeSend2('i want to change this text', false);
SMART use: TypeSend2('i want to change this text', true);
*************************************************************************************************}
Procedure TypeSend2(Text: String; SMART : Boolean);
var
i, j, k, l, DP : integer;
WordArr : Array [0..100] of TextType;
Keys : Array [0..3] of String;
Begin
i := 0;
Text := Padr(Padl(Trim(Text), Length(Trim(Text)) + 1), Length(Trim(Text)) + 2);
Repeat
WordArr[i].OWord := Between(' ', ' ', Text);
WordArr[i].NWord := WordArr[i].OWord;
Delete(Text, Pos(WordArr[i].OWord, Text) - 1, Length(WordArr[i].OWord) + 1);
i := i + 1;
Until(Text = ' ');
for i := 0 to 100 do
Begin
WordArr[i].ChangeType := -1;
if Random(100) < 10 then
if Pos(':', WordArr[i].OWord) < 1 then
WordArr[i].ChangeType := Random(3);
end;
i := 0;
Repeat
Repeat
if WordArr[i].ChangeType = -1 then
Begin
i := i + 1;
if i > 100 then
Break;
end;
until(WordArr[i].ChangeType >= 0);
if Length(WordArr[i].OWord) = 0 then
Break;
j := Random(Length(WordArr[i].OWord)) + 1;
if WordArr[i].ChangeType = 1 then
DP := Pos(Copy(Lowercase(WordArr[i].OWord), j, 1), WordArr[i].OWord);
Keys[3] := '1234567890';
Keys[2] := 'qwertyuiop';
Keys[1] := 'asdfghjkl';
Keys[0] := 'zxcvbnm';
Repeat
for k := 3 downto 0 do
Begin
l := Pos(Copy(Lowercase(WordArr[i].OWord), j, 1), Keys[k]);
if l > 0 then
Break;
end;
if l = 0 then
Begin
i := i + 1;
if (i > 100) then
Break;
end;
until(l > 0);
if (i > 100) then
Break;
case k of
0 : k := k + Random(1);
1, 2 : k := k - 1 + Random(2);
3 : k := k - 1 + Random(1);
end;
case l of
1 : l := 1 + Random(1);
Length(Keys[k]) : l := Length(Keys[k]) - 1 + Random(1);
else
l := l - 1 + Random(2);
end;
if (Random(100) > 70) or (WordArr[i].ChangeType = 1) then
Begin
Delete(WordArr[i].NWord, j, 1);
Insert(Copy(Keys[k], l, 1), WordArr[i].NWord, j);
end else
Insert(Copy(Keys[k], l, 1), WordArr[i].NWord, j - 1 + Random(1));
i := i + 1;
Until(i = 101);
for i := 0 to 100 do
Begin
for l := 1 to Length(WordArr[i].NWord) do
Begin
if Pos(Copy(WordArr[i].NWord, l, 1), '~!@#$%^&*()_+{}|:"<>?') > 0 then
Begin
KeyDown(VK_SHIFT);
Wait(100 + Random(100));
end;
if SMART then
SmartSendKeys(Copy(WordArr[i].NWord, l, 1))
else
TypeByte(GetKeyCode(StrGet(WordArr[i].NWord, l)));
Try
if Not(Pos(Copy(WordArr[i].NWord, l + 1, 1), '~!@#$%^&*()_+{}|:"<>?') > 0) then
KeyUp(VK_SHIFT);
Except
end;
Wait(100 + Random(100));
if (WordArr[i].ChangeType = 1) and (l = DP) then
if (Copy(WordArr[i].NWord, l, 1) <> Copy(WordArr[i].OWord, DP, 1)) then
Begin
Wait(200 + Random(200));
TypeByte(VK_BACK);
Wait(200 + Random(200));
if SMART then
SmartSendKeys(Copy(WordArr[i].OWord, DP, 1))
else
TypeByte(GetKeyCode(StrGet(WordArr[i].OWord, DP)));
Wait(200 + Random(200));
end;
end;
if Length(WordArr[i].NWord) = 0 then
Break;
if SMART then
SmartSendKeys(' ')
else
TypeByte(VK_SPACE);
end;
if SMART then
SmartSendKeys(chr(10))
else
TypeByte(GetKeyCode(chr(13)));
for l := 0 to 100 do
if WordArr[l].ChangeType = 2 then
if WordArr[l].OWord <> WordArr[l].NWord then
Begin
for i := 1 to Length(WordArr[l].OWord) do
Begin
if SMART then
SmartSendKeys(Copy(WordArr[i].OWord, i, 1))
else
TypeByte(GetKeyCode(StrGet(WordArr[l].OWord, i)));
Wait(100 + Random(100));
end;
if WordArr[l].OWord = '' then
Exit;
KeyDown(VK_SHIFT);
Wait(100 + Random(100));
if SMART then
SmartSendKeys('*')
else
TypeByte(GetKeyCode('8'));
Wait(200 + Random(200));
KeyUp(VK_SHIFT);
Wait(100 + Random(100));
if SMART then
SmartSendKeys(chr(10))
else
TypeByte(GetKeyCode(chr(13)));
Exit;
end;
end;
{END OF FR0ZON SOULS TYPESEND2 BACK ONTO MY SCRIPT}
/////////////////////////////////////////////////////////////////////
////////////////////////nicbaz load DTM's ///////////////////////////
/////////////////////////////////////////////////////////////////////
procedure LoadDTMs;
begin
BrokenAxe := DTMFromString('78DA636C616260E0636440061D697C601A26C' +
'AD80354C38FAA06260B57D30754C34D404D2F508D080135CD4035' +
'5C04D4D400D5A8E05703008C0604B4');
NormalAxe := DTMFromString('78DA63E4626060E067400175F17C609A11CA6' +
'7640312720C688011550D0B909025A0860748B01050230E245809' +
'A81105127C04D480E439F1AB01004CBC01C4');
FallyBank := DTMFromString('78DA63CC656060886440017B764E673007D28' +
'C40FC1F081813818C58881C1354CD9F3F10162394CF984A849A4C' +
'201183AAE6DF3F615435B998E660A82922C2AE32C26A006AEF17D' +
'7');
VarrokBank := DTMFromString('78DA63F4636060906100034608C5D0D258CDF' +
'00BCAFF0F048C1E408622448E09AAE6ED5B543D8CDE40420955CD' +
'9F3F4CA86AFC31CDC150138CA9E6DF3F615435E144D8154D580D0' +
'02B0C157D');
EdgeBank := DTMFromString('78DA632C626060D06500032608C590979EC6F' +
'00B483302F17F20602C04322C1850C0D7AF109A11CA672C001206' +
'A8E6FCF9C384A94603B71A100B00D3460EA0');
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Fix Screen ///////////////////////
/////////////////////////////////////////////////////////////////////
procedure FixScreen;
begin
MakeCompass('n');
Wait(200+random(100));
Setangle(true);
Wait(200+random(100));
MakeCompass('n');
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Is Axe Broken ////////////////////
/////////////////////////////////////////////////////////////////////
procedure Talk;
var
P: Integer;
begin
if (not(LoggedIn)) then
Exit;
p:=1+Random(35);
if (p=4) then
begin
case Random(36) of
0: TypeSend2('hi all', true);
1: TypeSend2('temple is near', true);
2: TypeSend2('hellooo', true);
3: TypeSend2('hay', true);
4: TypeSend2('heya', true);
5: TypeSend2('i hate those dam botters', true);
6: TypeSend2('boring', true);
7: TypeSend2('blaaaaahhh', true);
8: TypeSend2('cutting yews takes long', true);
9: TypeSend2('booooooooring', true);
10: TypeSend2('yay', true);
11: TypeSend2('ouch', true);
12: TypeSend2('ohhhh', true);
13: TypeSend2('blah.', true);
14: TypeSend2('quiet', true);
15: TypeSend2('bam', true);
16: TypeSend2('come down yew', true);
17: TypeSend2('meuahahah', true);
18: TypeSend2('bleh', true);
19: TypeSend2('yewwww', true);
20: TypeSend2('bagh', true);
21: TypeSend2('argh !', true);
22: TypeSend2('gree !', true);
23: TypeSend2('come down yew !', true);
24: TypeSend2('yew come here !', true);
25: TypeSend2('i mean it !', true);
26: TypeSend2('argh !', true);
27: TypeSend2('sozz !', true);
28: TypeSend2('muahahahahahaha i kill yews !', true);
29: TypeSend2('zzzz !', true);
30: TypeSend2('sleeps for mees !', true);
31: TypeSend2('i want to do this', true);
32: TypeSend2('i lovvvessss all you guys', true);
33: TypeSend2('i like sayig random stuff', true);
34: TypeSend2('yew tree die', true);
35: TypeSend2('lololol', true);
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////nicbaz Auto Responder ///////////////////////
/////////////////////////////////////////////////////////////////////
function AutoResponder:boolean; // // ty to Leek for help fix eerrors
var
talks:integer;
begin
if inchat('wc') or inchat('oodcutting')then
begin
case Random(5) of
0: typesend2('my wc lvl is 2 good to be tru', true);
1: typesend2('rofl choob i never give my wc lvl', true);
2: typesend2('m wc lvl is 9999', true);
3: typesend2('lol 99', true);
4: typesend2('wc 4 l3f2', true);
end;
Talks := Talks + 1;
Result := true;
gametab(4);
Exit;
end;
if (inchat('macro')) or (inchat('bot')) or (inchat('autoer'))then
begin
case Random(5) of
0: typesend2('macro rofl never', true);
1: typesend2('no way i anit', true);
2: typesend2('all bots should die', true);
3: typesend2('lol 99', true);
4: typesend2('wc 4 l3f2', true);
end;
Talks := Talks + 1;
Result := true;
exit;
end;
if (inchat('hey')) or (inchat('hi')) or (inchat('yo'))then
begin
case Random(11) of
0: typesend2('yoooo wasssupppppppp', true);
1: typesend2('hi', true);
2: typesend2('hey', true);
3: typesend2('yo', true);
4: typesend2('yer', true);
5: typesend2('what', true);
6: typesend2('hiiies', true);
7: typesend2('yoooooo', true);
8: typesend2('lol yer hi', true);
9: typesend2('noob', true);
10: typesend2('hey', true);
end;
Talks := Talks + 1;
Result := true;
exit;
end;
if (inchat('auto')) or (inchat('talk')) or (inchat('noob'))then
begin
case Random(5) of
0: typesend2('im not a noob i dont have to talk go away', true);
1: typesend2('lol noob i dont auto', true);
2: typesend2('rolf never', true);
3: typesend2('fr00b', true);
4: typesend2('im never talking to you f00b', true);
end;
Talks := Talks + 1;
Result := true;
exit;
end;
if (inchat('nice')) or (inchat('rich')) or (inchat('good'))then
begin
case Random(5) of
0: typesend2('ty ur nice 2', true);
1: typesend2('i am rich so i dont talk to noobs', true);
2: typesend2('rolf never', true);
3: typesend2('i am good rich guy', true);
4: typesend2('yyoyo its nice being richss', true);
end;
Talks := Talks + 1;
Result := true;
exit;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////nicbaz LevelsGained /////////////////////////
/////////////////////////////////////////////////////////////////////
function HandleContinue:boolean;
var
xx, yy:integer;
begin
if (FindText(xx, yy, 'ained', NPCChars, 0, 340, 500, 460))
or (IsChatBlackTextAnyLine('ained')) then
begin
LevelsGained := LevelsGained + 1;
result := true;
end else
result := false;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////nicbaz Walk To Bank /////////////////////////
/////////////////////////////////////////////////////////////////////
procedure WalkTobank;
begin
MakeCompass('S');
RoadColor := FindVarrockRoadColor;
if (findSymbol(x, y, 'tree')) then
begin
mouse(x, y, 2, 2, true);
FFlag(2);
if not RadialWalk(RoadColor, 355, 25, 65, 4, 4)
then
RadialWalk(RoadColor, 355, 27, 65, 4, 4);
Writeln('Walking To bank')
if not RadialWalk(RoadColor, 359, 27, 72, 4, 4)
then
RadialWalk(RoadColor, 355, 33, 72, 4, 4);
Writeln('Walking To bank')
if not RadialWalk(RoadColor, 345, 15, 60, 4, 4)
then
RadialWalk(RoadColor, 345, 13, 60, 4, 4);
Writeln('Walking To bank')
if (findSymbol(x, y, 'bank')) then
begin
mouse(x, y, 2, 2, true);
FFlag(2);
if not (findSymbol(x, y, 'bank')) then
begin
MakeCompass('s');
wait(1000);
if DTMRotated(VarrokBank, x, y, MMX1, MMY1, MMX2, MMY2) then
begin
Writeln ('found bank dtm');
wait(1000)
Mouse(x - 6, y - 6, 12, 2, true);
FFlag(0)
if not DTMRotated(VarrokBank, x, y, MMX1, MMY1, MMX2, MMY2) then
Writeln ('did not find bank');
NextPlayer(False);
end;
end;
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz AntiBan //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure AntiBans;
begin
if(not(LoggedIn))then
Exit;
case Random(16) of
0: begin
HoverSkill('Mining', false);
wait(1000+random(1000));
GameTab(4);
end;
1: begin
HoverSkill('Woodcutting', false);
wait(1000+random(1000));
GameTab(4);
end;
2: begin
HoverSkill('Smithing', false);
wait(4000+random(550));
GameTab(4);
end;
3: PickUpMouse;
4: MouseBox(MMX1,MMY1,MMX2,MMY2,3);
5: SleepAndMoveMouse(5000+random(6000));
6: begin
GameTab(2 + Random(12));
wait(2000+random(1500));
GameTab(4);
end;
7: begin
GameTab(6 + Random(12));
wait(1500+random(700));
GameTab(4);
end;
8: begin
HoverSkill('Defene', false);
wait(4000+random(550));
GameTab(4);
end;
9: begin
RandomRClick;
wait(1000)
end;
10: begin
BoredHuman;
wait(2000+random (333));
end;
11: begin
PickUpMouse;
end;
12: begin
RandomMovement;
wait(2000+random (333));
end;
13: begin
case (Random(6))of
1: MakeCompass('S');
2: MakeCompass('N');
3: MakeCompass('W');
4: MakeCompass('E');
end;
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz randoms //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure Randoms;
begin
FindTalk;
FindNormalRandoms;
FindLamp('Woodcutting');
FindEnt(x, y, true);
SolvePinball;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz CheckAxe /////////////////////////
/////////////////////////////////////////////////////////////////////
procedure CheckAxe;
begin
if FindAxe then
begin
Writeln('Axe Found')
end
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Check Versions ///////////////////
/////////////////////////////////////////////////////////////////////
function CheckVersions:boolean; // ty to Leek for help fix eerrors
begin
result:=false;
if (SRLVersionNumber < 15) then
begin
WriteLn('Wrong SRL Version; Download the latest update at http://www.sr'
+ 'l-forums.com/');
TerminateScript;
end;
if (GetScarVersion < 314) then
begin
WriteLn('Wrong SCAR Version; Download the latest update at http://www.fr'
+ 'eddy1990.com/');
TerminateScript;
end;
if (SRLVersionNumber = 15) and (GetScarVersion = 315) then
result:=true;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Talk//////////////////////////////
/////////////////////////////////////////////////////////////////////
procedure TalkLots;
begin
if(not(LoggedIn))then
Exit;
case Random(2) of
0: talk;
2:AutoResponder
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Ent//// //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure EntFinder; //By Yohojo - edited by bobbohobbo
var
EX, EY: integer;
FX, FY: integer;
SafeEntWait: LongInt;
begin
if (not (LoggedIn)) then
Exit;
begin
Status('Ent Checking')
if
(FindObjCustom(EX, EY, ['Yew'], [4690821], 7)) then
begin
MMouse(EX, EY, 0, 0)
if FindColorTolerance(FX, FY, 55769, 85, 15, 115, 15, 20) then
begin
Status('Found Ent');
MarkTime(SafeEntWait)
repeat
FTWait(5)
FindNormalRandoms;
if not (LoggedIn) then
NextPlayer(False);
until TimeFromMark(SafeEntWait) > 20000 + Random(5000);
end;
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////Naum/Torrent// //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure WaitWhilstChopping; //Credits to numan and torrent for this
var
CuttingMark : Integer;
begin
MarkTime(CuttingMark);
repeat
AntiBans;
Randoms;
CheckAxe;
EntFinder;
AntiBans;
until (FindBlackChatMessage('cut some logs')) or (TimeFromMark(CuttingMark) > (200000));
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz FindDaYewTree/////////////////////
/////////////////////////////////////////////////////////////////////
function FindDaYewTree: boolean; // with help from torrent of flame
var
YewTreeTPA: TPointArray;
I: Integer;
YewTreeColors : array [0..3] of integer;
begin
YewTreeColors[0] := 2380107;
YewTreeColors[1] := 1328698;
YewTreeColors[2] := 3239782;
YewTreeColors[3] := 1520426;
YewTreeColors[4] := 2044980;
for i := 0 to 4 do
FindColorsSpiralTolerance(X, Y, YewTreeTPA, YewTreeColors[i], MSX1, MSY1, MSX2, MSY2,45);
begin
MMouse(YewTreeTPA[i].x, YewTreeTPA[i].y, 3, 3);
wait(78)
if IsUptext('hop')
then
begin
Result:= True;
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz ChooseColor///////////////////////
/////////////////////////////////////////////////////////////////////
function PickYewColour: Integer; // ty jesus for help
begin
case random(4) of
0: Result := 3297356;
1: Result := 3898223;
2: Result := 534303;
3: Result := 534046;
4: Result := 4218718;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz banking //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure Banking;
begin
Yew := DTMFromString('78DA6394616060E0674001A10E5C0C5C409A1' +
'188FF0301A3169021C4800618914820AD0A243808A8910312AC04' +
'D480EC6127A006E45E09026AE48184247E3500B4EB05E9');
begin
Wait(300 + random(160));
OpenBankQuiet('sb');
if (not (FindDTM(Yew, x, y, mix1, miy1, mix2, miy2))) then
begin
if (FindColorSpiralTolerance(x, y, 608352, mix1, miy1, mix2, miy2, 15)) then
begin
Mouse(x, y, 4, 3, false);
ChooseOption('All');
Loads := Loads + 1;
end;
end else
if (FindDTM(Yew, x, y, mix1, miy1, mix2, miy2)) then
begin
Mouse(x, y, 4, 3, false);
ChooseOption('All');
Loads := Loads + 1;
end;
CloseBank;
Wait(150 + random(278));
MakeCompass('S');
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz To Tress /////////////////////////
/////////////////////////////////////////////////////////////////////
procedure WalkTrees;
begin
MakeCompass('N');
RoadColor := FindVarrockRoadColor;
if not RadialWalk(RoadColor, 350, 10, 65, 4, 4)
then
RadialWalk(RoadColor, 345, 5, 65, 4, 4);
FFlag(2);
if FindSymbol(x, y, 'water') then
begin
if not RadialWalk(RoadColor, 0, 25, 69, 4, 4)
then
RadialWalk(RoadColor, 0, 35, 69, 4, 4);
Writeln('Walkig step 2')
FFlag(2);
if not RadialWalk(RoadColor, 0, 18, 75, 4, 4)
then
RadialWalk(RoadColor, 350, 25, 70, 4, 4);
Writeln('Walking To Tree')
FFlag(2);
if (findSymbol(x, y, 'tree'))
then
begin
mouse(x, y, 2, 2, true);
FFlag(2);
if not FindSymbol(x, y, 'tree')
then
Writeln ('did not find Trees');
NextPlayer(False);
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Is Axe Broken ////////////////////
/////////////////////////////////////////////////////////////////////
function IsAxeBroken: boolean;
begin
if FindDTM(BrokenAxe, x, y, 547, 206, 734, 464) then
Writeln('Axe is broken! Attempting to bank and get new one.');
BrokenAxes := BrokenAxes + 1;
WalkTobank;
begin
Writeln('Banking for new axe..');
Banking;
if (FindDTM(NormalAxe, x, y, 151, 210, 595, 281)) then
begin
ChooseOption('1')
CheckAxe;
CloseBank;
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz ChooseClick //////////////////////
/////////////////////////////////////////////////////////////////////
function ChooseClick: Integer; // jesus for help TY
begin
case random(2) of
0: begin
Mouse(x, y, 3, 3, true);
end;
1: begin
Mouse(x, y, 4, 4, false);
ChooseOption('hop');
end;
end;
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz ChopYew //////////////////////////
/////////////////////////////////////////////////////////////////////
procedure ChopYew;
var Attempts: integer;
CuttingTime: integer;
begin
if (not (LoggedIn)) then NextPlayer(false);
MarkTime(CuttingTime);
SetAngle(true);
repeat
if (not (FindDaYewTree)) then
begin
Wait(2000 + random(250));
Attempts := Attempts + 1;
if (Attempts = 100) then
begin
Writeln('Could not find yews');
Attempts := 0;
NextPlayer(false);
Wait(1500 + random(1200));
end;
end else
begin
if FindDaYewTree then
begin
ChooseClick;
WaitWhilstChopping;
end;
begin
Randoms;
Antibans;
EntFinder;
FindEnt(x, y, True);
end;
end;
until (TimeFromMark(CuttingTime) > 800000 + random(60000)) or (InvFull)
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Nicbaz ///////////////////////////
/////////////////////////////////////////////////////////////////////
procedure text;
begin
ClearDebug;
Writeln(' _______ .__ ___. ')
wait(250 + random(30));
Writeln(' \ \ |__| ____\_ |__ _____ ________')
wait(250 + random(30));
Writeln(' / | \| |/ ___\| __ \\__ \ \___ /')
wait(250 + random(30));
Writeln('/ | \ \ \___| \_\ \/ __ \_/ / ')
wait(250 + random(30));
Writeln('\____|__ /__|\___ >___ (____ /_____ \')
wait(250 + random(30));
Writeln(' \/ \/ \/ \/ \/')
wait(2000)
Writeln(' _____.___. __________ ')
wait(250 + random(30));
Writeln(' \__ | | ______ _ __ \______ \______ _ __ ___________')
wait(250 + random(30));
Writeln(' / | |/ __ \ \/ \/ / | ___/ _ \ \/ \/ // __ \_ __ \')
wait(250 + random(30));
Writeln(' \____ \ ___/\ / | | ( <_> ) /\ ___/| | \/')
wait(250 + random(30));
Writeln(' / ______|\___ >\/\_/ |____| \____/ \/\_/ \___ >__| ')
wait(250 + random(30));
Writeln(' \/ \/ \/ ')
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////nicbaz Anti Leech////////////////////////
/////////////////////////////////////////////////////////////////////
procedure DieLeech;
begin
if (SRLID = '') or (SRLPassword = '')then
begin
Wait(1000+Random(400));
ClearDebug;
Writeln('YOU ARE A LEACHER');
wait (1000)
Writeln('So Go Get Your Self a SRL ID and PAss');
wait(1000)
Writeln('If you dont do that you the script will not run');
Wait(1000)
Writeln('www.srl-forums.com');
wait(1000)
Writeln('Go kill your SELF!!!!!');
Wait(1000)
Writeln('NICBAZZZZ');
TerminateScript;
end;
end;
/////////////////////////////////////////////////////////////////////////
///////////////////////////nicbaz Proggy/////////////////////////////////
/////////////////////////////////////////////////////////////////////////
procedure Proggy;
begin
ClearDebug;
Writeln(',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,');
Writeln('/\Please Post Progress Reports & Any problems /\ ');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\Worked For: ' + TimeRunning + ' //\\');
Writeln('//\\Did: ' + IntToStr(Loads) + ' Loads //\\');
Writeln('//\\Broke: ' + IntToStr(BrokenAxes) + ' Axes //\\');
Writeln('//\\Talked: ' + IntToStr (Talks) + 'To //\\');
Writeln('//\\Levels: ' + IntToStr (LevelsGained) + 'Gained levels //\\');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\ Thanks for Using my Script :D //\\ ');
Writeln('```````````````````````````````````````````````');
end;
/////////////////////////////////////////////////////////////////////
////////////////////////////Mainloop/////////////////////////////////
/////////////////////////////////////////////////////////////////////
procedure Setup;
begin
SetupSRL;
SRLId := YourSRLId;
SRLPassword:= YourSRLPassword;
CheckVersions;
DieLeech;
text;
SmartSetupEx(SMARTWorld, false, true);
SetTargetDC(SmartGetDC);
while not SmartReady do Wait(2000);
DeclarePlayers;
LoginPLayer;
end;
begin
Setup;
LoadDTMs;
CheckAxe;
Wait(900 + Random(333));
repeat
WalkTrees;
ChopYew;
WalkTobank;
Banking;
if (Loads = Players[CurrentPlayer].Integers[0]) then
begin
NextPlayer(True);
Loads := 0;
MakeCompass('S')
Writeln('Players Switched successfully')
end;
Proggy;
until (False);
end.
/////////////////////////////////////////////////////////////////////////
//Thank you for useing my script! //
//Credits to //
//Torrent Of Flame For Lots of Help! //
//Jesus For lots of help! //
//And Da Owner for lots of help! //
///////////////////////////////////////////////////////////////////////
//