SCAR Code:
program FalidorCowHider;
{.include srl/srl.scar}
{.include srl/srl/skill/fighting.scar}
const
UserName = '';
PassWord = '';
NickName = '';
var
TRLocation : string;
TRHideCount,TRBoneBury : integer;
{--------------------------------------------------------------------}
Procedure TvReport;
var
TRPrayExp : integer;
begin
clearreport;
TRPrayExp:=TrPrayExp+(TRBoneBury*4)
addtoreport('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
addtoreport('~~~~~ Tv-XxX`s Hide Collector ~~~~~')
addtoreport('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
addtoreport('Character Located At '+TRLocation)
addtoreport('Hides Collected - '+inttostr(TRHideCount))
addtoreport('Bones Burried - '+inttostr(TRBoneBury))
addtoreport('Prayer Experience - '+inttostr(TRPrayExp))
addtoreport('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
addtoreport('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
end;
Procedure WalkToCows;
var
FRCol,tx,ty,tc,FT : integer;
begin
tc:=0
FRCol:= FindFallyRoadColor
LinearRoadWalk(FRCol,240,50,4,4)
TRLocation := 'Falidor Road'
TvReport;
repeat
FRCol:= FindFallyRoadColor
LinearRoadWalk(FRCol,180,50,4,4)
tc:=tc+1
until(tc=3)
Flag;
FT:=0
repeat
LoadSymbolBitmapColor('tree')
if(FindSymbolIn(tx,ty,'tree',640,5,725,166)=true) then
begin
mouseflag((tx+random(10)),ty,4,4)
TRLocation := 'Trees Outside Cow Field'
TvReport;
FT:=1
end
else
begin
wait(1000+random(1000))
end
until(FT=1)
mouseflag(tx,ty-20,4,4)
end;
Procedure CheckGateIn;
var
tx,ty,GTol : integer;
begin
Gtol:=10
If(FindObj(tx,ty,'Gate',5467258,Gtol)or FindObj(tx,ty,'Gate',4874348,GTol)) then
begin
TRLocation := 'The Gate To The Cow Field'
TvReport;
MMouse(tx,ty,0,0)
wait(500+random(100))
If(IsUpText('Open'))then
begin
Mouse(tx,ty,0,0,true)
wait(1000+random(1000))
Flag;
MouseFlag((((MMX2-MMX1)/2)+MMX1),((((MMY2-MMY1)/2)+MMY1)+20),4,4);
end
else
begin
MouseFlag((((MMX2-MMX1)/2)+MMX1),((((MMY2-MMY1)/2)+MMY1)+20),4,4);
end
end
else
begin
wait(1000+random(1000))
GTol:=GTol+10
CheckGateIn;
end
TRLocation := 'Cow Field'
TvReport;
end;
Procedure CheckInvent;
var
HideInvDtm,tx,ty : integer;
Begin
HideInvDtm := DTMFromString('78DA6364616660A8626440068777ED6260600' +
'42386FF40C0F8938981A104550D4416460269909A42026A188176' +
'651350C34A841A0EA09A1C026A78816AF208A81102AA2922A0461' +
'0A8A69C0835D5A86A0C141450D5F003D5D41330870FA8A6898039' +
'3C40352D04CCE102AA6923A086850835A0F86A25A0E63713869B3' +
'1D47C03AAA9C5AF0600016E1482');
if(DTMRotated(HideInvDtm,tx,ty,550,200,740,470)=true) then
begin
OpenBankQuiet('feb')
Repeat
DepositAll;
wait(1000+random(1000))
Until(invcount=0)
Writeln('Banked Hides')
Closebank;
end
else
begin
Writeln('You Have No Hides, Going To Cows')
end
End;
Procedure TvLogin(TVUsername,TVPassword,TVNickname: string);
begin
NumberOfPlayers(1);
Players[0].Name := TVUsername;
Players[0].Pass := TVPassword;
Players[0].nick := TVNickname;
Players[0].Active := True;
cleardebug;
clearreport;
Loginplayer;
SetRun(True)
wait(100+random(1000))
GameTab(4)
wait(100+random(1000))
PerfectNorth;
HighestAngle;
end;
procedure IsBank;
var
tx,ty,BankChars,BankersColor : integer;
begin
LoadSymbolBitmapColor('bank')
if(FindSymbol(tx,ty,'bank')) then
begin
TRLocation := 'The Bank'
TvReport;
CheckInvent;
end
else
begin
BankChars := BitmapFromString(5, 4, 'beNpjYNy6ZQIQ/fsn/O8fH' +
'5z95w/T168Md+8yALlANhC9fctw5gyIy8DACBQHshkAVpwiVw==');
BankersColor:=AutoColorThis(BankChars,10,MMX1,MMY1,MMX2,MMY2)
if(BankersColor=0) then
begin
Writeln('ERROR := Unable To Find Falidor East Bank')
TRLocation := 'Unknown Position'
TvReport;
TerminateScript
end
if(FindColorTolerance(tx,ty,BankersColor,MMX1,MMY1,MMX2,MMY2,10))then
begin
TRLocation := 'The Bank'
TvReport;
CheckInvent;
end
else
begin
Writeln('ERROR := Unable To Find Falidor East Bank')
TRLocation := 'Unknown Position'
TvReport;
TerminateScript;
end
end
end;
begin
setupsrl;
Activateclient;
TvLogin(UserName,PassWord,NickName);
IsBank;
WalkToCows;
CheckGateIn;
end.