MrMoon
2007-04-30 19:17:08
<!– BEGIN TEMPLATE: formanswers –>
MrMoon - SRL Member Application Form
MrMoon
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Html
Other Communitys
http://www.kaitnieks.com/
How Long have You Played Runescape
3 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Hi, my name is MrMoon on online communities. I started playing RuneScape around 3 years ago. I enjoy playing it, I've used SCAR when Kaitnieks was around, that was a great forum. I practiced using SCAR, and have gotten a lot better. I've been making quite a few scripts when I was on kaitnieks. For private use though. I'm 17 years old now, and have decided to come back. I still had SCAR 2.03 on my computer and opened it, which gave me a link to Freddy1990's Forums. Which I found a link to here and decided to use it. I made a "all-in-one" Woodcutter script. I tried to update it the best as I can. It compiles fine, works. Just walking need to be improved for maple banking but I will fix that in about a week, when my money comes in for membership, so I can start testing this script to be better for the future. I personally think it's a great script, and I love the fact that a new SCAR version came out thanks to Freddy. I'm going to check out what's new on it, love the tabs in the picture on his site =). Hopefully this script is good enough for you, I'm sure I can pull in some more scripts, I just have to update. I've noticed RuneScape updated quite a lot. I also do give respect to Jagex, and everyone on this forum. I was just reading around, and have seen quite a lot of nice scripts. I hope to be a very helpful person here and help people improve their scripts. If you need any help please ask me.
-MrMoon
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
MrMoon - SRL Member Application Form
MrMoon
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Html
Other Communitys
http://www.kaitnieks.com/
How Long have You Played Runescape
3 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Hi, my name is MrMoon on online communities. I started playing RuneScape around 3 years ago. I enjoy playing it, I've used SCAR when Kaitnieks was around, that was a great forum. I practiced using SCAR, and have gotten a lot better. I've been making quite a few scripts when I was on kaitnieks. For private use though. I'm 17 years old now, and have decided to come back. I still had SCAR 2.03 on my computer and opened it, which gave me a link to Freddy1990's Forums. Which I found a link to here and decided to use it. I made a "all-in-one" Woodcutter script. I tried to update it the best as I can. It compiles fine, works. Just walking need to be improved for maple banking but I will fix that in about a week, when my money comes in for membership, so I can start testing this script to be better for the future. I personally think it's a great script, and I love the fact that a new SCAR version came out thanks to Freddy. I'm going to check out what's new on it, love the tabs in the picture on his site =). Hopefully this script is good enough for you, I'm sure I can pull in some more scripts, I just have to update. I've noticed RuneScape updated quite a lot. I also do give respect to Jagex, and everyone on this forum. I was just reading around, and have seen quite a lot of nice scripts. I hope to be a very helpful person here and help people improve their scripts. If you need any help please ask me.
-MrMoon
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
program MrMoonsUberWoodcutterBanker;
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/WoodCutting.scar}
{.include SRL/SRL/Misc/Playerform.scar}
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////|
// Miscelaneous Settings //|
////////////////////////////////|
Const Tripstotake = 10; //| How many trips do you want per player?
Const ScriptTolerance = 3; //| Color Finding Tolerance.
Const BankColorMM = 5161184; //| Make sure you change everytime you hop worlds.
Const TreeTimeout = 5000; //| Just incase my tree detection methods don't work =]
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
{
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|----------------------------------|
| I Am NOT At Fault For Banned |
| Accounts. |
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| VERSION HISTORY |
| |
|VERSION 0.01 |
| Updated for latest RuneScape |
|Plans for next Version: |
| Updating Maple Walk. |
| Tweak Waittime. |
| Add Auto-Responder! |
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | }
//////////////////////////////|
//////////////////////////////| //DONT CHANGE ANYTHING BELOW THIS LINE
// Tree/Oak Colors //|
//////////////////////////////|
Const TreeColor1 = 2580560; //|
Const TreeColor2 = 1925200; //|
Const TreeColor3 = 3170392; //|
Const TreeColor4 = 1127468; //|
Const TreeColor5 = 989208; //|
Const WillowColor1=3174496; //|
Const WillowColor2=2185288; //|
Const MapleColor1 =12392; //|
Const MapleColor2 =12400; //|
//////////////////////////////|
//////////////////////////////|
// Coordinates Around Char //|
// To Search For Trees //|
//////////////////////////////|
Const MSCX1 = 197; //|
Const MSCY1 = 100; //|
Const MSCX2 = 310; //|
Const MSCY2 = 203; //|
//////////////////////////////|
//////////////////////////////|
// Coordinates Around Char //|
// To Search For Trees //|
//////////////////////////////|
Const MSBX1 = 134; //|
Const MSBY1 = 82; //|
Const MSBX2 = 435; //|
Const MSBY2 = 251; //|
//////////////////////////////|
//----------------------------------------------------------------------------\\
Const VersionNumber = '0.01';
//----------------------------------------------------------------------------\\
Var xax,yay,xbx,yby:integer;
Var Z,TTrips,Trips:integer;
Var Rocks:integer;
Var EntsAvoided2:integer;
Var TreeAtempts,CallibrateAtempts:integer;
var SST1, SST2, TT1, FindNorMalRandomsTime, FindFastRandomsTime: LongInt;
var axecolor:integer;
var axecolor1,axecolor2:integer;
//----------------------------------------------------------------------------\\
Procedure GettehAxeColors;
begin
axecolor1 := getcolor(588,219);
axecolor2 := Getcolor(590,221);
end;
//----------------------------------------------------------------------------\\
Function DetectAxeMS:boolean;
begin
if(findcolortolerance(xax,yay,axecolor1,MMX1,MMY1,MMX2,MMY2,12) or findcolortolerance(xax,yay,axecolor2,MMX1,MMY1,MMX2,MMY2,12) or findcolortolerance(xax,yay,axecolor,MMX1,MMY1,MMX2,MMY2,12))then
begin
Result := True;
end
else
Begin
Result := False;
end;
end;
//----------------------------------------------------------------------------\\
Function BankLost:Boolean;
var v:integer;
begin
v := V+1;
if v > 12 then
begin
if(wearedead)then exit;
Logout;
Players[CurrentPlayer].Loc := 'Lost';
Players[CurrentPlayer].Active := False;
Result := True;
V := 0;
end
else
begin
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Procedure Lost;
begin
Logout;
Players[CurrentPlayer].Loc := 'Lost';
Players[CurrentPlayer].Active := False;
TreeAtempts := 0;
CallibrateAtempts:= 0;
end;
//----------------------------------------------------------------------------\\
Function CheckEnt:Boolean;
begin
wait(10)
if(not(isuptextmulti('Tree','Oak','Willow')) or not(isuptextmulti('ree','Maple','illow')))then Exit;
if(findcolortolerance(xax,yay,584426,0,0,265,34,5))and (isuptextmulti('Tree','Oak','Willow') or isuptextmulti('Maple','ree','illow'))then
begin
Writeln('EntFound!!!');
wait(10);
mouse(665,82,5,5,True);
EntsAvoided2:= EntsAvoided2 +1;
wait(1000);
Result :=True;
end
else
begin
Result := False;
end;
end;
function MyFindEnt: Boolean;
var
i : Integer;
begin
if(Option2('Chop'))then
begin
if(FindColorTolerance(x, y, 383705, 9, 9, 233, 24, 20))or
(FindColorTolerance(x, y, 65535, 9, 9, 233, 24, 20))then
begin
for i := 1 to 2 do
begin
Mouse(648, 83, 1, 1, True)
Flag;
end;
WriteLn('Found ent! Waiting for it to go away');
Wait(1000 + random(5000));
Result := True;
EntsAvoided := EntsAvoided + 1;
end;
end;
end;
//----------------------------------------------------------------------------\\
Function WeAreLost:Boolean;
begin
Wait(10)
TreeAtempts := TreeAtempts + 1;
if(TreeAtempts > 29)then
begin
Logout;
Players[CurrentPlayer].Loc := 'Lost';
Players[CurrentPlayer].Active := False;
Result := True;
TreeAtempts := 0;
end
else
begin
Result := False;
end;
end;
FUnction HarpOpenBank:Boolean;
var dtm:integer;
begin
DTM := DTMFromString('78DA635CC4C0C010C28002263524327002694' +
'620FE0F040040F20671');
if(finddtm(DTM,xax,yay,MSX1,MSY1,MSX2,MSY2))then
mmouse(xax,yay,0,0)
if(isuptextmulti('Bank bo','ank ooth','Bank booth'))then
begin
mouse(xax,yay,0,0,False);
if(chooseoption(xax,yay,'Use-quickly'))then
begin
Result := True;
end
end
else
begin
Result := False;
end;
end;
//----------------------------------------------------------------------------\\
Function Bankit:Boolean;
begin
Repeat
if(wearedead or not(loggedin))then Exit;
wait(10);
wait(10);
OpenBank3;
Until(BankScreen = True);
Deposit(2,28,2)
Result := True;
end;
Procedure RandomMouseMove;
var p:integer;
begin
p := random(25);
if P = 10 then
begin
mmouse(1+random(545),1+random(545),5,5)
mmouse(1+random(545),1+random(545),5,5)
mmouse(1+random(545),1+random(545),5,5)
mmouse(xbx,yby,0,0)
end;
end;
procedure harphover;
begin
HoverEvery(15 + Random(5),'Woodcutting');
gametab(4)
mmouse(xbx,yby,0,0)
end;
Procedure MyAntiBan;
var
DontBanMe : Integer;
begin
if ( not ( LoggedIn )) then Exit;
DontBanMe:= Random(12);
case DontBanMe of
1: RandomRClickEvery(2 + Random(10));
2: RandomMouseMove;
3: RandomChatEvery(10 + Random(5));
6: HarpHover;
8: PickUpMouse;
9: BoredEvery(9 + Random(14));
end;
end;
//----------------------------------------------------------------------------//
Function FindWcRandoms: Boolean;
var
i: Integer;
begin
for i:=2 to 2 do
begin
case I of
2: if checkent then
Result := True;
end;
end;
end;
//----------------------------------------------------------------------------//
Function FindFastRandoms: Boolean;
var
i: Integer;
begin
for i:=1 to 7 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;
7: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
8: RC;
end;
wait(1);
end;
end;
Function Ent: Boolean;
Begin
If(FindColorSpiralTolerance(x, y, 1516580, MSX1, MSY1, MSX2, MSY2, 10))then
MMouse(x, y, 0, 0);
If(IsUpText('Chop')) or (IsUpText('op dow')) or (IsUpText('down'))then
Begin
If(FindColorSpiralTolerance(x, y, 383705, 1, 1, 180, 39, 20))or
(FindColorSpiralTolerance(x, y, 65535, 1, 1, 200, 40, 20))then
Begin
Result:= True;
EntsAvoided:=EntsAvoided + 1;
EntsAvoided2:= Entsavoided2 + 1;
WriteLn('Ent found, waiting');
Mouse(648, 83, 1, 1, True);
Wait(5000+Random(2000));
End else
Result:= False;
Exit;
End;
End;
Function CheckFight:boolean;
begin
if findfight then
begin
mouse(716,89,2,2,True);
SetRun(True);
Writeln('Found Fight... Waiting lol....')
wait(3000);
flag;
SetRun(False);
Mouse(579,103,2,2,True);
wait(1000);
flag;
Result := True;
end
end;
//----------------------------------------------------------------------------//
procedure CheckRandoms ( Time : Integer );
var T, I : integer;
begin
if(wearedead or not(loggedin))then Exit;
try
T := (Time div 1000)+1;
for I := 1 to T do
begin
Wait ( 250 );
FindTalk;
//Ent;
wait(100);
end
except
begin
Wait ( Time );
FindTalk;
FindEnt(1580056);
wait(10)
end;
end;
WAIT(10)
FindFastRandoms;
MarkTime(FindNorMalRandomsTime);
wait(10)
if FindNorMalRandomsTime-SST1 >(10000+Random(5000)) then
begin
Status('FindNorMalRandoms.');
FindNorMalRandoms;
wait(100)
MarkTime(SST1);
Status('FindNorMalRandoms took:'+IntToStr(SST1-FindNorMalRandomsTime)+' msec');
end;
MarkTime(FindFastRandomsTime);
if FindFastRandomsTime-SST2 >(1500+Random(1500)) then
begin
Status('FindFastRandoms.');
FindFastRandoms;
wait(100)
FindWcRandoms;
wait(100)
if(CheckFight)then wait(10);
wait(100);
MarkTime(SST2);
Status('FindFastRandoms took:'+IntToStr(SST2-FindFastRandomsTime)+' msec');
myantiban;
end;
end;
Function WeAreLostCallibrate:Boolean;
begin
if(wearedead or not(loggedin))then Exit;
wait(10)
CallibrateAtempts := CallibrateAtempts + 1;
if(TreeAtempts > 29)then
begin
Logout;
Players[CurrentPlayer].Loc := 'Lost';
Players[CurrentPlayer].Active := False;
Result := True;
CallibrateAtempts := 0;
end
else
begin
Result := False;
end;
end;
//----------------------------------------------------------------------------\\
Procedure Callibrate;
begin
if(TreeAtempts >5)then
begin
repeat
Rocks := DTMFromString('78DA639CC5C4C090C080023C3D7DC03423940' +
'F002E4101DD');
if(WeAreLostCallibrate)then break;
Until(finddtm(Rocks,xax,yay,630,11,688,133))
if(Not(LoggedIn))Then Exit;
mouse(xax-10,yay-40,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure CallibrateOak;
begin
if(TreeAtempts >3)then
begin
repeat
if(WeAreLostCallibrate)then break;
Until(findColorTolerance(xax,yay,14512730,MMX1,MMY1,MMX2,MMY2,12))
if(Not(LoggedIn))Then Exit;
mouse(xax,yay-30,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure CallibrateOak2;
begin
if(TreeAtempts >3)then
begin
repeat
if(WeAreLostCallibrate)then break;
Until(findColorTolerance(xax,yay,949004,MMX1,MMY1,MMX2,MMY2,12))
if(Not(LoggedIn))Then Exit;
mouse(xax+50,yay,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure CallibrateOaksTree;
begin
if(TreeAtempts >3)then
begin
repeat
if(WeAreLostCallibrate)then break;
Until(findColorTolerance(xax,yay,11877666,MMX1,MMY1,MMX2,MMY2,12))
if(Not(LoggedIn))Then Exit;
mouse(xax+45,yay,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure CallibrateWillows;
begin
if(TreeAtempts >10)then
begin
repeat
if(WeAreLostCallibrate)then break;
Until(findColorTolerance(xax,yay,11536897,MMX1,MMY1,MMX2,MMY2,12))
if(Not(LoggedIn))Then Exit;
mouse(xax+5,yay-30,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure CallibrateMaple;
begin
if(TreeAtempts >10)then
begin
repeat
if(WeAreLostCallibrate)then break;
Until(findColorTolerance(xax,yay,1348368,MMX1,MMY1,MMX2,MMY2,12))
if(Not(LoggedIn))Then Exit;
mouse(xax,yay,3,3,True);
Writeln('Callibrated!');
end;
end;
//----------------------------------------------------------------------------\\
Procedure WalkToBankWillow;
begin
if(Not(LoggedIn))Then Exit;
PerfectNorth;
SetRun(True)
repeat
wait(100)
If(BankLost)then Break;
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(not(Loggedin))then Exit;
Mouse(xax,yay+10,0,0,True);
wait(3000);
flag;
CheckRandoms(10)
end
end;
//----------------------------------------------------------------------------\\
Procedure WalkToBankMaple;
begin
if(Not(LoggedIn))Then Exit;
PerfectNorth;
SetRun(True)
repeat
wait(10)
If(BankLost)then Break;
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(not(Loggedin))then Exit;
Mouse(xax,yay+10,0,0,True);
wait(3000);
flag;
CheckRandoms(10)
end
end;
//----------------------------------------------------------------------------\\
Procedure WalkToBank;
begin
PerfectNorth;
SetRun(True)
Mouse(648,157,3,3,True);
flag;
CheckRandoms(10)
Mouse(580,108,3,3,True);
wait(3000);
flag;
repeat
wait(20)
if(Banklost)then Break
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(Not(Loggedin))then Exit;
Mouse(xax,yay+10,0,0,True);
wait(3000);
flag;
end
end;
//----------------------------------------------------------------------------\\
Procedure OakToBank;
begin
PerfectNorth;
SetRun(True)
Mouse(613,46,3,3,True);
wait(3000)
flag;
Mouse(582,83,3,3,True);
wait(3000)
flag;
CheckRandoms(10)
repeat
wait(20)
if(banklost)then break;
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(not(loggedin))then exit;
Mouse(xax,yay+10,0,0,True);
wait(3000)
flag;
end
end;
//----------------------------------------------------------------------------\\
Procedure OakTreesToBank;
begin
PerfectNorth;
SetRun(True)
Mouse(679,28,3,3,True);
wait(3000)
flag;
CheckRandoms(10)
Mouse(676,34,3,3,True);
wait(3000)
flag;
repeat
wait(20)
if(Banklost)then break;
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(not(loggedin))then exit;
Mouse(xax,yay+10,0,0,True);
wait(3000)
flag;
end
end;
//----------------------------------------------------------------------------\\
Procedure Oak2TreesToBank;
begin
if(Not(LoggedIn))Then Exit;
PerfectNorth;
SetRun(True)
if(findcolortolerance(xax,yay,96257,MMX1,MMY1,MMX2,MMY2,42))then
begin
mouse(xax,yay,0,0,True);
wait(3000)
flag;
Mouse(591,84,3,3,True);
wait(3000)
flag;
Mouse(581,103,3,3,True);
wait(3000)
flag;
CheckRandoms(10)
Mouse(630,17,3,3,True);
wait(3000)
flag;
Mouse(644,12,3,3,True);
wait(3000)
flag;
repeat
wait(20)
if(banklost)then break;
Until(findcolortolerance(xax,yay,BankColorMM,MMX1,MMY1,MMX2,MMY2,40))
begin
if(Not(loggedin))then Exit;
Mouse(xax,yay+10,0,0,True);
wait(3000)
flag;
end
end;
end;
//----------------------------------------------------------------------------\\
Procedure Banktotrees;
begin
mouse(710,56,3,3,True);
wait(3000)
flag;
Mouse(685,27,3,3,True);
CheckRandoms(10)
wait(3000)
flag;
Mouse(655,50,3,3,True);
wait(3000)
flag;
Setrun(False)
gametab(4)
end;
//----------------------------------------------------------------------------\\
Procedure BanktoOaks;
begin
mouse(706,49,3,3,True);
wait(3000)
flag;
Mouse(701,120,3,3,True);
wait(3000)
CheckRandoms(10)
Setrun(False)
gametab(4)
end;
//----------------------------------------------------------------------------\\
Procedure BanktoOaksTrees;
begin
mouse(604,119,3,3,True);
wait(3000)
flag;
Mouse(619,137,3,3,True);
wait(3000)
CheckRandoms(10)
flag;
Setrun(False)
gametab(4)
end;
//----------------------------------------------------------------------------\\
Procedure BankToWillows;
begin
wait(10)
mouse(639,124,3,3,True)
wait(500);
flag;
SetRun(False);
gametab(4)
end;
//----------------------------------------------------------------------------\\
Procedure BankToMaple;
begin
repeat
wait(10)
Lost;
Until(findcolortolerance(xax,yay,882960,MMX1,MMY1,MMX2,MMy2,42))
begin
mouse(Xax,yay,3,3,True)
wait(500);
flag;
SetRun(False);
gametab(4)
end;
end;
//----------------------------------------------------------------------------\\
Procedure BanktoOak2;
begin
if(Not(LoggedIn))Then Exit;
mouse(623, 135,3,3,True);
wait(3000)
flag;
Mouse(647, 155,3,3,True);
wait(3000)
CheckRandoms(10)
flag;
Mouse(662, 136,3,3,True);
wait(3000)
flag;
Mouse(707, 53,3,3,True);
wait(3000)
flag;
Mouse(711, 68,3,3,True);
wait(3000)
flag;
Mouse(715,78,3,3,True);
wait(3000)
flag;
Mouse(681, 81,3,3,True);
wait(3000)
flag;
Setrun(False)
CallibrateOak2;
gametab(4)
end;
//----------------------------------------------------------------------------\\
Procedure BrokenToBank;
var axemask:integer;
begin
if(wearedead or not(loggedin))then Exit;
if(Players[Currentplayer].loc = 'Trees') Then WalkToBank;
if(Players[CUrrentplayer].loc = 'Oaks') then Oaktobank;
if(Players[CUrrentplayer].loc = 'OaksTree') then OakTreestobank;
if(Players[CUrrentplayer].loc = 'Oaks2') then Oak2treestobank;
if(Players[CUrrentplayer].loc = 'Willows') then walktobankwillow;
if(Players[CUrrentplayer].loc = 'Maple') then walktobankmaple;
repeat
wait(10)
OpenBank3;
until(Bankscreen = true);
Deposit(1,28,2)
AxeMask := BitmapFromString(23, 29, 'z78DAED56C1110020085AC' +
'929DA7FA426F04E03392FE59D86909AD902C571A0E7906558C19C' +
'5B3B92CD8B7DCBA98C5232A9501861F2F626B34C22FD82DC829FC' +
'4AB666982D4A2F12532F73AF44B873956B75FE6A8D1DF97996AAC' +
'2FCB44B3A7D6975F7D61FD1F58B83EA416C6');
if(findbitmapmasktolerance(AxeMask,xax,yay,MSX1,MSY1,MSX2,MSY2,1,1))then
begin
Mouse(xax,yay,0,0,True);
if(Players[Currentplayer].loc = 'Trees') Then banktotrees;
if(Players[CUrrentplayer].loc = 'Oaks') then banktooaks;
if(Players[CUrrentplayer].loc = 'OaksTree') then banktooakstrees;
if(Players[CUrrentplayer].loc = 'Oaks2') then banktooak2;
if(Players[CUrrentplayer].loc = 'Willows') then banktowillows;
if(Players[CUrrentplayer].loc = 'Maple') then Banktomaple;
gametab(4)
Axecolor := GetColor(589,220);
end
else
begin
Lost;
end;
end;
//----------------------------------------------------------------------------\\
//----------------------------------------------------------------------------\\
Procedure LostAxeCheck;
var AxeMask:Integer;
begin
if(wearedead or not(loggedin))then Exit;
wait(10)
AxeMask := BitmapFromString(23, 29, 'z78DAED56C1110020085AC' +
'929DA7FA426F04E03392FE59D86909AD902C571A0E7906558C19C' +
'5B3B92CD8B7DCBA98C5232A9501861F2F626B34C22FD82DC829FC' +
'4AB666982D4A2F12532F73AF44B873956B75FE6A8D1DF97996AAC' +
'2FCB44B3A7D6975F7D61FD1F58B83EA416C6');
gametab(4)
if(findbitmapmasktolerance(AxeMask,xax,yay,MIX1,MIY1,MIX2,MIY2,1,1))then exit;
Writeln('Axe Not Found.. Looking for head...');
if(findhead)then exit;
Lost;
BrokenToBank;
end;
//----------------------------------------------------------------------------\\
Procedure BrokenAxeCheck;
var axemask:integer;
begin
wait(10)
if(wearedead or not(loggedin))then Exit;
AxeMask := BitmapFromString(23, 29, 'z78DAED56C1110020085AC' +
'929DA7FA426F04E03392FE59D86909AD902C571A0E7906558C19C' +
'5B3B92CD8B7DCBA98C5232A9501861F2F626B34C22FD82DC829FC' +
'4AB666982D4A2F12532F73AF44B873956B75FE6A8D1DF97996AAC' +
'2FCB44B3A7D6975F7D61FD1F58B83EA416C6');
gametab(4)
if(not(findbitmapmasktolerance(AxeMask,xax,yay,MIX1,MIY1,MIX2,MIY2,1,1))and findcolortolerance(xax,yay,axecolor,mix1,miy1,mix2,miy2,12))then
begin
Writeln('Axe Broken... Going to Bank To Retrieve Another.');
Brokentobank;
end;
end;
//----------------------------------------------------------------------------\\
Procedure AxeCHeck;
begin
BrokenAxeCHeck
LostAxeCHeck;
end;
//----------------------------------------------------------------------------\\
///////////////////////////////////////////////////////////////////////////////|
//////////////////////////////Close Trees//////////////////////////////////////|
///////////////////////////////////////////////////////////////////////////////|
Function DetectTree:Boolean;
begin
wait(10)
if(FindColorTolerance(xax,yay,TreeColor1,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance) or
FindColorTolerance(xax,yay,TreeColor2,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance))Then
begin
Result := True;
end
else
begin
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function DetectTree2:Boolean;
begin
wait(10)
if(FindColorTolerance(xax,yay,TreeColor3,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance) or
FindColorTolerance(xax,yay,TreeColor4,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance))Then
begin
Result := True;
end
else
begin
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function DetectTree3:Boolean;
begin
wait(10)
if(FindColorTolerance(xax,yay,WillowColor1,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance) or
FindColorTolerance(xax,yay,WillowColor2,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance))Then
begin
Result := True;
end
else
begin
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function DetectTree4:Boolean;
begin
wait(10)
if(FindColorTolerance(xax,yay,MapleColor1,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance) or
FindColorTolerance(xax,yay,MapleColor2,MSCX1-Z,MSCY1-Z,MSCX2+Z,MSCY2+Z,ScriptTolerance))Then
begin
Result := True;
end
else
begin
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function ChopTreeClose:Boolean;
begin
if(isuptextmulti('Oak','ree','Tree'))then exit;
wait(100)
if(DetectTree or DetectTree2) Then
begin
MMouse(xax,yay,3,3);
CHeckEnt;
if IsUpTextMulti('Tr','ree','ee') then
begin
CheckRandoms(10)
mouse(xax,yay,0,0,True);
xbx:= xax;
yby:=yay;
wait(100+random(500));
flag;
Result := True;
Z := 0;
end
end
else
begin
Z := Z+ 50;
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function ChopOakClose:Boolean;
begin
if(isuptextmulti('Oak','ree','Tree'))then exit;
wait(100)
if(Not(LoggedIn))Then Exit;
if(DetectTree or DetectTree2) Then
begin
MMouse(xax,yay,3,3);
CheckEnt;
if IsUpTextMulti('Tr','ree','Oak') then
begin
CheckRandoms(10)
mouse(xax,yay,0,0,True);
xbx:= xax;
yby:=yay;
wait(100+random(500));
flag;
Result := True;
Z := 0;
end
end
else
begin
Z := Z+ 50;
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function ChopWillowClose:Boolean;
begin
if(isuptextmulti('Willow','illo','illow'))then exit;
wait(100)
if(DetectTree3) Then
begin
MMouse(xax,yay,3,3);
CheckEnt;
if IsUpTextMulti('Will','low','illow') then
begin
mouse(xax,yay,0,0,True);
xbx:= xax;
yby:=yay;
CheckRandoms(10)
wait(100+random(500));
flag;
Result := True;
Z := 0;
end
end
else
begin
Z := Z+ 50;
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Function ChopMapleClose:Boolean;
begin
wait(100)
if(isuptextmulti('aple','Maple','ple'))then exit;
if(Not(LoggedIn))Then Exit;
if(DetectTree4 or DetectTree4) Then
begin
CheckRandoms(10)
MMouse(xax,yay,3,3);
CheckEnt;
if IsUpTextMulti('Map','aple','ple') then
begin
mouse(xax,yay,0,0,True);
xbx:= xax;
yby:=yay;
wait(100+random(500));
flag;
Result := True;
Z := 0;
end
end
else
begin
Z := Z+ 10;
Result := False;
end
end;
//----------------------------------------------------------------------------\\
Procedure ProgressReport;
begin
writeln(' ');
WriteLn ('/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|')
WriteLn ('| --> UberWoodcutterBanker -> '+VersionNumber+' <-|')
Writeln ('| --> By: MrMoon! ~ ~ ~ Post This! <-|');
Writeln ('<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|')
Writeln('| Worked for '+ TimeRunning);
Writeln('| Cut '+inttostr(TTrips * 27 - 27)+' Logs.');
writeln('| Completed '+inttostr(TTrips - 1)+' Trips.');
Writeln('| Avoided '+inttostr(EntsAvoided2)+ ' Ents.');
SRLRandomsReport;
end;
//----------------------------------------------------------------------------\\
Procedure Tree;
begin
if(Not(LoggedIn))Then Exit;
if(players[CurrentPlayer].loc = 'Trees')Then
begin
Repeat
marktime(TT1);
Repeat
Callibrate;
AxeCheck;
wait(10);
CheckEnt;
wait(100)
if(timefrommark(TT1) > TreeTimeout)then break;
Until( (ChopTreeClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
CallibrateAtempts := 0;
TreeAtempts := 0;
CheckEnt;
Until(invfull);
WalkTobank;
Bankit;
BankToTrees;
Trips := Trips + 1;
TTrips := Trips + 1;
ProgressReport;
end;
end;
//----------------------------------------------------------------------------\\
Procedure Oak;
begin
if(Not(LoggedIn))Then Exit;
if(players[CurrentPlayer].loc = 'Oaks')Then
begin
Repeat
marktime(TT1);
Repeat
CallibrateOak;
AxeCheck;
wait(100)
CheckEnt;
wait(100)
if(timefrommark(TT1) > TreeTimeout)then break;
Until( (ChopOakClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
CallibrateAtempts := 0;
TreeAtempts := 0;
CheckEnt;
Callibrateoak;
Until(invfull);
OakTobank;
Bankit;
BankToOaks;
Trips := Trips + 1;
TTrips := Trips + 1;
ProgressReport;
end;
end;
//----------------------------------------------------------------------------\\
Procedure OakTree;
begin
if(Not(LoggedIn))Then Exit;
if(players[CurrentPlayer].loc = 'OaksTree')Then
begin
if(Not(LoggedIn))Then Exit;
Repeat
marktime(TT1);
Repeat
CallibrateOaksTree;
AxeCheck;
wait(100)
CheckEnt;
wait(100)
if(timefrommark(TT1) > TreeTimeout)then break;
Until( (ChopOakClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
CallibrateAtempts := 0;
TreeAtempts := 0;
CheckEnt;
Until(invfull);
OakTreesTobank;
bankit;
BankToOakstrees;
Trips := Trips + 1;
TTrips := Trips + 1;
ProgressReport;
end;
end;
//----------------------------------------------------------------------------\\
Procedure Oak2;
begin
if(Not(LoggedIn))Then Exit;
if(players[CurrentPlayer].loc = 'Oak2')Then
begin
Repeat
marktime(TT1);
Repeat
Callibrateoak2;
AxeCheck;
wait(10)
CheckEnt;
wait(10)
if(timefrommark(TT1) > TreeTimeout)then break;
Until( (ChopOakClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
CheckEnt;
CallibrateAtempts := 0;
TreeAtempts := 0;
Until(invfull);
Oak2TreesTobank;
bankit;
BankToOak2;
Trips := Trips + 1;
TTrips := Trips + 1;
ProgressReport;
end;
end;
//----------------------------------------------------------------------------\\
Procedure Willows;
begin
if(Not(LoggedIn))Then Exit;
if(players[Currentplayer].loc = 'Willows')then
begin
Repeat
marktime(TT1);
Repeat
CallibrateWillows;
AxeCheck
wait(10)
CheckEnt;
myfindent;
wait(10)
checkrandoms(10)
wait(10)
if(timefrommark(TT1) > TreeTimeout)then break;
Until(( ChopWillowClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
wait(10)
checkent;
CallibrateAtempts := 0;
TreeAtempts := 0;
until(Invfull);
walktobankwillow;
bankit;
banktowillows;
Trips := Trips + 1;
TTrips := Trips + 1;
wait(10)
ProgressReport;
wait(10)
end;
end;
//----------------------------------------------------------------------------\\
Procedure Maple;
begin
if(Not(LoggedIn))Then Exit;
if(players[Currentplayer].loc = 'Maple')then
begin
Repeat
marktime(TT1);
Repeat
CallibrateMaple;
AxeCheck;
wait(10)
CheckEnt
wait(10);
if(timefrommark(TT1) > TreeTimeout)then break;
Until( (ChopMapleClose and (DetectAxeMS = False)) or invfull );
CheckRandoms(10)
CallibrateAtempts := 0;
TreeAtempts := 0;
wait(3000);
until(Invfull);
walktobankMaple;
bankit;
banktoMaple;
Trips := Trips + 1;
TTrips := Trips + 1;
ProgressReport;
end;
end;
//----------------------------------------------------------------------------\\
//----------------------------------------------------------------------------\\
//----------------------------------------------------------------------------\\
// Main Loop
//----------------------------------------------------------------------------\\
begin
Ttrips := 0;
SetupSRL;
SetupPlayers;
DisguiseScar('MrMoons UberWoodcutter v.'+versionnumber+' .scar - SCAR 2.03 by MrMoon');
Trips := 0;
Repeat
LoginPlayer;
FindAxeHeadColor;
Gettehaxecolors;
Axecolor := GetColor(589,220);
HighestAngle;
Repeat
Tree;
Oak;
OakTree;
Oak2;
Willows;
Maple;
Until(Trips = Tripstotake);
Writeln('Switching Users');
Logout
NextPlayer(True);
Trips := 0;
Until(not(loggedin));
Writeln('Out of Active Players');
end.——————————————————
<!– END TEMPLATE: formanswers –>