imafatmess
2006-04-28 16:43:24
I haven't been in scripting for a while so I decided to get back into it with an amazing script. This is a script which buys and drinks beer in falador pub. I know the code is amazingly crap but I don't really care at the moment…
EDIT-> Damn, I diddn't see WT-Fawakais one when I started this. There was no point in even making it =(
EDIT-> Damn, I diddn't see WT-Fawakais one when I started this. There was no point in even making it =(
program BeerBuyer;
{.include SRL/SRL.scar}
var
ClickToCont,AsgarnianAle,BeerLady1,BeerLady2,ByBank:integer;
Beer,EmptyBeer,amountBought:integer;
const
randomMouse=5;
amountOfBeerToBuy = 1000;
ColourOfBArMaid = 2115160;
procedure LoadDTMS;
begin
ClickToCont := DTMFromString('78DA63D4676460D80FC428E03F032B900489F' +
'E0702467320EB10440D2B163520C0E8843007A71A5120EB000135' +
'FF18089BF31148EC23A0E63990D84B404D19116E4E22C2EF2A84D' +
'5000025D71A83');
ByBank := DTMFromString('78DA634C64626008654001BB364C656005D28' +
'C40FC1F081813806AB22072AC50351BA382E16A4080311CA82606' +
'55CD9F3F4CA86A528850930B541388AA66526F29AA1A47A01A6F0' +
'26A406EB6C6AF060054FB153F');
AsgarnianAle := DTMFromString('78DA63BCC2C0C0D0C4C8800E58811824FA1F0' +
'8180F0019CD8C7071743520C0B89D0835CA40562B01350E40560B' +
'01357E44A8D104B24A50D534A0ABF904248A08A8B904248A09A83' +
'9428439F780C434026E3E0C24A61350C30C644DC5AF06004F5114' +
'99');
BeerLady1 := DTMFromString('78DA637CC7C8C03009889180B2A222032B900' +
'689FE0702C62F405603440D2B544DB0A32C5C0D08307E00B2DA51' +
'D5AC9CB20B55CD0B20AB07558DBC2C9A399F81AC0E5435F33AD7A' +
'2AA790F644D475593971586AAE631C25F3035F12E3A286A0076D3' +
'15E6');
BeerLady2 := DTMFromString('78DA63FCC2C0C050C98002A4C4C5195881342' +
'310FF0702C66F40462E448E15AAC6D6D419AE0604187F01897454' +
'357F7EFF4155F3114864A0AA593A610BAA1A905D69A86AB414795' +
'1D5FC011265A86A94151551D580FC5587AA06D95F7037E7A0AA09' +
'F6884655F3194864A1AAE9289F86A2060074EF1A5A');
Beer := DTMFromString('78DA637467626060666440064F1F3D656005D' +
'220D1FF40C0E80254C30B51C30A55B3BB510CAE0604181D816A18' +
'51D5DCBA7A0B558D27500D3FAA9A356568E6F830C179303507B71' +
'F4455E30F54C385A6A6CB08D33D6CA86AF6354BA2A801007D9013' +
'51');
EmptyBeer := DTMFromString('78DA633CC2C4C0F08201052C5AB4888115483' +
'302F17F206004A9B90F916385AA71737585AB0101C67D4035CF51' +
'D54C9F3C1955CD51A09AD7A86A8A0B0B51D59C04AA7984AA66F69' +
'429A86A4E00D5DC4655D3D8D080AAE60050CD5DFC6E0600F60519' +
'C5');
end;
procedure talkToPerson;
var
clicked:boolean; i:integer;
begin
benmouse:=true;
MouseSpeed:=5;
repeat
if(FindObj(x, y, 'Talk',ColourOfBarMaid,20))then
begin
FindNormalRandoms;
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
end;
if(i = 500)then
break;
i:= i + 1;
until(clicked = true);
clicked:=false;
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
repeat
if(findDTM(clicktocont,x,y,0,0,500,500))then
begin
FindNormalRandoms;
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
clicked:=true;
end;
until(clicked);
clicked:=false;
repeat
if(findDTM(clicktocont,x,y,0,0,500,500))then
begin
FindNormalRandoms;
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
end;
until(clicked);
clicked:=false;
repeat
if(findDTM(clicktocont,x,y,0,0,500,500))then
begin
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
end;
until(clicked);
clicked:=false;
repeat
if(findDTM(AsgarnianAle,x,y,0,0,500,500))then
begin
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
end;
until(clicked);
clicked:=false;
repeat
if(findDTM(clicktocont,x,y,0,0,500,500))then
begin
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
end;
until(clicked);
clicked:=false;
repeat
if(findDTM(clicktocont,x,y,0,0,500,500))then
begin
MMouse(x,y,randomMouse,randomMouse);
FindNormalRandoms;
wait(1000+random(1000));
FindNormalRandoms;
Mouse(x,y,randomMouse,randomMouse,true);
FindNormalRandoms;
clicked:=true;
wait(1000+random(1000));
FindNormalRandoms;
MMouse(x,y-100,randomMouse,randomMouse);
FindNormalRandoms;
end;
until(clicked);
end;
procedure DrinkBeer;
var x,y:integer; drunk:boolean;
begin
repeat
if(findDTM(Beer,x,y,0,0,1000,1000))then
begin
FindNormalRandoms;
MMouse(x,y,RandomMouse,RandomMouse);
Wait(2000+random(1000));
Mouse(x,y,RandomMouse,RandomMouse,true);
Wait(2000+random(1000));
FindNormalRandoms;
MMouse(x,y+100,RandomMouse,RandomMouse);
end;
if(findDTM(EmptyBeer,x,y,0,0,1000,1000))then
begin
FindNormalRandoms;
Wait(2000+random(1000));
popUp2(x,y,0,0,'Drop');
Wait(1000+random(1000));
drunk:=true;
end;
until(drunk)
end;
begin
LoadDTMS;
SetupSRL;
ActivateClient;
amountBought:=0;
repeat
talkToPerson;
DrinkBeer;
amountBought:=amountBought + 1;
until(amountBought = amountOfBeerToBuy);
Logout;
end.