Sorry just for sending you this.
I posted it in the Script Help Section and No one Experienced like you answered...
Hope you like it and if you want send back what i can train or maybe even do better in the script!
SCAR Code:
//////////////////////////////////////////////////////////////////////
// ___ __________
// _ | __| | |
// ___ |_| |__ | | - Cuts - |
// _ | _ | |___| |__________|
// __ _ ___ | |_/\ | _| | Yews |
// | \ | |/ | | / |___| | Willows |
// | \ | |\/| | |_|\_\ |__________|
// | |\ \| | |_|
// |_| \___| Cammalot Multi WoodCutter!
//////////////////////////////////////////////////////////////////////
program CammalotWcer;
{.include SRL\SRL.scar}
Var
Loads, fx, fy, Chopped, Tr33Type : integer;
NoTree : boolean;
Problemo : Boolean;
Const
Bankpin = ''; // BankPin? Put it between the ''
LoadsToDo = 0; // How many loads before switching player ?
TreeType = ''; // Yew = Yew , llo = Willow
PowerChop = ''; // If you answered 'Yes' to powerchop then stand near selected tree..
WhatDirection = ''; // N = North / S = South / E= East / W= West!
CurrentWcLevel = ''; // For Antiban!
UsingDAxe = False; // True If you are using a Dragon axe.
procedure DeclarePlayers;
begin
HowManyPlayers := 5;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;
Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := '';
Players[1].Active := True;
Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Active := True;
Players[3].Name := '';
Players[3].Pass := '';
Players[3].Nick := '';
Players[3].Active := True;
Players[4].Name := '';
Players[4].Pass := '';
Players[4].Nick := '';
Players[4].Active := True;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
end;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Don't Change anything under here!////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Procedure AxeUse;
Var AxeDTM, ox, oy : Integer;
begin
If UsingDaxe = True then
begin
Exit;
end else
AxeDTM := DTMFromString('78DA63F4626260D0646440058C4824900E02A' +
'AD125A02604A84695801A0FA01A65026A9C806A6C09A87100AAB1' +
'C2AF06006A7C02F4');
GameTab(5);
If FindDtm(AxeDTM, ox, oy, 568, 286, 605, 322) = True then
begin
FreeDtm(AxeDTM);
end else
begin
Writeln('Equip an axe');
FreeDtm(AxeDTM);
TerminateScript;
end;
end;
Procedure ProgressReport;
Begin
Writeln(' _____________________________________');
Writeln('/ Ran for ' + (TimeRunning) + '');
Writeln('>------------------------------------< ');
Writeln('| Did ' + IntToStr(Loads) + ' Loads');
Writeln('>------------------------------------<');
Writeln('| Cutted ' + IntToStr(Chopped) + ' Logs');
Writeln('>------------------------------------<');
end;
Procedure SomeRandomTalk;
Var MindTalk : Integer;
Begin
MindTalk := Random(10);
case MindTalk of
0: TypeSend ('Boring stuff');
1: TypeSend ('CutCutCut');
2: TypeSend ('I Think i Logout soon');
3: TypeSend ('Watching tv might not answer');
4: TypeSend ('My birthday is in December');
5: TypeSend ('BirdNest here i come');
6: TypeSend ('I want 99 WoodCutting');
7: TypeSend ('I got ' + IntToStr(Chopped) + ' Logs');
8: TypeSend ('Wc levels? Mine is ' + (CurrentWcLevel));
9: TypeSend ('Brum Brum');
end;
end;
Procedure CheckSettings;
var Problem : Boolean;
Begin
Problem := False;
ClearDebug;
If LoadsToDo = 0 then
Problem := True;
if TreeType = '' then
Problem := True;
If WhatDirection = '' then
Problem := True;
if PowerChop = '' then
Problem := True;
if CurrentWcLevel = '' then
if Problem = True then
begin
Writeln('Check your Settings!');
TerminateScript;
end else
Exit;
end;
Procedure WhatTree;
begin
Tr33Type := 0
if TreeType = 'Yew' then
Tr33Type := 1;
If TreeType = 'llo' then
Tr33Type := 2;
If TreeType = '' then
begin
TerminateScript;
end;
end;
Procedure Setup; // 0
Begin
HighestAngle;
MakeCompass('N');
AxeUse;
end;
Function FindFastRandoms: Boolean; // By WT-Fakawi.
var
i: Integer;
begin
for i:=1 to 11 do
begin
case I of
1: If FindDead then
begin
Problemo := True;
Result := True;
end;
2: If FindMod then
begin
Problemo := True;
Result := True;
end;
3: If FindMime then
begin
Problemo := True;
Result := True;
end;
4: If FindMaze then
begin
Problemo := True;
Result := True;
end;
5: If FindQuiz then
begin
Problemo := True;
Result := True;
end;
6: If FindDemon then
begin
Problemo := True;
Result := True;
end;
7: if NoGameTab then
begin
Problemo := True;
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
8 : If RC Then Result := True;
9: If FindTalk Then Result := True;
10: If Findfight = True Then Result := True;
11: ClickToContinue;
End;
Wait(1);
end;
end;
Procedure AntiRandomish;
Begin
FindFastRandoms;
If Problemo = True then
nextplayer(False);
If FindFight = True then
RunAwayDirection(WhatDirection);
RunBack;
end;
Procedure AntiBanish;
var
DBM : Integer;
Begin
DBM := Random(150);
Case DBM of
0: HoverSkill('Woodcutting', False);
1: MouseSpeed := 9 + Random(3);
3: PickUpMouse;
5: GameTab(2);
8: Wait(2000);
9: Setrun(True);
14: Hoverskill('Random', False);
15: SomeRandomTalk;
16: SomeRandomTalk;
end;
end;
Procedure B4nk; // 1
Var x, y, ax, ay: integer;
Foundbank : Boolean;
time: Integer;
Begin
MarkTime(time);
Foundbank := False;
Repeat
if FindObjCustom(ax, ay, ['ank'], [8751501, 3370376, 803673], 7) then
begin
GetMousepos(x, y);
AntiRandomish;
AntiRandomish;
Mouse(x, y, 1, 1, false);
Chooseoption('kly');
Foundbank := True;
writeln('FoundBank');
Wait(1000+random(1000));
Inpin(Bankpin);
end;
Until (FoundBank = True) or (TimeFromMark(time) > 10000);
end;
Procedure CheckIfLevled;
Var ox, oy : integer;
Begin
If FindColorTolerance(ox, oy, 16711680, 205, 434, 370, 459, 10) = True then
begin
Mouse(ox, oy, 0, 0, true);
AntiBanish;
end else
Exit;
end;
Procedure Depos1tAll;
Begin
Fixbank;
wait(1000+random(500));
Deposit(1,1,2);
Closebank;
Wait(1000+random(500));
AntiRandomish;
end;
Procedure YewWalking;
Var hx, hy : Integer;
begin
If Tr33type = 1 then
begin
Writeln('Start Walking To Yews');
RadialWalk( 6908273, 245, 255, 69, 0, 0);
AntiRandomish;
Flag;
RadialWalk( 6908273, 265, 255, 59, 0, 0);
AntiRandomish;
Flag;
RadialWalk( 5724247, 275, 255, 64, 0, 0);
AntiRandomish;
Flag;
RadialWalk( 1195603, 273, 260, 64, 0, 0);
AntiRandomish;
Flag;
If FindSymbol(hx, hy, 'tree') = True then
begin
Mouse(hx, hy, 0, 0, True);
AntiRandomish;
Flag;
end else
RadialWalk( 402999, 260, 270, 60, 0, 0);
AntiRandomish;
flag;
end;
end;
Procedure LittleCheck;
begin
MMouse(fx, fy, 0, 0);
if IsUpText(TreeType) then
begin
NoTree := True;
end else
NoTree := False;
Exit;
end;
Procedure WillowWalking;
begin
If Tr33type = 2 then
begin
Writeln('Start Walking To Willows');
RadialWalk( 6908273, 245, 255, 69, 0, 0);
FindNormalRandoms;
Flag;
RadialWalk( 6908273, 265, 255, 59, 0, 0);
FindNormalRandoms;
Flag;
RadialWalk( 402999, 250, 200, 50, 0, 0);
FindNormalRandoms;
Flag;
end else
Exit;
end;
Procedure WaitWhileWc;
Var
Tick : Integer;
begin
NoTree := False;
MarkTime(Tick);
repeat;
AntiBanish;
Wait(2000+random(1000));
LittleCheck;
until(NoTree = True) or (InvFull) or (TimeFromMark(tick) > 15000+random(10000));
end;
Procedure ChoppAYew;
Var lx, ly : integer;
Begin
Repeat
If FindObjCustom(lx, ly, ['Yew','ew','Ye'], [4223112, 4487056, 3694966, 4487056, 2000245], 10) then
begin
GetMousePos(fx, fy);
MMouse(fx, fy, 0, 0);
If IsUpText('Yew') then
Mouse(fx, fy, 0, 0, true);
AntiRandomish;
AntiBanish;
WaitWhileWc;
end else
LogOut;
NextPlayer(False);
Until(Invfull);
end;
Procedure ChoppAWillow;
Var cx, cy : integer;
Begin
Repeat
If FindObjCustom(cx, cy, ['Wil', 'illo', 'llow'], [2637371, 2325097, 3098178, 2448722], 7) then
begin
GetMousePos(fx, fy);
MMouse(fx, fy, 0, 0);
If IsUpText('Wil') then
Mouse(fx, fy, 0, 0, true);
AntiBanish;
WaitWhileWc;
end else
LogOut;
NextPlayer(False);
Until(Invfull);
end;
Procedure YewWalkBack;
Begin
if Tr33Type = 1 then
begin
RadialWalk( 1195603, 339, 116, 50, 0, 0);
FindNormalRandoms;
Flag;
RadialWalk( 5724247, 70, 115, 60, 0, 0);
FindNormalRandoms;
Flag;
RadialWalk( 1195603 , 70, 90, 65, 0, 0);
FindNormalRandoms;
Flag;
RadialWalk( 6908273, 75, 90, 60, 0, 0);
FindNormalRandoms;
Flag;
if RadialWalk( 9408666, 35, 111, 65, 0, 0) then
begin
FindNormalRandoms;
Flag;
end else
nextplayer(False);
end;
end;
Procedure WillowWalkBack;
Begin
if Tr33Type = 2 then
begin
RadialWalk( 6908273, 40, 45, 59, 0, 0);
FindNormalRandoms;
Flag;
if RadialWalk( 9408666, 35, 111, 65, 0, 0) then
begin
FindNormalRandoms;
Flag;
end else
nextplayer(False);
end;
end;
Procedure PCwhat;
Begin
If TreeType = 'llo' then
begin
ChoppAWillow;
end else
if TreeType = 'Yew' then
begin
ChoppAYew;
end else
Writeln('Select What Tree To Chop at line 10');
end;
Procedure ChopSelectedTree;
begin
Repeat
PCwhat;
WaitWhileWc;
until(Invfull);
end;
Procedure DropPart;
Begin
DropAll;
if (Not(InvCount = 0 )) then
LogOut;
NextPlayer(False);
end;
Procedure MainLoopYew;
begin
Repeat
YewWalking;
ChoppAYew;
YewWalkBack;
B4nk;
Depos1tAll;
Chopped:= Chopped+28;
Loads:= Loads+1;
ProgressReport;
Until(Loads = LoadsToDo);
Logout;
NextPlayer(True);
MainLoopYew;
end;
Procedure MainLoopWillow;
begin
Repeat
WillowWalking;
ChoppAWillow;
WillowWalkBack;
B4nk;
Depos1tAll;
Chopped:= Chopped+28;
Loads:= Loads+1;
ProgressReport;
Until(Loads = LoadsToDo);
Logout;
NextPlayer(True);
MainLoopWillow;
end;
Procedure MainLoopPowerChop;
begin
Repeat
ChopSelectedTree;
DropPart;
Chopped:= Chopped+28;
Loads:= Loads+1;
ProgressReport;
Until(Loads = LoadsToDo);
Logout;
NextPlayer(True);
MainLoopPowerChop;
end;
begin
SetupSrl;
Activateclient;
Disguise('Windows Live Messenger');
CheckSettings;
DeclarePlayers;
WhatTree;
Wait(1000+random(500));
if (not (LoggedIn)) then
LoginPlayer;
Setup;
If PowerChop = 'No' then
begin
If Tr33Type = 1 then
MainLoopYew;
If Tr33Type = 2 then
MainLoopWillow;
end else
if PowerChop = 'Yes' then
begin
MainLoopPowerChop;
end;
end.