Page 1 of 2 12 LastLast
Results 1 to 25 of 27

Thread: bot not doing the things i want

  1. #1
    Join Date
    Jun 2007
    Posts
    3
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    bot not doing the things i want

    HI EVERYONE Heres a problem with my mining bot
    right i got my bot to work but i have a few problems .
    (1) my bot just wakls around and thats it he dosnt mine anything
    (2) after a while it just says 12 beau 12 isnt logged in.. which is my name ..

    this is my script.. if you find any problems with it please dumb it down if possible.. im not at all high tech
    --------------------------------------------------------------------------
    {.Script Info:
    # ScriptName = Pentti's Multi City Miner & Banker
    # Author = Pentti [pentti701@msn.com]
    # Description = This is an autominer for different mining places.
    This works as a powerminer too.
    Start at the bank if you are banking.
    Start at the mining place if you are powermining.
    # Version = 0.31 (for SRL version 3.6)
    # Date = 22.04.2007
    # Comments = Still more mining places to come in version 0.4!
    [http://www.villavu.com/forum/showthread.php?t=6907]

    /Script Info}

    {If you use this script, please give me a comments/progress reports at
    http://www.villavu.com/forum/showthread.php?t=6907}

    {Oh yea and fuck you if you upload this to somewhere without my permission!!!
    And do not post this anywhere without my permission!}

    program New;
    {.include srl/srl.scar}
    {.include srl/srl/skill/Mining.scar}
    {.include SRL/SRL/Misc/Trade.scar}
    {.include srl/srl/skill/Fighting.scar}
    Const
    {
    --------SETUP--------
    ------------------------------------
    | MINING PLACES | CODE |
    |________________________|___________|
    | | |
    |Lumbridge Swamp West | LW |
    |------------------------|-----------|
    |Lumbridge Swamp East | LE |
    |------------------------|-----------|
    |Varrock West | VW1 VW2 | <-VW2 for shorter way (using my wallfinding walk). VW1 for roadwalking. VW1 piece of shit! Haha!
    |------------------------|-----------|
    |Varrock East | VE |
    |------------------------|-----------|
    |Rimmington | RI1 | <-RI1 from Draynor bank. (From Falador may come later)
    |------------------------|-----------|
    [You'll need these codes at player setup]
    }

    MiningWait=4; //Max time in seconds to wait before looking for next ore.
    Startplayer=0; //Player to start with.
    HowManyLoads=250; //How many loads to do?

    YourSRLID=''; //Dont have? Go to http://stats.srl-forums.com/ and register!
    yourSRLPass='';//Dont have? Go to http://stats.srl-forums.com/ and register!

    ClayColor=3764366; //Change if it doesnt find the ore
    CopperColor=4484245; //Change if it doesnt find the ore
    TinColor=9013652; //Change if it doesnt find the o
    IronColor=2305869; //Change if it doesnt find the ore
    SilverColor=10921650; //Change if it doesnt find the ore
    CoalColor=21105316; //Change if it doesnt find the ore
    GoldColor=1952504; //Change if it doesnt find the orere
    MithrilColor=7556941; //Change if it doesnt find the ore
    AdamantiteColor=6717286;//Change if it doesnt find the ore


    {-Not so essential things:}
    ReportsInToFile=True; //Writes progress reports into text file at "Scar 2.03Pentti_Multi_City_Miner_Banker_Reports.txt"
    CheckOresCorrect=True; //Let script check if you set ore names correct? (recommended)
    CheckPlacesCorrect=True; //Let script check if you set mining places correct? (recommended)
    UseTalk=True; //Talks to other people with their names?
    Answer=True; //Check and answers if someone talks to you or asks your mining level. (May lag)
    UseBenMouse=True; //Use Benmouse?
    MouseSpeeds=12; //MouseSpeed?
    RunDir='N'; //Run away direction if fight found.
    ReduceLag=False; //Doesnt lag runescape so much (affects to antiban and randoms [not so effective]).
    UseTimeOut=True; //Uses feature below:
    MaxTime=20; {//Max player time in minutes for each load?} var LumbyDetect:Boolean;procedure LumbySet;begin
    LumbyDetect:=True; {//Checks if you are in Lumbridge.} end;

    Procedure DeclarePlayers;
    begin
    Players[0].Name :='12 beau 12';
    Players[0].Pass :='foletti';
    Players[0].Nick :='beau';
    Players[0].Active:=True; //Using this player
    Players[0].Integer1:=5; //How many loads to do with this player before switching?
    Players[0].String1:='Coal'; //Most to mine ore.
    Players[0].String2:='Coal'; //Will mine less than first ore
    Players[0].String3:='Coal'; //Will mine less than second ore
    Players[0].Ore:='LW'; //Code of mining place. (see the list of mining places and codes of them)
    Players[0].Boolean1:=False; //True if you want only to powermine.

    Players[1].Name :='';
    Players[1].Pass :='';
    Players[1].Nick :='';
    Players[1].Active:=False; //Using this player
    Players[1].Integer1:=5; //How many loads to do with this player before switching?
    Players[1].String1:='Iron'; //Most to mine ore.
    Players[1].String2:='Iron'; //Will mine less than first ore
    Players[1].String3:='Iron'; //Will mine less than second ore
    Players[1].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[1].Boolean1:=False; //True if you want only to powermine.

    Players[2].Name :='';
    Players[2].Pass :='';
    Players[2].Nick :='';
    Players[2].Active:=False; //Using this player
    Players[2].Integer1:=5; //How many loads to do with this player before switching?
    Players[2].String1:='Iron'; //Most to mine ore.
    Players[2].String2:='Iron'; //Will mine less than first ore
    Players[2].String3:='Iron'; //Will mine less than second ore
    Players[2].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[2].Boolean1:=False; //True if you want only to powermine.

    Players[3].Name :='';
    Players[3].Pass :='';
    Players[3].Nick :='';
    Players[3].Active:=False; //Using this player
    Players[3].Integer1:=5; //How many loads to do with this player before switching?
    Players[3].String1:='Iron'; //Most to mine ore.
    Players[3].String2:='Iron'; //Will mine less than first ore
    Players[3].String3:='Iron'; //Will mine less than second ore
    Players[3].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[3].Boolean1:=False; //True if you want only to powermine.

    Players[4].Name :='';
    Players[4].Pass :='';
    Players[4].Nick :='';
    Players[4].Active:=False; //Using this player
    Players[4].Integer1:=5; //How many loads to do with this player before switching?
    Players[4].String1:='Iron'; //Most to mine ore.
    Players[4].String2:='Iron'; //Will mine less than first ore
    Players[4].String3:='Iron'; //Will mine less than second ore
    Players[4].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[4].Boolean1:=False; //True if you want only to powermine.

    Players[5].Name :='';
    Players[5].Pass :='';
    Players[5].Nick :='';
    Players[5].Active:=False; //Using this player
    Players[5].Integer1:=5; //How many loads to do with this player before switching?
    Players[5].String1:='Iron'; //Most to mine ore.
    Players[5].String2:='Iron'; //Will mine less than first ore
    Players[5].String3:='Iron'; //Will mine less than second ore
    Players[5].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[5].Boolean1:=False; //True if you want only to powermine.

    Players[6].Name :='';
    Players[6].Pass :='';
    Players[6].Nick :='';
    Players[6].Active:=False; //Using this player
    Players[6].Integer1:=5; //How many loads to do with this player before switching?
    Players[6].String1:='Iron'; //Most to mine ore.
    Players[6].String2:='Iron'; //Will mine less than first ore
    Players[6].String3:='Iron'; //Will mine less than second ore
    Players[6].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[6].Boolean1:=False; //True if you want only to powermine.

    Players[7].Name :='';
    Players[7].Pass :='';
    Players[7].Nick :='';
    Players[7].Active:=False; //Using this player
    Players[7].Integer1:=5; //How many loads to do with this player before switching?
    Players[7].String1:='Iron'; //Most to mine ore.
    Players[7].String2:='Iron'; //Will mine less than first ore
    Players[7].String3:='Iron'; //Will mine less than second ore
    Players[7].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[7].Boolean1:=False; //True if you want only to powermine.

    Players[8].Name :='';
    Players[8].Pass :='';
    Players[8].Nick :='';
    Players[8].Active:=False; //Using this player
    Players[8].Integer1:=5; //How many loads to do with this player before switching?
    Players[8].String1:='Iron'; //Most to mine ore.
    Players[8].String2:='Iron'; //Will mine less than first ore
    Players[8].String3:='Iron'; //Will mine less than second ore
    Players[8].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[8].Boolean1:=False; //True if you want only to powermine.

    Players[9].Name :='';
    Players[9].Pass :='';
    Players[9].Nick :='';
    Players[9].Active:=False; //Using this player
    Players[9].Integer1:=5; //How many loads to do with this player before switching?
    Players[9].String1:='Iron'; //Most to mine ore.
    Players[9].String2:='Iron'; //Will mine less than first ore
    Players[9].String3:='Iron'; //Will mine less than second ore
    Players[9].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[9].Boolean1:=False; //True if you want only to powermine.

    Players[10].Name :='';
    Players[10].Pass :='';
    Players[10].Nick :='';
    Players[10].Active:=False; //Using this player
    Players[10].Integer1:=5; //How many loads to do with this player before switching?
    Players[10].String1:='Iron'; //Most to mine ore.
    Players[10].String2:='Iron'; //Will mine less than first ore
    Players[10].String3:='Iron'; //Will mine less than second ore
    Players[10].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[10].Boolean1:=False; //True if you want only to powermine.

    Players[11].Name :='';
    Players[11].Pass :='';
    Players[11].Nick :='';
    Players[11].Active:=False; //Using this player
    Players[11].Integer1:=5; //How many loads to do with this player before switching?
    Players[11].String1:='Iron'; //Most to mine ore.
    Players[11].String2:='Iron'; //Will mine less than first ore
    Players[11].String3:='Iron'; //Will mine less than second ore
    Players[11].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[11].Boolean1:=False; //True if you want only to powermine.

    Players[12].Name :='';
    Players[12].Pass :='';
    Players[12].Nick :='';
    Players[12].Active:=False; //Using this player
    Players[12].Integer1:=5; //How many loads to do with this player before switching?
    Players[12].String1:='Iron'; //Most to mine ore.
    Players[12].String2:='Iron'; //Will mine less than first ore
    Players[12].String3:='Iron'; //Will mine less than second ore
    Players[12].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[12].Boolean1:=False; //True if you want only to powermine.

    Players[13].Name :='';
    Players[13].Pass :='';
    Players[13].Nick :='';
    Players[13].Active:=False; //Using this player
    Players[13].Integer1:=5; //How many loads to do with this player before switching?
    Players[13].String1:='Iron'; //Most to mine ore.
    Players[13].String2:='Iron'; //Will mine less than first ore
    Players[13].String3:='Iron'; //Will mine less than second ore
    Players[13].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[13].Boolean1:=False; //True if you want only to powermine.

    Players[14].Name :='';
    Players[14].Pass :='';
    Players[14].Nick :='';
    Players[14].Active:=False; //Using this player
    Players[14].Integer1:=5; //How many loads to do with this player before switching?
    Players[14].String1:='Iron'; //Most to mine ore.
    Players[14].String2:='Iron'; //Will mine less than first ore
    Players[14].String3:='Iron'; //Will mine less than second ore
    Players[14].Ore:='VE'; //Code of mining place. (see the list of mining places and codes of them)
    Players[14].Boolean1:=False; //True if you want only to powermine.


    end;

    {--------END-OF-SETUP--------}

    var //Mining
    CurrentRockColor,OreColorOne,OreColorTwo,OreColorT hree:Integer;
    MiningMark:Integer;
    Loads:Integer;

    var //Colors
    RealWallColor:Integer;
    DaRoadColor:Integer;

    var //FailSafes
    BanksFailed:Integer;
    PlayerTimeOutMark:Integer;
    PlayerStartTime2:Integer;
    LumbyCheck:Boolean;
    RockNotFound:Integer;
    TotalRocksMissed:Integer;

    var //Others
    CUAM:Integer;
    MLvl:Integer;
    LowLag:Integer;
    TalkMark:Integer;
    ItemMark:Integer;
    ToTextFile:String;

    var //Ore arrays
    AvaiableOres:array[0..8]of String;

    var //Place arrays
    AvaiablePlaces:Array[0..6]of String;

    {----------------------------------------------------------------------------}

    Function FileReport:String;
    var
    i:Integer;
    Co:Integer;
    Mind,Bankd:String;
    Active:String;
    a,b:String;
    Thing:String;
    MinLvlTxt:String;
    AddText:String;
    begin
    if(ScriptTime(2)<10)
    then
    A:='0'+inttostr(ScriptTime(2))
    if(ScriptTime(2)>9)
    then
    A:=inttostr(ScriptTime(2))
    if(ScriptTime(3)<10)
    then
    B:='0'+inttostr(ScriptTime(3))
    if(ScriptTime(3)>9)
    then
    B:=inttostr(ScriptTime(3))
    for i:=0 to HowManyPlayers-1 do
    begin
    if(Players[i].Active)then
    Active:='in use, '
    else
    Active:='not in use, ';
    if(Players[i].Loc<>'')then
    Active:=Players[i].Loc
    Mind:='Mined '+inttostr(Players[i].Integer3)+' ores, ';
    Bankd:=inttostr(Players[i].Banked)+' Banks, ';
    if(Players[i].Integer3=0)then
    Mind:='';
    if(Players[i].Banked=0)then
    Bankd:=' ';
    MLvl:=Players[i].Integer4;
    MinLvlTxt:='M-lvl: '+inttostr(MLvl);
    if(MLvl=0)then
    MinLvlTxt:='';
    for Co:=0 to 58-(2+Length(inttostr(i))+Length(Players[I].Name)+4+Length(Active)+Length(Mind)+Length(Bankd) +Length(MinLvlTxt)) do
    begin
    Thing:=Thing+' ';
    end;
    Thing:=''
    AddText:=AddText+(Inttostr(I)+': '+Players[I].Name+' is '+Active+Mind+Bankd+MinLvlTxt+Thing+'| '+CHR(13))
    end;
    Result:='[Worked: '+inttostr(ScriptTime(1))+':'+A+':'+B+'] '+AddText+' '+CHR(13);
    end;

    Procedure GoingOn(What:string);
    var
    File:Integer;
    begin
    Writeln(What+' ('+TheTime+')')
    status(What+' ('+TheTime+')')
    if(not(ReportsInToFile))then
    Exit;
    File:=ReWriteFile(apppath+'Pentti_Multi_City_Miner _Banker_Reports.txt',False)
    ToTextFile:=ToTextFile+' '+What+' ('+TheTime+')'+' '+CHR(13);
    if(WritefileString(File,FileReport+ToTextFile))the n
    CloseFile(File)
    end;

    {----------------------------------------------------------------------------}

    procedure TheOres;
    begin
    AvaiableOres[0]:='Clay';
    AvaiableOres[1]:='Copper';
    AvaiableOres[2]:='Tin';
    AvaiableOres[3]:='Iron';
    AvaiableOres[4]:='Silver';
    AvaiableOres[5]:='Coal';
    AvaiableOres[6]:='Gold';
    AvaiableOres[7]:='Mithril';
    AvaiableOres[8]:='Adamantite';
    end;

    procedure OresCorrect;
    var
    i:Integer;
    c:Integer;
    Correct:Boolean;
    begin
    if(CheckOresCorrect)then
    begin
    TheOres;
    for i:=0 to HowManyPlayers-1 do
    begin
    if(Players[i].Active)then
    begin
    Players[i].String1:=Capitalize(Players[i].String1)
    Players[i].String2:=Capitalize(Players[i].String2)
    Players[i].String3:=Capitalize(Players[i].String3)

    Correct:=False;
    for c:=0 to 8 do
    begin
    if(Players[i].String1=AvaiableOres[c])then
    Correct:=True;
    end;
    if(Correct=False)then
    begin
    Writeln('Please set right ore name #1 for player '+Players[i].Name)
    TerminateScript;
    end;
    Correct:=False;

    for c:=0 to 8 do
    begin
    if(Players[i].String2=AvaiableOres[c])then
    Correct:=True;
    end;
    if(Correct=False)then
    begin
    Writeln('Please set right ore name #2 for player '+Players[i].Name)
    TerminateScript;
    end;
    Correct:=False;

    for c:=0 to 8 do
    begin
    if(Players[i].String3=AvaiableOres[c])then
    Correct:=True;
    end;
    if(Correct=False)then
    begin
    Writeln('Please set right ore name #3 for player '+Players[i].Name)
    TerminateScript;
    end;

    end;
    end;
    end;
    end;

    procedure ThePlaces;
    begin
    AvaiablePlaces[0]:='LW';
    AvaiablePlaces[1]:='LE';
    AvaiablePlaces[2]:='VE';
    AvaiablePlaces[3]:='VW1';
    AvaiablePlaces[4]:='VW2';
    AvaiablePlaces[5]:='RI1';
    AvaiablePlaces[6]:='RI2';
    end;

    procedure PlacesCorrect;
    var
    i:Integer;
    c:Integer;
    Correct:Boolean;
    begin
    ThePlaces;
    if(CheckPlacesCorrect)then
    begin
    for i:=0 to HowManyPlayers-1 do
    begin
    if(Players[i].Active)and
    not(Players[i].Boolean1)then
    begin
    Players[i].Ore:=Capitalize(Players[i].Ore)
    Correct:=False;

    for c:=0 to 6 do
    begin
    if(UpperCase(Players[i].Ore)=AvaiablePlaces[c])then
    Correct:=True;
    end;
    if(Players[i].Boolean1)then
    Correct:=True;
    if(Correct=False)then
    begin
    Writeln('Please set right mining place for player '+Players[i].Name)
    TerminateScript;
    end;

    end;
    end;
    end;
    end;

    procedure Brightness;
    begin
    wait(800)
    GameTab(11)
    wait(400)
    if(getColor(713,230)<>10436881)then
    begin
    Mouse(710,228,6,6,True)
    wait(1000)
    end;
    end;

    procedure FuckYouYouFuckingAutoretailiate;
    begin
    GameTab(1)
    wait(500)
    if(FindcolorTolerance(x,y,1908610,617,374,633,388, 8))then
    Mouse(x,y,15,5,True)
    end;

    procedure SayLevel(Skill:string);
    var LVLBmp,Lvl:integer;
    tmpx, tmpy: Integer;
    begin
    if(Answer)then
    begin
    if (FindColor(tmpx, tmpy, 65535,90,60,430,280)) then
    begin
    LvlBmp:=createbitmapmaskfromtext(skill,upchars)
    wait(20+LowLag*100)
    If(FindBitmapMaskTolerance(LvlBmp, x, y,90,60,430,280,0, 40))then
    begin
    Lvl:=GetSkillLevel(Skill)
    TypeSend('My '+Skill+' Level is '+inttostr(Lvl)+'. yours?')
    end;
    FreeBitMap(LvlBmp)
    end;
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure GI(item: String);
    begin
    if(TimeFromMark(ItemMark)/1000/60<=2)then
    Exit;
    MarkTime(ItemMark)
    if(UseTalk)then
    begin
    if(invCount<=8)then
    exit;
    case (random(10)) of
    0: TypeSend('now I have '+inttostr(InvCount)+ ' ' +item);
    1: TypeSend('Yeah now '+inttostr(InvCount)+' '+item);
    2: TypeSend('Woo! I have '+inttostr(InvCount)+' '+item);
    3: TypeSend('I got '+inttostr(InvCount)+' '+item+' '+' now');
    4: TypeSend('Must get '+inttostr(28-InvCount)+' more '+Item);
    5: TypeSend(inttostr(28-InvCount)+' '+item+' to go.');
    6: TypeSend('Still must get '+inttostr(28-InvCount)+' more '+item);
    7: TypeSend('Damn, I have '+inttostr(InvCount)+' '+item);
    8: TypeSend('Lol I almost got '+inttostr(28-InvCount-random(5))+' '+item);
    9: TypeSend('I realy need to get '+inttostr(28-InvCount)+' more '+item);
    end;
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure Reportplaces;
    begin
    if(Players[Currentplayer].Boolean1)then
    begin
    ReportVars[6]:=1;
    SrlRandomsReport;
    Exit;
    end;
    case Players[CurrentPlayer].Ore of
    'LW': ReportVars[2]:=1
    'LE': ReportVars[3]:=1
    'VW1':ReportVars[4]:=1
    'VW2':ReportVars[4]:=1
    'VE': ReportVars[5]:=1
    'RI1':ReportVars[7]:=1
    'RI2':ReportVars[7]:=1
    end;
    SRLRandomsReport;
    end;

    {----------------------------------------------------------------------------}

    procedure PlayersReport;
    var
    i:Integer;
    Co:Integer;
    Mind,Bankd:String;
    Active:String;
    a,b:String;
    Thing:String;
    MinLvlTxt:String;
    begin
    if(ScriptTime(2)<10)
    then
    A:='0'+inttostr(ScriptTime(2))
    if(ScriptTime(2)>9)
    then
    A:=inttostr(ScriptTime(2))
    if(ScriptTime(3)<10)
    then
    B:='0'+inttostr(ScriptTime(3))
    if(ScriptTime(3)>9)
    then
    B:=inttostr(ScriptTime(3))
    Writeln('------------------------------------------------------------')
    Writeln('| Multi City Miner & Banker By: Pentti |')
    Writeln('-----------------------------------------------------------|')
    for i:=0 to HowManyPlayers-1 do
    begin
    if(Players[i].Active)then
    Active:='in use, '
    else
    Active:='not in use, ';
    if(Players[i].Loc<>'')then
    Active:=Players[i].Loc
    Mind:='Mined '+inttostr(Players[i].Integer3)+' ores, ';
    Bankd:=inttostr(Players[i].Banked)+' Banks, ';
    if(Players[i].Integer3=0)then
    Mind:='';
    if(Players[i].Banked=0)then
    Bankd:=' ';
    MLvl:=Players[i].Integer4;
    MinLvlTxt:='M-lvl: '+inttostr(MLvl);
    if(MLvl=0)then
    MinLvlTxt:='';
    for Co:=0 to 58-(2+Length(inttostr(i))+Length(Players[I].Name)+4+Length(Active)+Length(Mind)+Length(Bankd) +Length(MinLvlTxt)) do
    begin
    Thing:=Thing+' ';
    end;
    writeln(Inttostr(I)+': '+Players[I].Name+' is '+Active+Mind+Bankd+MinLvlTxt+Thing+'|')
    Thing:=''
    end;
    Writeln('------------------------------------------------------------')
    writeln(' [Worked: '+inttostr(ScriptTime(1))+':'+A+':'+B+']')
    end;


    {----------------------------------------------------------------------------}

    Function WhereMining:String;
    begin
    case Players[CurrentPlayer].Ore of
    'LW': Result:='West Lumbridge';
    'LE': Result:='East Lumbridge';
    'VW1': Result:='West Varrock';
    'VW2': Result:='West Varrock';
    'VE': Result:='East Varrock';
    'RI1':Result:='Rimmington';
    'RI2': Result:='Rimmington';
    end;
    if(Players[Currentplayer].Boolean1)then
    Result:='Powermining';
    end;

    {----------------------------------------------------------------------------}

    procedure LoadneededGameTabs;
    begin
    GameTab(2)
    wait(750+random(250))
    GameTab(5)
    wait(750+random(250))
    GameTab(10)
    wait(750+random(250))
    GameTab(11)
    wait(750+random(250))
    end;

    {----------------------------------------------------------------------------}

    procedure TalkingToMeTXT;
    begin
    Case Random(10)+1 of
    1: TypeSend('Right...'+chr(13))
    2: TypeSend('What?'+chr(13))
    3: TypeSend('Sorry, i dont understand.'+chr(13))
    4: TypeSend('What do yuo want?'+chr(13))
    5: TypeSend('I have no time'+chr(13))
    6: TypeSend('I dont like you'+chr(13))
    7: TypeSend('You are getting my nervous'+chr(13))
    8: TypeSend('is it possible to be quit for 2 minutes?'+chr(13))
    9: TypeSend('yes? I am.'+chr(13))
    10: TypeSend('No, you again.'+chr(13))
    End;
    wait(5)
    end;

    {----------------------------------------------------------------------------}

    procedure TalkingToMe;
    begin
    if(Answer)then
    begin
    if(FindTalk)then
    Exit;
    wait(5+LowLag*100+random(6))
    if(not(Findcolor(x,y,65535,MCX1,MCY1,MCX2,MCY2)))t hen
    Exit;
    If(FindBitmapMaskTolerance(NickNameBmp, x, y, 100, 59, 500, 300, 0, 40)) then
    begin
    TalkingToMeTxt;
    CUAM:=CUAM+1
    GoingOn('Your Name has been spotted on the screen '+
    'and you answered.')
    if(CUAM>=3)then
    begin
    ClickToContinue;
    GoingOn('Someone was talking too much to you, logging out and coming back soon.')
    TypeSend('Nice to talk, but now gtg. See you! ')
    LogOut;
    Wait(25000+random(20000))
    LogInPlayer;
    CUAM:=0
    wait(500+random(300))
    end;
    end;
    wait(2)
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure GetPickColors;
    begin
    FindpickHeadColor;
    if(hc1=0)or(hc2=0)or(hc3=0)or(hc4=0)then
    begin
    GoingOn('You need a pickaxe to run with this script.')
    GoingOn('If you have a pick, please restart the script')
    LogOut;
    TerminateScript;
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure SolveFight;
    begin
    if(InFight)then
    begin
    if(GetHp<GetSkillLevel('hitpoints'))then
    begin
    MakeCompass('N')
    RunTo(RunDir,True)
    Fights:=Fights+1
    LogInPlayer;
    SetRun(True)
    end;
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure HowAreYouTodayMrX;
    var FindAcc:Boolean;
    AccName:String;
    begin
    if(TimeFromMark(TalkMark)/1000/60<=2)then
    Exit;
    MarkTime(TalkMark)
    if(UseTalk)then
    begin
    FindAcc:=False
    if(FindObj(x,y,'evel',2510975,11)) then
    FindAcc:=True
    else
    if(FindObj(x,y,'evel',8474379,11)) then
    FindAcc:=True
    else
    if(FindObj(x,y,'evel',4077094,11)) then
    FindAcc:=True
    else
    if(FindObj(x,y,'evel',4544837,11)) then
    FindAcc:=True
    else
    if(FindObj(x,y,'evel',1085071,11)) then
    FindAcc:=True
    else
    if(FindObj(x,y,'evel',8747097,11)) then
    FindAcc:=True;
    if(FindAcc=True) then
    GoingOn('Found random account to talk with:')
    else
    exit;
    begin
    ClickToContinue;
    AccName:=GetTextAtEx(77, 7, 100, UpChars, True, True, 0, 2, 14606047, 12, False, tr_AllChars)
    if(not(AccName=''))and(not(AccName=' '))then
    GoingOn('Account name is: '+AccName)
    if(AccName='')then
    Exit;
    else
    Case Random(35) of
    0: TypeSend('How are you '+AccName)
    1: TypeSend('Whats up '+AccName)
    2: TypeSend('You must be rich '+AccName)
    3: TypeSend(AccName+' Nice level')
    4: TypeSend('You are cool '+AccName)
    5: TypeSend('How are you doing '+AccName)
    6: TypeSend('Hello '+AccName)
    7: TypeSend('Hi '+AccName+' '+'')
    8: TypeSend('How old are you '+AccName)
    9: TypeSend('Where are you from '+AccName)
    10:TypeSend(AccName+' whats your mining lvl, my is '+inttostr(GetSkillLevel('Mining')))
    11:TypeSend('Nice pick '+AccName)
    12:TypeSend('Do you like your pick '+AccName)
    13:TypeSend(AccName+' how many '+Players[Currentplayer].String1+' ores you have?')
    14:TypeSend(AccName+' how many '+Players[Currentplayer].String2+' ores you have?')
    15:TypeSend(AccName+' how many '+Players[Currentplayer].String3+' ores you have?')
    16:typeSend(Accname+' Do you mine usually in '+WhereMining)
    17:typeSend(AccName+' You like to mine in '+Wheremining)
    18:typesend('I like to mine in '+WhereMining+', do you '+AccName+'?')
    19:TypeSend(AccName+' whats that pick?')
    20:TypeSend(AccName+' Can you mine some '+Players[Currentplayer].String1+' ores for me?')
    21:typeSend(AccName+' Can you mine some '+Players[Currentplayer].String2+' ores for me?')
    22:typeSend(AccName+' Can you mine some '+Players[Currentplayer].String3+' ores for me?')
    23:typesend(AccName+' Do you mine '+Players[Currentplayer].String1+' ores too?')
    24:TypeSend(AccName+' Do you mine '+Players[Currentplayer].String2+' ores too?')
    25:TypeSend(AccName+' Do you mine '+Players[Currentplayer].String1+' ores too?')
    26:typesend('I really need to smelt these '+Players[Currentplayer].String1+' ores soon.')
    27:TypeSend('I really need to smelt these '+Players[Currentplayer].String2+' ores soon.')
    28:TypeSend('I really need to smelt these '+Players[Currentplayer].String1+' ores soon.')
    26:typesend('I almost have '+inttostr(InvCount)+' '+Players[Currentplayer].String1+' ores, how many you got '+AccName+'.')
    27:TypeSend('I almost have '+inttostr(InvCount)+' '+Players[Currentplayer].String2+' ores, how many you got '+AccName+'.')
    28:TypeSend('I almost have '+inttostr(InvCount)+' '+Players[Currentplayer].String3+' ores, how many you got '+AccName+'.')
    29:TypeSend('Its nice day '+AccName+', isnt it?')
    30:TypeSend(Accname+', How much '+Players[Currentplayer].String1+' ores give xp?')
    31:TypeSend(Accname+', How much '+Players[Currentplayer].String2+' ores give xp?')
    32:TypeSend(Accname+', How much '+Players[Currentplayer].String3+' ores give xp?')
    33:TypeSend(AccName+', can you borrow me that pickaxe?')
    34:TypeSend('Let me buy your pickaxe '+AccName)
    end;
    end;
    end;
    end;

    {----------------------------------------------------------------------------}

    Function GetWallColor(Var x, y, WallColor:Integer):Boolean;
    var
    TheTol:Integer;
    begin
    TheTol:=5
    repeat
    wait(10)
    TheTol:=TheTol+1
    if(TheTol>=70)then
    begin
    Result:=False;
    Exit;
    end;
    until(FindColorTolerance(x,y,WallColor,MMX1,MMY1,M MX2,MMY2,TheTol))
    WallColor:=GetColor(x,y)
    if(WallColor<>0)then
    Result:=True;
    if(Result)then
    GoingOn('Wall color= '+inttostr(WallColor))
    else
    GoingOn('Couldnt get wall color. But we will still carry on!')
    end;

    {----------------------------------------------------------------------------}

    Function FindWall(var xx,yy:Integer; xs,ys,xe,ye:Integer):Boolean;
    begin
    RealWallColor:=15463657;
    if(GetWallColor(x,y,RealWallColor))then
    begin
    if(FindColor(x,y,RealWallColor,MMCX+(xs),MMCY+(ys) ,MMCX+(xe),MMCY+(ye)))then
    begin
    MMouse(x,y,0,0)
    getmousepos(xx,yy)
    Result:=True;
    end;
    end;
    end;

    procedure ScreenLoading;
    var
    LoadingSafeMark:Integer;
    begin
    if(FindColor(x,y,0,180,115,320,180))and
    FindColorTolerance(x,y,16777215,180,115,320,180,3) then
    begin
    MarkTime(LoadingSafeMark)
    GoingOn('Screen loading')
    repeat
    wait(300)
    until(not(FindColor(x,y,0,180,115,320,180)))and
    not(FindColorTolerance(x,y,16777215,180,115,320,18 0,3))
    or(TimeFromMark(LoadingSafeMark)>=10000)
    GoingOn('Screen loaded ['+inttostr(TimeFromMark(LoadingSafeMark))+'ms]')
    end;
    end;

    {----------------------------------------------------------------------------}
    {-----------------WALK TO MINE PROCEDURES------------------------------------}
    {----------------------------------------------------------------------------}

    procedure WalkToLW; {START OF LUMBRIDGE WEST}
    var
    i:Integer;
    begin
    //ROAD WALK
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaroadColor,120,100,60,0,-1)))then
    begin
    Mouse(680,110,4,4,true)
    wait(200)
    Flag;
    end;
    wait(20)
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,120,180,66,0,-1)))then
    begin
    Mouse(MMCX+10,MMCY+65,4,4,true)
    wait(200)
    Flag;
    end;
    wait(20)
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,120,200,67,0,-1)))then
    begin
    Mouse(MMCX+10,MMCY+45,4,4,true)
    wait(200)
    Flag;
    end;
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,120,220,50,0,-1)))then
    begin
    Mouse(MMCX+10,MMCY+50,4,4,true)
    wait(200)
    Flag;
    end;
    Flag;
    Wait(500)
    ScreenLoading;
    //WATER WALK
    DaRoadColor:=FindWaterColor
    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWaterColor
    if(not(RadialRoadWalk(DaRoadColor,100,150,60,0,-1)))then
    begin
    Mouse(690,120,4,4,True)
    Flag;
    end;

    for i:=0 to 4 do
    begin
    ScreenLoading;
    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWaterColor
    if(not(RadialRoadWalk(DaRoadColor,130,200,63,0,-1)))then
    begin
    Mouse(MMCX-2,MMCY+63,4,3,True)
    Flag;
    end;
    end;
    wait(1000)

    //WALK TO MINING SPOT
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x-8,y,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX+11,MMCY+40+random(16),4,4,True)
    wait(300)
    Flag;
    wait(500)
    end;
    wait(10)
    GoingOn('We are at West lumbridge mining spot')
    end;
    {END OF LUMBRIDGE WEST}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure WalkToLE; {START OF LUMBRIDGE EAST}
    var
    i:Integer;
    begin
    GoingOn('Going to East Lumbridge mining spot')
    DaRoadColor:=FindWatercolor;
    for i:=0 to 6 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWatercolor;
    if(not(RadialRoadWalk(DaRoadColor,60,160,63,-1,0)))then
    begin
    Mouse(MMCX+60,MMCY+3,3,3,True)
    Flag;
    end;
    end;
    ScreenLoading;
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y+8,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX+30,MMCY+5,4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;
    end;
    {END OF LUMBRIDGE EAST}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure WalkToVW1;
    var
    i:Integer;
    begin
    //if(not(RadialRoadWalk(FindRoadColor,110,165,60,-1,0)))then
    if(FindSymbol(x,y,'Anvil'))then
    begin
    Mouse(x+25,y-10,8,8,True)
    wait(200)
    Flag;
    Wait(500)
    end
    else
    begin
    Mouse(MMCX+60,MMCY+25,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    if(not(RadialRoadWalk(FindRoadColor,110,60,47,0,0) ))then
    begin
    Mouse(MMCX+40,MMCY+15,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    if(not(RadialRoadWalk(FindRoadColor,180,140,55,0,0 )))then
    begin
    Mouse(MMCX+30,MMCY+30,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    for i:=0 to 4 do
    begin
    ScreenLoading;
    if(not(RadialRoadWalk(FindRoadColor,160,200,45,0,0 )))then
    begin
    Mouse(MMCX,MMCY+45,4,4,true)
    wait(200)
    Flag;
    end;
    wait(500)
    end;
    Mouse(MMCX-30,MMCY+10,6,8,True)
    wait(200)
    Flag;
    wait(500)
    Mouse(MMCX-30,MMCY-15,4,4,true)
    wait(200)
    Flag;
    Mouse(MMCX-35,MMCY,4,4,true)
    wait(200)
    Flag;
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX-50,MMCY-15,4,4,True)
    wait(200)
    Flag;
    wait(200)
    end
    end;

    {----------------------------------------------------------------------------}

    procedure WalkToVW2;
    var
    i:Integer;
    begin
    if(not(RadialRoadWalk(FindRoadColor,240,265,50,1,0 )))then
    begin
    Mouse(MMCX-50,MMCY+35,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    for i:= 0 to 1 do
    begin
    if(FindWall(x,y,5,40,35,60))then
    begin
    Mouse(x-20,y+15,5,5,True)
    wait(200)
    Flag;
    end
    else
    begin
    Mouse(MMCX-5,MMCY+55,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;
    end;

    if(FindWall(x,y,25,40,65,65))then
    begin
    Mouse(x-20,y,5,5,True)
    wait(200)
    Flag;
    end
    else
    begin
    Mouse(MMCX+20,MMCY+55,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;

    if(FindWall(x,y,5,40,30,55))then
    begin
    Mouse(x-20,y+10,5,5,True)
    wait(200)
    Flag;
    end
    else
    begin
    Mouse(MMCX+10,MMCY+55,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;

    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y,3,3,True)
    wait(200)
    Flag;
    wait(300)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX,MMCY+35,4,4,True)
    wait(200)
    Flag;
    wait(300)
    end
    end;

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure WalkToVE;
    var
    I:Integer;
    begin
    DaRoadColor:=FindRoadColor;
    for i:= 0 to 1 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,95,20,60,-1,0)))then
    begin
    Mouse(MMCX+50,MMCY-10,4,4,true)
    wait(200)
    Flag;
    end;
    end;
    wait(100)
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,140,85,60,0,-1)))then
    begin
    Mouse(MMCX+15,MMCY+50,4,4,true)
    wait(400)
    Flag;
    end;
    wait(400)
    Flag;

    for i:= 0 to 3 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,160,200,60,0,-1)))then
    begin
    Mouse(MMCX+2,MMCY+55,4,4,true)
    wait(200)
    Flag;
    end;
    wait(50+random(100))
    end;
    wait(800)
    Flag;
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    ScreenLoading;
    if(not(RadialRoadWalk(DaRoadcolor,230,150,35,0,-1)))then
    begin
    Mouse(MMCX-15,MMCY+20,4,4,true)
    wait(200)
    Flag;
    end;
    wait(600)
    Flag;
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX-35,MMCY+30,4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;
    end;


    {----------------------------------------------------------------------------}
    {-----------------WALK TO BANK PROCEDURES------------------------------------}
    {----------------------------------------------------------------------------}

    procedure LWToBank; {START OF LUMBRIDGE WEST}
    var
    i:Integer;
    begin
    //WATER WALK

    if(Players[CurrentPlayer].Ore='LW')then
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x+13,y-10,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX+13,MMCY+10,4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;
    end;

    DaRoadColor:=FindWaterColor
    for i:=0 to 3 do
    begin
    ScreenLoading;
    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWaterColor
    if(not(RadialRoadWalk(DaRoadColor,45,-65,56,0,1)))then
    begin
    Mouse(MMCX-10,MMCY-56,4,4,True)
    Flag;
    end;
    end;

    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWaterColor
    if(not(RadialRoadWalk(DaRoadColor,330,275,55,0,1)) )then
    begin
    Mouse(MMCX-55,MMCY-35,4,4,True)
    Flag;
    end;
    wait(10)

    //ROAD WALK
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,-65,60,55,0,1)))then
    begin
    Mouse(617,28,4,4,true)
    Flag;
    end;

    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,-55,50,55,0,1)))then
    begin
    Mouse(610,50,4,4,true)
    Flag;
    end;

    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,-55,50,40,0,1)))then
    begin
    Mouse(630,45,4,4,true)
    Flag;
    end;

    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,210,350,45,0,1)) )then
    begin
    Mouse(MMCX-40,MMCY-45,4,4,true)
    Flag;
    end;
    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,270,350,45,0,1)) )then
    begin
    Mouse(MMCX-40,MMCY-45,4,4,true)
    Flag;
    end;
    end;
    {END OF LUMBRIDGE WEST}

    {----------------------------------------------------------------------------}

    procedure WalkToRI1; {START OF RIMMINGTON 1 (Draynor)}
    var
    i:Integer;
    begin
    if(not(RadialRoadWalk(FindRoadColor,310,235,55,1,0 )))then
    begin
    Mouse(MMCX-55,MMCY-15,3,3,True)
    Flag;
    end;

    if(FindWall(x,y,-55,-45,-35,-25))then
    begin
    Mouse(x+15,y-10,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX-30,MMCY-40,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;
    if(FindWall(x,y,-18,-35,-2,-15))then
    begin
    Mouse(x+10,y-8,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX+5,MMCY-35,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;

    if(not(RadialRoadWalk(FindRoadColor,-70,15,55,0,1)))then
    begin
    Mouse(MMCX-25,MMCY-30,3,3,True)
    Flag;
    end;
    wait(10)

    if(FindSymbol(x,y,'rare trees'))then
    begin
    GoingOn('Found Yew symbol')
    Mouse(x,y-12,4,4,True)
    wait(200)
    Flag;
    wait(500)
    end
    else
    begin
    GoingOn('Didnt Find Yew symbol')
    Mouse(MMCX-30,MMCY,5,5,True)
    wait(200)
    Flag;
    wait(500)
    end;

    DaRoadColor:=FindRoadColor;
    for i:=0 to 5 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,260,285,45,1,0)) )then
    begin
    Mouse(MMCX-45,MMCY-5,3,3,True)
    Flag;
    end;
    wait(10)
    end;

    for i:=0 to 2 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,180,260,40,1,0)) )then
    begin
    Mouse(MMCX-50,MMCY+25,3,3,True)
    Flag;
    end;
    wait(10)
    end;

    Mouse(MMCX+5,MMCY+30,5,5,True)
    wait(200)
    Flag;
    wait(500)
    ScreenLoading;
    Mouse(MMCX+5,MMCY+25,5,5,True)
    wait(200)
    Flag;
    wait(500)
    ScreenLoading;
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y,3,3,True)
    wait(200)
    Flag;
    wait(300)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX,MMCY+30+random(10),4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;

    end;
    {END OF RIMMINGTON 1}

    {----------------------------------------------------------------------------}

    procedure WalkToRI2; {START OF RIMMINGTON 2 (Falador)}
    begin

    end;
    {END OF RIMMINGTON 2}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure LEToBank; {START OF LUMBRIDGE EAST}
    var
    i:Integer;
    begin
    Mouse(MMCX-30,MMCY-30,3,3,True)
    Wait(100)
    Flag;
    Mouse(MMCX-35,MMCY+40,3,3,True)
    Wait(100)
    Flag;
    DaRoadColor:=FindWatercolor;
    for i:=0 to 3 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindWatercolor;
    if(not(RadialRoadWalk(DaRoadColor,320,210,65,1,0)) )then
    begin
    Mouse(MMCX-66,MMCY+8,3,10,True)
    Flag;
    end;
    wait(10)
    end;
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x+10,y-5,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX-30,MMCY-15+random(16),4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;
    GoingOn('We are at West Lumbridge mining spot')
    end;
    {END OF LUMBRIDGE EAST}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure VW1ToBank; {START OF VARROCK WEST 1}
    var
    i:Integer;
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x+15,y,3,3,True)
    wait(200)
    Flag;
    wait(300)
    end
    Mouse(MMCX+40,MMCY-10,8,8,True)
    Wait(200)
    Flag;
    if(not(RadialRoadWalk(FindRoadColor,100,160,35,0,0 )))then
    begin
    Mouse(MMCX+30,MMCY+15,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    Mouse(MMCX+47,MMCY,8,8,True)
    Wait(200)
    Flag

    if(not(RadialRoadWalk(FindRoadColor,35,90,60,0,0)) )then
    begin
    Mouse(MMCX+60,MMCY-15,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    if(not(RadialRoadWalk(FindRoadColor,-25,15,30,0,0)))then
    begin
    Mouse(MMCX-10,MMCY-15,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)

    for i:=0 to 3 do
    begin
    ScreenLoading;
    if(not(RadialRoadWalk(FindRoadColor,-20,20,48,0,0)))then
    begin
    Mouse(MMCX-45,MMCY,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    end;

    if(not(RadialRoadWalk(FindRoadColor,290,330,40,0,0 )))then
    begin
    Mouse(MMCX-35,MMCY-30,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    if(not(RadialRoadWalk(FindRoadColor,250,290,55,1,0 )))then
    begin
    Mouse(MMCX-55,MMCY-7,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    end;
    {END OF VARROCK WEST 1}

    {----------------------------------------------------------------------------}

    procedure VW2ToBank; {START OF VARROCK WEST 2}
    var
    i:Integer;
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x,y,3,3,True)
    wait(200)
    Flag;
    wait(300)
    end;
    Mouse(MMCX-30,MMCY-15,8,8,True)
    wait(200)
    Flag;
    Wait(500)
    Mouse(MMCX-10,MMCY-55,8,8,True)
    wait(200)
    Flag;
    Wait(500)
    Mouse(MMCX-10,MMCY-55,8,8,True)
    wait(200)
    Flag;
    Wait(500)
    for i:= 0 to 1 do
    begin
    if(FindWall(x,y,5,-60,30,-20))then
    begin
    Mouse(x-30,y-15,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX-5,MMCY-50,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;
    end;
    if(not(RadialRoadWalk(FindRoadColor,50,-10,40,-1,1)))then
    begin
    Mouse(MMCX+30,MMCY-40,4,4,true)
    wait(200)
    Flag;
    wait(500)
    end;
    wait(10)
    if(not(RadialRoadWalk(FindRoadColor,60,110,30,-1,1)))then
    begin
    Mouse(MMCX+30,MMCY-9,4,4,true)
    wait(200)
    Flag;
    wait(500)
    end;
    wait(10)
    end;
    {END OF VARROCK WEST 2}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure VEToBank; {START OF VARROCK EAST}
    var
    i:Integer;
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x+7,y-15,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    GoingOn('Mining symbol not found')
    Mouse(MMCX+5,MMCY-15+random(16),4,4,True)
    wait(200)
    Flag;
    wait(200)
    end;

    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,50,-10,60,0,1)))then
    begin
    Mouse(MMCX+25,MMCY-60,4,4,true)
    wait(200)
    Flag;
    end;
    wait(200)
    flag;

    for i:=0 to 2 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,35,-35,57,0,1)))then
    begin
    Mouse(MMCX+2,MMCY-55,4,4,true)
    wait(200)
    Flag;
    end;
    wait(5)
    end;

    for i:= 0 to 2 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaroadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,240,345,45,1,0)) )then
    begin
    Mouse(MMCX-55,MMCY-15,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    end;

    if(Not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor
    if(not(RadialRoadWalk(DaRoadColor,180,290,45,1,0)) )then
    begin
    Mouse(MMCX-45,MMCY+8,4,4,true)
    wait(200)
    Flag;
    end;
    wait(10)
    end;
    {END OF VARROCK EAST}

    {----------------------------------------------------------------------------}

    procedure RI1ToBank; {START OF RIMMINGTON 1}
    var
    i:Integer;
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    GoingOn('Found mining symbol.')
    Mouse(x+7,y-12,3,3,True)
    wait(200)
    Flag;
    wait(100)
    end
    else
    begin
    Mouse(MMCX-5,MMCY-15,8,8,True)
    wait(200)
    Flag;
    Wait(500)
    end;
    ScreenLoading;
    if(FindWall(x,y,-20,-55,20,-35))then
    begin
    Mouse(x+4,y,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX-7,MMCY-45,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;

    DaRoadColor:=FindRoadColor;
    for i:=0 to 2 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,85,-30,52,0,1)))then
    begin
    Mouse(MMCX+6,MMCY-50,3,3,True)
    Flag;
    end;
    wait(10)
    end;

    for i:=0 to 5 do
    begin
    ScreenLoading;
    if(not(FindMMColor(x,y,DaRoadColor)))then
    DaRoadColor:=FindRoadColor;
    if(not(RadialRoadWalk(DaRoadColor,110,60,52,0,1))) then
    begin
    Mouse(MMCX+50,MMCY-10,4,4,True)
    Flag;
    end;
    wait(10)
    end;
    ScreenLoading;
    if(not(RadialRoadWalk(DaRoadColor,105,85,25,0,1))) then
    begin
    Mouse(MMCX+25,MMCY-10,3,3,True)
    Flag;
    end;
    if(FindSymbol(x,y,'rare trees'))then
    begin
    GoingOn('Found Yew symbol')
    Mouse(x+8,y-5,4,4,True)
    wait(200)
    Flag;
    wait(500)
    end
    else
    begin
    if(FindColortolerance(x,y,1122377,MMX1,MMY1,MMX2,M MY2-25,3))then
    if(FindColorTolerance(x,y,353047,x-10,y-10,x+10,y+10,3))then
    if(FindColorTolerance(x,y,353047,x-6,y-6,x+6,y+6,3))then
    begin
    GoingOn('Didnt find Yew symbol, but found similar colors to yew symbol.')
    Mouse(x+5,y-8,4,4,True)
    wait(200)
    flag;
    end
    else
    begin
    GoingOn('Didnt find Yew symbol')
    Mouse(MMCX+30,MMCY,5,5,True)
    wait(200)
    Flag;
    wait(500)
    end;
    ScreenLoading;
    end;

    if(not(RadialRoadWalk(FindRoadColor,75,115,35,0,1) ))then
    begin
    Mouse(MMCX+30,MMCY+5,3,3,True)
    Flag;
    end;
    wait(10)
    ScreenLoading;
    if(not(RadialRoadWalk(FindRoadColor,75,115,30,0,1) ))then
    begin
    Mouse(MMCX+30,MMCY+5,3,3,True)
    Flag;
    end;
    wait(20)
    flag;
    if(FindWall(x,y,-5,35,40,50))then
    begin
    Mouse(x+17,y+12,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX+30,MMCY+45,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;

    if(FindWall(x,y,-5,35,20,50))then
    begin
    Mouse(x+17,y+12,5,5,True)
    wait(200)
    Flag;
    Wait(500+random(400))
    end
    else
    begin
    Mouse(MMCX+5,MMCY+50,5,5,True)
    wait(200)
    Flag;
    Wait(500)
    end;
    ScreenLoading;
    if(not(RadialRoadWalk(FindRoadColor,125,145,40,-1,0)))then
    begin
    Mouse(MMCX+50,MMCY+35,3,3,True)
    Flag;
    end;
    wait(10)

    end;
    {END OF RIMMINGTON 1}

    {----------------------------------------------------------------------------}

    procedure RI2ToBank; {START OF RIMMINGTON 2}
    begin

    end;
    {END OF RIMMINGTON 2}

    {----------------------------------------------------------------------------}
    {----------------------------------------------------------------------------}

    procedure WalkToMine;
    begin
    case Players[CurrentPlayer].Ore of
    'LW': WalkToLW;
    'LE': begin WalkToLW; WalkToLE; end;
    'VW1': WalkToVW1;
    'VW2': WalkToVW2;
    'VE': WalkToVE;
    'RI1': WalkToRI1;
    'RI2': WalkToRI2;
    end;
    end;

    {----------------------------------------------------------------------------}

    procedure WalkToBank;
    begin
    case Players[CurrentPlayer].Ore of
    'LW': LWToBank;
    'LE': begin LEToBank; LWToBank; end;
    'VW1': VW1ToBank;
    'VW2': VW2ToBank;
    'VE': VEToBank;
    'RI1': RI1ToBank;
    'RI2': RI2ToBank;
    end
    end;

    {----------------------------------------------------------------------------}

    Procedure SetOreColor;
    Begin
    Case Players[CurrentPlayer].String1 Of
    'Clay':OreColorOne:=ClayColor;
    'Copper':OreColorOne:=CopperColor;
    'Tin':OreColorOne:=TinColor;
    'Silver':OreColorOne:=SilverColor;
    'Coal':OreColorOne:=CoalColor;
    'Iron':OrecolorOne:=IronColor;
    'Gold':OrecolorOne:=GoldColor;
    'Mithril':OreColorOne:=MithrilColor;
    'Adamantite':OreColorOne:=AdamantiteColor;
    End;
    Case Players[CurrentPlayer].String2 Of
    'Clay':OreColorTwo:=ClayColor;
    'Copper':OreColorTwo:=CopperColor;
    'Tin':OreColorTwo:=TinColor;
    'Iron':OrecolorTwo:=IronColor;
    'Gold':OrecolorTwo:=GoldColor;
    'Silver':OreColorTwo:=SilverColor;
    'Coal':OreColorTwo:=CoalColor;
    'Mithril':OreColorTwo:=MithrilColor;
    'Adamantite':OreColorTwo:=AdamantiteColor;
    End;
    Case Players[CurrentPlayer].String3 Of
    'Clay':OreColorThree:=ClayColor;
    'Copper':OreColorThree:=CopperColor;
    'Tin':OreColorThree:=TinColor;
    'Silver':OreColorThree:=SilverColor;
    'Iron':OrecolorThree:=IronColor;
    'Gold':OrecolorThree:=GoldColor;
    'Coal':OreColorThree:=CoalColor;
    'Mithril':OreColorThree:=MithrilColor;
    'Adamantite':OreColorThree:=AdamantiteColor;
    End;
    End;

    {----------------------------------------------------------------------------}

    Function GetChatMessage:String;
    Begin
    Result:=GetTextAtEx(20, 415, 0, SmallChars, False,False, 0, 1, 0, 80, False, tr_AllChars);
    End;

    Function YouSwing:Boolean;
    Begin
    Result:=(Pos('swing',GetChatMessage)<>0)
    End;

    Function Youmanage:Boolean;
    Begin
    Result:=(Pos('manage',GetChatMessage)<>0)
    End;

    Function NoOre:Boolean;
    Begin
    Result:=(Pos('no',GetChatMessage)<>0)
    End;

    {----------------------------------------------------------------------------}

    Procedure ChangeOre;
    begin
    Case Random(3) of
    0: CurrentRockColor:=OreColorOne
    1: begin if(random(2)=1)then CurrentRockColor:=OreColorTwo
    else CurrentRockColor:=OreColorOne end;
    2: begin if(random(3)=1)then CurrentRockColor:=OreColorThree
    else CurrentRockColor:=OreColorTwo end;
    end;
    end;

    Function InLumby:Boolean;
    var Sx,Sy:Integer;
    begin
    if(LumbyDetect)then
    begin
    if(FindSymbol(Sx,Sy,'Water'))and
    FindSymbol(Sx,Sy,'Cook')and
    FindSymbol(Sx,Sy,'Guide')and
    FindSymbol(Sx,Sy,'Quest')then
    Result:=True
    else
    if(FindSymbol(Sx,Sy,'Water'))and
    FindSymbol(Sx,Sy,'Guide')then
    Result:=True
    else
    if(FindSymbol(Sx,Sy,'Cook'))and
    FindSymbol(Sx,Sy,'Water')then
    Result:=True
    if(Result=True)then
    begin
    Players[CurrentPlayer].Loc:='In Lumbridge, ';
    GoingOn(Players[CurrentPlayer].Name+' Is in Lumbridge; next player.')
    NextPlayer(False)
    end;
    end;
    end;

    Function PlayerTimeOut:Boolean;
    begin
    if(not(UseTimeOut))then
    Exit;
    PlayerTimeOutMark:=(GetSystemTime/1000/60)-PlayerStartTime2/1000/60;
    if(PlayerTimeOutMark>=MaxTime)then
    begin
    Players[CurrentPlayer].Loc:='Time out, ';
    if(not(LoggedIn))then
    begin
    Result:=True;
    GoingOn('Player not logged in, next player')
    NextPlayer(False)
    exit;
    end;
    Result:=True;
    GoingOn('Player time out. ['+inttostr(PlayerTimeOutMark)+' minutes.] ')
    NextPlayer(False)
    end;
    end;

    procedure SolveGas;
    begin
    getmousepos(x,y)
    if(GasCheck(x,y-15))then
    begin
    Mouse(MMCX+5,MMCY+5,2,2,true)
    case random(4) of
    0:TypeSend('Lol gas, argh')
    1:TypeSend('Damn, gas again')
    2:TypeSend('Is that gas in the rock?')
    3:TypeSend('Hope that gas goes soon away.')
    end;
    HighestAngle;
    FtWait(40)
    Exit;
    end;
    end;

    {----------------------------------------------------------------------------}

    Function Clicked:Boolean;
    begin
    getmousepos(x,y)
    if(FindColor(x,y,255,x-8,y-8,x+8,y+8))then
    Result:=True;
    end;

    {----------------------------------------------------------------------------}

    procedure RotateIt;
    begin
    wait(50)
    case Random(5) of
    0: begin
    KeyDown(VK_Left)
    wait(350+random(500))
    KeyUp(VK_Left)
    end;

    1: begin
    KeyDown(VK_Right)
    wait(350+random(500))
    KeyUp(VK_Right)
    end;
    2: begin
    KeyDown(VK_Down)
    wait(50+random(500))
    KeyUp(VK_Down)
    end;

    3: begin
    KeyDown(VK_Up)
    wait(50+random(500))
    KeyUp(VK_Up)
    end;
    4: Highestangle;
    end;
    wait(50)
    end;

    {----------------------------------------------------------------------------}

    Procedure MineFullLoad;
    begin
    FixChat;
    ChangeOre;
    if(random(2)=1)then
    if(not(FindPick))then
    Exit;
    if(random(5+LowLag*3)=1)then
    if(FindNewBox)then
    SolveBox;
    wait(20)
    If(FindObj(x,y,'ine',CurrentRockColor,5))then
    begin
    RockNotFound:=0
    TotalRocksMissed:=0
    wait(4)
    SolveGas;
    if(random(9)=1)then
    begin
    Mouse(x,y,2,2,False)
    ClickOption('ine',1)
    wait(6+random(6))
    if(not(Clicked))then
    Exit;
    end
    else
    Begin
    Mouse(x,y,2,2,True)
    wait(6+random(6))
    if(not(Clicked))then
    Exit;
    end;
    Flag;
    wait(1000+random(500))
    FindPick;
    if(not(YouSwing))or(NoOre)then
    begin
    Wait(100+random(50))
    if(random(15)=1)then
    Wait(2000+random(2000))
    Exit;
    end;
    MarkTime(MiningMark)
    SolveGas;
    Repeat
    if(random(3+LowLag*1)=1)then
    SolveFight;
    wait(10+random(11))
    if(random(20)=1)then
    GI('ores')
    if(random(12+LowLag*3)=1)then
    TalkingToMe;
    wait(10+random(11))
    If(YouManage)then
    Break;
    if(random(30)=1)then
    SRLRandomsReport;
    if(Random(15)=1)then
    HowAreYouTodayMrX;
    HandleTrade;
    wait(10+random(11))
    if(random(12+LowLag*4)=1)then
    SayLevel('Mining')
    If(YouManage)then
    Break;
    if(random(3+LowLag)=1)then
    FindNormalRandoms;
    wait(10+random(11))
    if(random(5)=1)then
    if(not(FindPick))then
    Exit;
    wait(10+random(11))
    If(YouManage)then
    Break;
    until(TimeFromMark(MiningMark)/1000>=MiningWait)
    end
    else
    begin
    RockNotFound:=RockNotFound+1
    if(random(2+LowLag)=1)then
    FindNormalRandoms;
    if(random(5)=1)then
    FindDemon;
    wait(100+random(300))
    if(random(2)=1)then
    begin
    Mouse(MIX1+4,MIY1-60,7,7,True)
    RotateIt;

    if(RockNotFound>=3)then
    begin
    if(Players[CurrentPlayer].Ore='RI1')or
    (Players[CurrentPlayer].Ore='RI2')then
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    RockNotFound:=0
    TotalRocksMissed:=TotalRocksMissed+1
    GoingOn('Found mining symbol.')
    Mouse(x-random(35)+random(35),y-random(35)+random(35),5,5,True)
    wait(200)
    Flag;
    wait(300)
    end;
    end
    else
    begin
    If(FindSymbol(x,y,'Mining spot'))then
    begin
    RockNotFound:=0
    TotalRocksMissed:=TotalRocksMissed+1
    GoingOn('Found mining symbol.')
    Mouse(x-random(8)+random(8),y-random(8)+random(8),3,3,True)
    wait(200)
    Flag;
    wait(300)
    end;
    end;
    end;

    end;
    Wait(500+random(200))
    Exit;
    end;
    Wait(10+random(20))
    if(random(3)=1)then
    SetChat('Hide',1)
    if(random(30)=1)then
    begin
    Mouse(MIX1+4,MIY1-60,7,7,True)
    wait(20)
    MakeCompass('N');
    Highestangle;
    end;
    DwarfItem;
    end;

    {----------------------------------------------------------------------------}

    Function OresMined:Integer;
    var
    OreBmp:Integer;
    HowMany:Integer;
    begin
    OreBmp := BitmapFromString(11, 11, 'z78DA73730301033070436' +
    '2238B60024C35B84CC0A5923C13F0BB937813F0EB22DE04CC 5022' +
    'CF04CADD404CC890EA0BFCE2F85D4E4C6A212FF470998FCC0 600F' +
    'B599CC1');
    HowMany:=CountItemBmpMaskTol(Orebmp, 20, 25)
    FreeBitMap(OreBmp)
    if(HowMany<15)then
    Result:=28
    else
    Result:=HowMany;
    end;

    Function TotalOresMined:String;
    var
    i:Integer;
    PMines:Integer;
    begin
    for i:=0 to howmanyplayers-1 do
    begin
    PMines:=Players[i].Integer3+PMines;
    end;
    Result:=Inttostr(PMines);
    end;

    {----------------------------------------------------------------------------}

    Procedure DropTheOres;
    var
    OreBmp:Integer;
    Mspeed:Integer;
    begin
    DwarfItem;
    GoingOn('Now dropping '+inttostr(OresMined)+' ores.')
    OreBmp := BitmapFromString(11, 11, 'z78DA73730301033070436' +
    '2238B60024C35B84CC0A5923C13F0BB937813F0EB22DE04CC 5022' +
    'CF04CADD404CC890EA0BFCE2F85D4E4C6A212FF470998FCC0 600F' +
    'B599CC1');
    Mspeed:=MouseSpeed;
    MouseSpeed:=2
    repeat
    if(random(3)=1)then
    FindNormalRandoms;
    if(random(4)=1)then
    SolveFight;
    If(FindBitMapMaskTolerance(OreBmp,x,y,MIX1,MIY1,MI X2,MIY2,20,25))then
    begin
    MMouse(x,y,15,15)
    getmousepos(x,y)
    wait(50+random(50))
    if(IsUpText('ore'))then
    begin
    Mouse(x,y,0,0,False)
    ClickOption('Drop',2)
    end
    else
    begin
    Mouse(MIX1+4,MIY1-60,7,7,True)
    RotateIt;
    end;
    end;
    wait(500+random(500))
    until(not(FindBitMapMaskTolerance(OreBmp,x,y,MIX1, MIY1,MIX2,MIY2,20,25)))
    MouseSpeed:=MSpeed;
    end;

    {----------------------------------------------------------------------------}

    Function GetBankSymbolColor:LongInt;
    var BankBitMap,Color,C:Integer;
    acc:Extended;
    begin
    BankBitMap := BitmapFromString(7, 5, 'z78DA3330000143030363' +
    '43635CA401921A08DBD9D8D1D8D40899C4AFC6CDD2C5C4D41 5531' +
    '7A61A4CD2C2D4CCD4D014590D4404998D4C0200CC4A2C81') ;
    Color:=6417151
    FindDeformedBitmapToleranceIn(BankBitmap,x,y,570,5 ,725,160,70,0,True,acc);
    if(acc>SymbolAccuracy)then
    begin
    repeat
    c:=c+5;
    if (FindColorTolerance(x,y,6417151,x,y,x+15,y+5,c)) then
    begin
    Result:=GetColor(x,y);
    end;
    until(Result>0)or(c>70);
    end;
    FreeBitmap(BankBitMap);
    end;

    {----------------------------------------------------------------------------}

    procedure CheckBankColor;
    var c : integer;
    begin
    BankColor:=0
    c:=0
    Flag;
    repeat
    BankColor:=GetBankSymbolColor
    c:= c+1;
    wait(150+random(100))
    GoingOn('Taken '+inttostr(c)+'/20 tries to find bank')
    if(BankColor=0)
    then begin
    KeyDown(VK_Left)
    wait(180)
    KEyUp(VK_Left)
    wait(50)
    end;
    until(BankColor>0)or(c>19)
    if(c>19)then
    begin
    BanksFailed:=BanksFailed+1;
    if(BanksFailed>=5)then //Exits if fails bank 5 times.
    Exit;
    c:=0
    GoingOn('Cant find bank symbol');
    GoingOn('Logging out and coming back')
    LogOut;
    wait(5000+random(2000))
    LogInPlayer;
    wait(500+random(300))
    checkbankcolor;
    SetRun(True)
    Mouse(x+3,y+6,2,2,true)
    getmousepos(x,y)
    GoingOn('Bank color: '+inttostr(BankColor))
    exit;
    end;
    C:=0
    Mouse(x+1,y+5,0,0,true)
    getmousepos(x,y)
    GoingOn('Bank color: '+inttostr(BankColor))
    wait(50+random(50))
    Flag;
    wait(50+random(50))
    end;

    {----------------------------------------------------------------------------}

    procedure OpenBankP;
    var
    x, y, fs, fs2,Find: Integer;
    begin
    if(BanksFailed>=5)then
    Exit;
    Players[CurrentPlayer].Loc:='at bank, ';
    if(not(loggedin))then
    begin
    NextPlayer(False)
    SetOreColor;
    NickNameBmp:=CreateBitMapMaskFromText(Players[CurrentPlayer].Nick,upChars)
    GetPickColors;
    Exit;
    end;
    if not BankScreen then
    begin
    checkBankColor;
    repeat
    if(Find>5)
    then
    begin
    Find:=0
    CheckBankColor;
    wait(200)
    flag;
    OpenBankP;
    exit;
    end;
    Find:=Find+1
    if (FindObjMultiText(x, y,'Use','u Ba','ank',7443621,10)) then
    Mouse(x,y,0,0,False)
    else
    if (FindObjMultiText(x,y,'Use','u Ba','ank', 608609,10)) then
    Mouse(x,y,0,0,False)
    else
    if (FindObjMultiText(x,y,'Use','u Ba','ank', 3107204,10)) then
    Mouse(x,y,0,0,False);
    Wait(250+random(100));
    if (ClickOption('quickly', 1)) then
    begin
    Flag;
    repeat
    Wait(100+random(150));
    fs := fs + 1;
    until(BankScreen)or(fs >= 50);
    end;
    fs2 := fs2 + 1;
    if(fs2>2)
    then begin
    fs2:=0
    checkbankcolor;
    wait(150+random(100))
    getmousepos(x,y)
    Mouse(x+3,y+6,2,2,true)
    OpenBankP;
    exit;
    end;
    until (BankScreen)or(fs2 > 2);
    MakeCompass('N')
    HighestAngle;
    exit;
    end;
    end;

    {----------------------------------------------------------------------------}

    Procedure BankOres;
    begin
    OpenBankP;
    if(BanksFailed>=5)then
    Exit;
    FixBank;
    Deposit(2,28,2);
    GoingOn('All ores banked');
    CloseBank;
    CloseBank;
    Banks:=Banks+1
    end;

    {----------------------------------------------------------------------------}

    procedure CountUser;
    begin
    if(LoadSetting('Pentti','User')='')then
    begin
    SaveSetting('Pentti','User','1')
    ReportVars[8]:=1;
    end;
    end;

    procedure TurnOffLumbyDetect;
    begin
    if(InLumby)then
    begin
    GoingOn(' Looks like you are already in Lumbridge,')
    GoingOn(' Turning off Lumbridge detector.')
    LumbyDetect:=False;
    end;
    end;

    Procedure ThisIsScriptSetUp;
    var
    MinType:String;
    begin
    NewLine:='';
    SetUpSRL;
    SetUpSRLMining;
    ClearDebug;
    GoingOn('Script starting...')
    if(YourSRLID<>'')then
    SRLID:=YourSRLID;
    if(YourSRLPass<>'')then
    SRLPassword:=YourSRLPass;
    if(SRLID='')or
    (SRLPassword='')then
    begin
    ClearDebug;
    Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')Wait(1000)cleardebug;wait(100)Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')wait(400)cleardebug;wait(100)Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')wait(200)cleardebug;wait(100)Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')wait(100)cleardebug;wait(100)Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')wait(50)cleardebug;wait(100)Writeln('Please register at SRL stats at http://Stats.srl-forums.com/')wait(2500)
    end;
    if(ReduceLag)then
    LowLag:=2;
    SetArrayLength(Players,15)
    DeclarePlayers;
    HowManyplayers:=15;
    CurrentPlayer:=StartPlayer;
    FileReport;
    ScriptID:='91'
    CountUser;
    OresCorrect;
    PlacesCorrect;
    SRLRandomsReport;
    ChangeReportWidth(350)
    PlayersReport;
    wait(2000)
    SetOreColor;
    cleardebug;
    if(Players[CurrentPlayer].Boolean1)then
    MinType:='powermine'
    else
    MinType:='mine';
    Status('Script by Pentti')
    Writeln('Ores to '+MinType+' at '+WhereMining+':')
    Writeln(' *'+Players[StartPlayer].String1)
    Writeln(' *'+Players[StartPlayer].String2)
    Writeln(' *'+Players[StartPlayer].String3)
    wait(1500)
    writeln('')
    Writeln('Script by Pentti')
    disguiseScar('By: Pentti')
    wait(1000)
    ActivateClient;
    MouseSpeed:=MouseSpeedS
    BenMouse:=UseBenMouse;
    LogInPlayer;
    wait(1000+random(500))
    MakeCompass('N')
    HighestAngle;
    LumbySet;
    LumbyCheck:=LumbyDetect;
    LoadneededGameTabs;
    end;

    {----------------------------------------------------------------------------}

    procedure MainLoop;
    begin
    TurnOffLumbyDetect;
    Brightness;
    FuckYouYouFuckingAutoretailiate;
    Players[CurrentPlayer].Integer4:=GetSkillLevel('Mining')
    NickNameBmp:=CreateBitMapMaskFromText(Players[CurrentPlayer].Nick,upChars)
    PlayerStartTime2:=GetSystemTime;
    RockNotFound:=0
    TotalRocksMissed:=0
    GetPickColors;
    MarkTime(TalkMark)
    MarkTime(ItemMark)
    FindNormalRandoms;

    {MINING AND BANKING LOOP}
    if(not(Players[CurrentPlayer].Boolean1))then
    begin
    SetOreColor;
    Writeln('- - - - - - - - - - - - - - - - - - - - - - - - - - ')
    writeln('')
    GoingOn(' Starting Trip Number: '+inttostr(Loads+1))
    Mouse(MIX1+4,MIY1-60,10,10,True)
    wait(200)
    SetChat('Hide',1)
    wait(20)
    makecompass('N')
    HighestAngle;
    wait(20)
    MakeCompass('N')
    SetRun(True)
    GoingOn('Walking to mining place.')
    ReportPlaces;
    WalkToMine;
    Players[CurrentPlayer].Loc:='at '+WhereMining+' mine, ';
    PlayersReport;
    SRLRandomsReport;
    repeat
    MineFullLoad;
    if(not(loggedin))then
    begin
    GoingOn(Players[CurrentPlayer].Name+' not logged in. Changing to next player.')
    Players[CurrentPlayer].Loc:='Lost, ';
    NextPlayer(False)
    PlayersReport;
    SRLRandomsReport;
    Exit;
    end;
    if(PlayerTimeOut)then
    Exit;
    if(random(5+LowLag*3)=1)then
    if(InLumby)Then
    Exit;
    FindPick;
    if(not(FindPick))then
    begin
    Players[CurrentPlayer].Loc:='No pick ,';
    NextPlayer(False)
    Exit;
    end;
    if(TotalRocksMissed>=15)or(RockNotFound>=45)then
    begin
    Players[CurrentPlayer].Loc:='No rocks, ';
    PlayersReport;
    NextPlayer(False)
    Exit;
    end;
    until(InvFull)
    Players[CurrentPlayer].Integer4:=GetSkillLevel('Mining')
    ReportVars[0]:=OresMined;
    Players[CurrentPlayer].Integer3:=Players[CurrentPlayer].Integer3+OresMined;
    GoingOn('You just mined '+inttostr(OresMined)+' ores.')
    SetRun(False)
    GoingOn('Walking to bank')
    SRLRandomsReport;
    Mouse(MIX1+4,MIY1-60,7,7,True)
    wait(200)
    MakeCompass('N')
    wait(20)
    MakeCompass('N')
    WalkToBank;
    BankOres;
    if(BanksFailed>=5)then
    begin
    GoingOn(Players[CurrentPlayer].Name+' failed bank 5 times; next player')
    Players[CurrentPlayer].Loc:='Bank failed, ';
    BanksFailed:=0
    NextPlayer(False)
    exit;
    end;
    BanksFailed:=0
    ReportVars[1]:=1
    Players[CurrentPlayer].Banked:=Players[CurrentPlayer].Banked+1
    Players[CurrentPlayer].Integer2:=Players[CurrentPlayer].Integer2+1
    SRLRandomsReport;
    GoingOn(Players[CurrentPlayer].Name+' has mined '+inttostr(Players[CurrentPlayer].Integer3)+' ores.')
    GoingOn('And done '+inttostr(Players[CurrentPlayer].Banked)+' bank trips.')
    if(Players[CurrentPlayer].Integer2>=Players[Currentplayer].Integer1)then
    begin
    PlayersReport;
    Players[CurrentPlayer].Integer2:=0
    LogOut;
    wait(10000+random(20000))
    NextPlayer(True)
    end;
    Loads:=Loads+1
    PlayersReport;
    GoingOn('Total bank runs done: '+inttostr(Loads))
    GoingOn('Total ores mined: '+TotalOresMined)
    end;

    {----------------------------------------------------------------------------}

    {POWERMINING LOOP}
    if(Players[CurrentPlayer].Boolean1)then
    begin
    SetOreColor;
    Writeln('- - - - - - - - - - - - - - - - - - - - - - - - - - ')
    SetChat('Hide',1)
    Players[CurrentPlayer].Loc:='Powermining, ';
    PlayersReport;
    SetRun(True)
    SRLRandomsReport;
    ReportPlaces;
    repeat
    MineFullLoad;
    if(not(loggedin))then
    begin
    GoingOn(Players[CurrentPlayer].Name+' not logged in. Changing to next player.')
    Players[CurrentPlayer].Loc:='Lost, ';
    NextPlayer(False)
    PlayersReport;
    SRLRandomsReport;
    Exit;
    end;
    if(PlayerTimeOut)then
    Exit;
    if(random(5+LowLag*3)=1)then
    if(InLumby)Then
    Exit;
    FindPick;
    if(not(FindPick))then
    begin
    Players[CurrentPlayer].Loc:='No pick ,';
    NextPlayer(False)
    Exit;
    end;
    if(TotalRocksMissed>=15)or(RockNotFound>=45)then
    begin
    Players[CurrentPlayer].Loc:='No rocks, ';
    PlayersReport;
    NextPlayer(False)
    Exit;
    end;
    until(InvFull)
    Players[CurrentPlayer].Integer4:=GetSkillLevel('Mining')
    ReportVars[0]:=OresMined;
    Players[CurrentPlayer].Integer3:=Players[CurrentPlayer].Integer3+OresMined;
    GoingOn('You just mined '+inttostr(OresMined)+' ores.')
    Players[CurrentPlayer].Integer2:=Players[CurrentPlayer].Integer2+1
    SRLRandomsReport;
    GoingOn(Players[CurrentPlayer].Name+' has mined '+inttostr(Players[CurrentPlayer].Integer3)+' ores.')
    DropTheOres;
    if(Players[CurrentPlayer].Integer2>=Players[Currentplayer].Integer1)then
    begin
    PlayersReport;
    Players[CurrentPlayer].Integer2:=0
    LogOut;
    Writeln('- - - - - - - - - - - - - - - - - - - - - - -')
    writeln('')
    wait(10000+random(20000))
    NextPlayer(True)
    end;
    Loads:=Loads+1
    PlayersReport;
    GoingOn('Total loads done: '+inttostr(Loads))
    GoingOn('Total ores mined: '+TotalOresMined)
    end;
    LumbyDetect:=LumbyCheck;
    end;

    begin
    Writeln('Starting...')
    ThisIsScriptSetUp;
    Repeat
    MainLoop;
    Until(Loads>=HowManyLoads)
    PlayersReport;
    SRLRandomsReport;
    LogOut;
    TerminateScript;
    end.

    any help is helpful

  2. #2
    Join Date
    Dec 2006
    Location
    .̿̂̔͋͗̎̆ͥ̍̒ͤ͂̾̌̀̅
    Posts
    3,012
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    "Pentti's Multi City Miner & Banker" Your mining bot?

  3. #3
    Join Date
    Jun 2007
    Posts
    3
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by GoF View Post
    "Pentti's Multi City Miner & Banker" Your mining bot?
    no
    (h)

  4. #4
    Join Date
    Jan 2007
    Location
    Toronto.
    Posts
    150
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Make sure:

    • You have the brightness setting at very high.
    • You have set your computer to 32bit TrueColor.
    • Download the latest version of whatever script your using.


    If nothing works just try another one.

  5. #5
    Join Date
    May 2006
    Posts
    1,230
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    u got to be pretty retarded if you think this is your script
    SCAR Code:
    # ScriptName = Pentti's Multi City Miner & Banker

  6. #6
    Join Date
    Feb 2007
    Location
    Het ademt zwaar en moedeloos vannacht.
    Posts
    7,211
    Mentioned
    26 Post(s)
    Quoted
    72 Post(s)

    Default

    lol, your busted
    I made a new script, check it out!.

  7. #7
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    no its my little bros friend who spent the night... they tried getting it to work while i was gone cuase they see my auto all the time...and yes.. he is a n00b .. so i will help him ................. oh and rs monkey.. he was thinking the bot was his char.

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  8. #8
    Join Date
    Jun 2006
    Location
    USA
    Posts
    1,828
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    Hi 12 beau 12!
    ...FUCK YOU!
    Please DO NOT post this script here like this, also wtf is this what you said:
    this is my script.. if you find any problems with it please dumb it down if possible.. im not at all high tech
    Also this:
    HI EVERYONE Heres a problem with my mining bot
    right i got my bot to work but i have a few problems .
    Fuck you... Go home.
    Thanks!

  9. #9
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    yea im kinda pist at this dude to... he opend some of my scar scripts and stole my 20m and also dropped all my mem shit so i had NOTHING.. and if a mod or admin could ip check him and see if it matches mine and pm if it does or doesnt i would greatly aprreaciate it....

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  10. #10
    Join Date
    Dec 2006
    Location
    Sweden
    Posts
    10,812
    Mentioned
    3 Post(s)
    Quoted
    16 Post(s)

    Default

    lol he has username/pass lister in there.. I tried changing pass but it says invalid some leecher changed it. Cause he posted script here, I hope it was a great account! (sorry, I am mean)


    Send SMS messages using Simba
    Please do not send me a PM asking for help; I will not be able to help you! Post in a relevant thread or make your own! And always remember to search first!

  11. #11
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    all i want is an ip check.... becuase i called the little shit and he said he didnt know what i was talking about...... and i KNOW he is lying

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  12. #12
    Join Date
    Dec 2006
    Location
    Sweden
    Posts
    10,812
    Mentioned
    3 Post(s)
    Quoted
    16 Post(s)

    Default

    SO he hacked you?

    BAN HIM SOMEONE!


    Send SMS messages using Simba
    Please do not send me a PM asking for help; I will not be able to help you! Post in a relevant thread or make your own! And always remember to search first!

  13. #13
    Join Date
    Jun 2007
    Location
    Indiana
    Posts
    153
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

  14. #14
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    hy... yes he did... and all i freaking want is the ip so i can confirm it.. would a mod/admin PLZ pm me the ip or at least if mine and his are the same

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  15. #15
    Join Date
    Dec 2006
    Location
    Sweden
    Posts
    10,812
    Mentioned
    3 Post(s)
    Quoted
    16 Post(s)

    Default

    If I know this dude, *BAM* stop hurtin wired16!! Or i'll hurt y00!!


    Send SMS messages using Simba
    Please do not send me a PM asking for help; I will not be able to help you! Post in a relevant thread or make your own! And always remember to search first!

  16. #16
    Join Date
    Jun 2006
    Location
    USA
    Posts
    1,828
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    12 beau 12, Ill make sure in my scripts new update that
    YOU cant use it, thanks to my new cool system in it...

  17. #17
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    plz dont ban the ip addy... cuase it was prolly mine... and a mod STILL hasnt told me if his ip is the same..

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  18. #18
    Join Date
    Dec 2006
    Location
    .̿̂̔͋͗̎̆ͥ̍̒ͤ͂̾̌̀̅
    Posts
    3,012
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Lol.. Just kick his ass if you know it's him Worth 20m. Pentti, I doubt it's necessary to block his ip. if he fails to run the script.

  19. #19
    Join Date
    Jun 2007
    Posts
    7
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    wired why would he have the same IP as you?

  20. #20
    Join Date
    Dec 2006
    Location
    Copy pastin to my C#
    Posts
    3,788
    Mentioned
    8 Post(s)
    Quoted
    29 Post(s)

    Default

    Go home
    Damit I love those two (or 3 if the one is added) everytime anyone says that

    P.S plz tell me that ur new system is that thingy I made(Kicks noobs below cmb lvl 20 comps asse)?

  21. #21
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    drake.. if you read my ...second i think.. post it would tell you... but so you dont have to do any scrolling... becuase it is my lil bro's friend who got on my comp when i wasnt there .... so we would have the same ip addy

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  22. #22
    Join Date
    Dec 2006
    Location
    .̿̂̔͋͗̎̆ͥ̍̒ͤ͂̾̌̀̅
    Posts
    3,012
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Quote Originally Posted by n3ss3s View Post
    Damit I love those two (or 3 if the one is added) everytime anyone says that

    P.S plz tell me that ur new system is that thingy I made(Kicks noobs below cmb lvl 20 comps asse)?
    I'm quite sure he means the ip. checking system so he can ban ip.'s from using his scripts...

    @Drake, wasn't that said multiple times He just wants a mod/admin to confirm it for him so he can prove that the idiot stole something from him.

  23. #23
    Join Date
    Jun 2006
    Location
    USA
    Posts
    1,828
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by GoF View Post
    Pentti, I doubt it's necessary to block his ip. if he fails to run the script.
    If I remember right, I told on my MCMB thread something like not to post this script anywhere...
    Quote Originally Posted by n3ss3s View Post
    Damit I love those two (or 3 if the one is added) everytime anyone says that

    P.S plz tell me that ur new system is that thingy I made(Kicks noobs below cmb lvl 20 comps asse)?
    Quote Originally Posted by GoF View Post
    I'm quite sure he means the ip. checking system so he can ban ip.'s from using his scripts...
    Some php + SCAR code, IP saving to text log + IP check + one other thing check...

    It is nice very system

  24. #24
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    penetti.. plz dont ban my ip becuase he fucked up.. i know he is NEVER getting back on my computer agian.. or my laptop...fucking PRICK... cant believe he stole all my stuff....

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  25. #25
    Join Date
    May 2006
    Posts
    1,230
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    don't let pentti get your ip :P

Page 1 of 2 12 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Several things I need help on.
    By Torrent of Flame in forum OSR Help
    Replies: 4
    Last Post: 03-03-2008, 09:29 PM
  2. Help with 2 things...
    By ShapeShifter in forum OSR Help
    Replies: 4
    Last Post: 11-10-2007, 07:39 PM
  3. am i seeing things...
    By Dark_Sniper in forum Discussions & Debates
    Replies: 6
    Last Post: 05-17-2006, 02:01 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •