Results 1 to 2 of 2

Thread: So Close! - Compiling errors

  1. #1
    Join Date
    Feb 2012
    Location
    DON'T PM ME ASKING FOR STUFF
    Posts
    2,170
    Mentioned
    38 Post(s)
    Quoted
    423 Post(s)

    Default So Close! - Compiling errors

    It's late and I want this finished! haha :P any help would be appreciated

    Simba Code:
    program xtraivy;

    {$DEFINE SMART}
    {$i SRL\SRL.simba}
    {$i SRL/SRL/skill/woodcutting.simba}
    {$i sps/sps.simba}

      {♠===================================================================♠

         Instructions:
         1. Start by IVY (This script was written for CastleWars but it should work
              elsewhere.
         2. Make sure hatchet is equiped
         3.Leave bot to work it's magic
         4. Check every now and again as Simba hasn't done all Randoms!

          ♠XtraIVY♠

          ♠Release Date♠: 17/02/2012

          ♠Author♠: xtrapsp

          ♠Support♠: [url]http://villavu.com/forum/showthread.php?t=75528[/url]

        Changelog:
          06/03/2012 - Theres been a huge SRL Update so I'm learning source. Tweaking parts of code!
          23/02/2012 - Changed around with the Nest Settings
          20/02/2012 - Cleaned up script a bit + Setup script for addons
          17/02/2012 - Chopping done.
          18/02/2012 - Added Various antiban.
          19/02/2012 - Added elements which aren't in use yet.


      ♠===================================================================♠}


     Const
     SRLStats_Username = '';
     SRLStats_Password = '';
     NumbOfPlayers=      1;
     StartPlayer=        0;
     Debug = True;


    procedure DeclarePlayers;

    begin
      HowManyPlayers := 1;
      NumberOfPlayers(HowManyPlayers);
      CurrentPlayer  := 0;

      with Players[0] do
      begin
        Name := '';
        Pass := '';
        Nick := '';
        Pin  := '';
        BoxRewards := ['amp'];
        lampSkill := SKILL_WOODCUTTING;
        Member := True;
        Active := True;
      end;
    end;

    Procedure Bank;
    begin
        begin
        OpenBankChestEdge(SRL_BANK_CW);
        Until(BankScreen);
            begin
                  DepositAll;
            end;
        end;
    end;

    Procedure Banking;
    var
    myPath:TPointArray;
      begin
        Writeln('Attempting to walk to bank in Castle Wars');
        SPS_Setup(RUNESCAPE_SURFACE,['3_10','4_10']);//SPS Areas
        myPath :=[  Point(1503, 4368), Point(1564, 4365), Point(1606, 4366),
                    Point(1635, 4355), Point(1643, 4324), Point(1648, 4300),
                    Point(1645, 4286), Point(1628, 4279), Point(1605, 4280),
                    Point(1595, 4309), Point(1575, 4280), Point(1597, 4311)];//Path
      SPS_WalkPath(myPath);
      While (IsMoving) do
      Bank;
      end;

    Procedure AFK;
    begin
      if not loggedIn then Exit;
        Case Random (100) Of
        1..15 : Wait(1000 + Random (3050));
        16..24 : Wait (1340 + Random (1093));
        25..45: Wait (1211 + Random (6000));
        46..47: Wait (20000 + Random (10000)); // This looks like you've gone to get a drink
        end;
    end;

    function MyFindBirdsNest: Boolean; // Modified from VineVanguisher
    var
      x, y, i: Integer;
      TileArray: array [0..5] of TPoint;
      BirdLine, ChopLine: Integer;
    begin
      if Debug then Writeln('Looking for a birds nest');
      BirdLine:= -1;
      ChopLine:= -1;
      for i:=8 downto 1 do
        if (Pos('A bird', GetChatBoxText(i, 255))<>0) then
          begin
            BirdLine:= i;
            AFK;
          end;
      if (BirdLine = -1) then
        Exit;
      if Debug then Writeln('Found uptext for nests');
      for i:=8 downto 1 do
        if (Pos('wing you', GetChatBoxText(i, clMessage))<>0) then
        begin
          ChopLine:= i;
          Break;
        end;
      if (ChopLine < BirdLine) then
        begin
        if Debug then Writeln('Havent Chopped the vines yet');
        for i:=0 to 5 do
          TileArray[i]:= GridCoords(Point((i mod 3)-2, i div 3));
        for i:=0 to 5 do
          begin
          MMouse(TileArray[i].x-5, TileArray[i].y-5, 11, 11)
          if WaitUptextMulti(['ake B', 'Bird', 'nest'], 1000) then
            begin
            GetMousePos(x, y);
            if Debug then Writeln('Found a birds nest!');
            Mouse(x, y, 0, 0, True);
            Result:= True;
            AFK;
            Exit;
            end;
          end;
        if FindObjEx(x, y, ['ake B', 'Bird', 'nest'], [2767422, 2961972, 3818051], 5, 50, 191, 149, 354, 252) then
        begin
          Mouse(x, y, 0, 0, True);
          Result:= True;
          Wait(1500+Random(500))
          Exit;
        end;
      end;
      if Debug then Writeln('Finished looking for a birds nest');
    end;

    procedure CheckSRLStats;
    begin
        if ((SRLStats_Username= '') and (SRLStats_Password = '')) then
          begin
            case MessageBox('No Stats account entered, would you like to register?','SRL Stats',mbYesNoCancel) of
              mrYes:
                begin
                  OpenWebPage('http://stats.villavu.com/register');
                  TerminateScript;
                end;
              mrNo:
                begin
                  SetupSRLStats(837, 'Anonymous', 'anon1337');
                  Exit;
                end;
              mrCancel: TerminateScript;
            end;
          end else
        SetupSRLStats(837, SRLStats_Username, SRLStats_Password);
    end;

    procedure x_Stats_Commit;
    var
    Gained: Integer;
    begin
      stats_IncVariable('Woodcutting EXP', (Gained));
      Stats_Commit;
      Writeln('Updated SRL Stats')
    end;

    Procedure ProgressReport;
      var
        startEXP, newExp, Gained : Integer;
    begin
        startExp := Players[CurrentPlayer].Integers[0];
        newExp := GetXPBarTotal;
        Gained := newExp - startExp;
        WriteLn('Exp gained: ' + ToStr(Gained));
        x_Stats_Commit;
    end;



    {♠===================================================================♠}

    ////////////////////////////////////////////////////////////////////////////////
    ////////////AutoColour Feature (I'm British I spell it like Colour)/////////////

    function IVYColour: Integer;
    var
      arP: TPointArray;
      arC: TIntegerArray;
      tmpCTS, i, arL: Integer;
    begin
      tmpCTS := GetColorToleranceSpeed;
      ColorToleranceSpeed(2);
      SetColorSpeed2Modifiers(0.03, 0.08);

      if not (FindColorsTolerance(arP, 4619873, MSX1, MSY1, MSX2, MSY2, 10)) then
      begin
        Writeln('Failed to find the color, no result.');
        ColorToleranceSpeed(tmpCTS);
        SetColorSpeed2Modifiers(0.2, 0.2);
        Exit;
      end;

      arC := GetColors(arP);
      ClearSameIntegers(arC);
      arL := High(arC);

      for i := 0 to arL do
      begin
        Result := arC[i];
        Writeln('AutoColor = ' + IntToStr(arC[i]));
        Break;
      end;

      ColorToleranceSpeed(tmpCTS);
      SetColorSpeed2Modifiers(0.2, 0.2);

      if (i = arL + 1) then
        Writeln('AutoColor failed in finding the color.');
    end;
    ////////////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////////////


    function Nestcolour: Integer;
    var
      arP: TPointArray;
      arC: TIntegerArray;
      tmpCTS, i, arL: Integer;
    begin
      tmpCTS := GetColorToleranceSpeed;
      ColorToleranceSpeed(2);
      SetColorSpeed2Modifiers(0.39, 0.74);

      if not (FindColorsTolerance(arP, 2964028, MSX1, MSY1, MSX2, MSY2, 10)) then
      begin
        Writeln('Failed to find the nest, cannot pickup.');
        ColorToleranceSpeed(tmpCTS);
        SetColorSpeed2Modifiers(0.2, 0.2);
        Exit;
      end;

      arC := GetColors(arP);
      ClearSameIntegers(arC);
      arL := High(arC);

      for i := 0 to arL do
      begin
        Result := arC[i];
        Writeln('AutoColor = ' + IntToStr(arC[i]));
        Break;
      end;

      ColorToleranceSpeed(tmpCTS);
      SetColorSpeed2Modifiers(0.2, 0.2);

      if (i = arL + 1) then
        Writeln('Failed to find the nest, cannot pickup.');
    end;

    procedure Chop;
    var
      X, Y: Integer;
    begin
      if not LoggedIn then
        Exit;
      FindNormalRandoms;

      SetColorToleranceSpeed(2);
      SetColorSpeed2Modifiers(0.02, 0.07);

      if FindObj(X, Y, 'Iv', 4619873, 8) then
      begin
        mouse( x, y, 2, 2, true);
        wait(687 + random(15000))
        MMouse( x, y, 10, 10);
      end;

      (* We revert back to the defaults here. *)
      SetColorSpeed2Modifiers(0.2, 0.2);
      SetColorToleranceSpeed(1);

      if InvFull Then
      begin
      Banking;
      end;
    end;

    Procedure StatsGuise(wat:String); // Thanks YoHoJo
    Begin
      Status(wat);
      Disguise(wat);
    End;

    Procedure Antiban_Upgrade;
    var
      I: Integer;
      CurrentCompassDegree: Extended;
    begin
      I := Random(1000);
      StatsGuise('AntiBan');

      case (I) of
        0..99 :
          begin
            GameTab(tab_Stats);
            HoverSkill('Woodcutting', False);
            GameTab(28);
          end;
        100..200 :
          begin
            SleepAndMoveMouse(7000 + Random(500));
            MakeCompass(CurrentCompassDegree-18+Random(32));
          end;
        200..210 :
          begin
            GameTab(Tab_Stats);
            MakeCompass(CurrentCompassDegree-2+Random(34));
            Wait(3000 + Random(500));
            GameTab(28);
          end;
        211..220 :
          begin
            BoredHuman;
            MakeCompass('N')
          end;
        221..300 :
          begin
          GameTab(Tab_Stats);
          Wait(100 + Random(1000));
          end;
      end;
    end;

    Procedure FindNest_old;
    var
      X, Y: Integer;
    Begin
      if not LoggedIn then
        Exit;
      FindNormalRandoms;

      If FindObjCustom(x, y, ['Ne', 'st'], [3290938,3883332], 5) Then
      begin
        Mouse( x, y, 2, 2, True);
        Writeln('Found a nest... Attempting to pickup');
        MakeCompass(10 + random(50));
      end;
    End;

    Procedure X_FindNest; ///FINISH THIS WHEN YOU HAVE A NEST
    var
      X, Y, Colour: Integer;
    begin
      if not LoggedIn then
        Exit;
      FindNormalRandoms;
      Colour := NestColour;

      if FindObj(X, Y, 'Nes', NestColour, 10) then
      begin
        mouse( x, y, 2, 2, true);
      end;

      If Not FindObj (X, Y, 'Nes', NestColour, 10) then
      begin
        Chop;
      end;
    end;

    Procedure FindEmptyNest; //Probably not needed. It's a procedure incase the script drops a nest randomly?
    var
      X, Y, EmptyNest: Integer;
    Begin
      if not LoggedIn then
        Exit;
      FindNormalRandoms;

      EmptyNest := DTMFromString('mlwAAAHicY2dgYMhmZGDIAuI4IE4B4nwgLgfiIiCew8TAsByIFwDxDCCeDsTzoGKeHhYMjo4WDN7ejkC2PYObmxmDjY0Gg56eBgM+wIgHQwEA+fEMeg==')

      If FindDTM(EmptyNest, X, Y, MSX1, MSY1, MSX2, MSY2) Then
        Begin
        Writeln('Found a nest... Attempting to pickup');
        MMouse (x, y, 5, 5);
        MakeCompass(0 + random(50));

        If IsUpText('nes') Then
        Mouse(x, y, 0, 0, True);
        End;
      FreeDTM(EmptyNest);
    End;


    Procedure X_CrushNest;
    var
      X, Y, CrushNest: Integer;
    Begin
      if not LoggedIn then
        Exit;
      FindNormalRandoms;

      CrushNest := DTMFromString('mggAAAHicY2NgYOADYiEgFgNiGSDmZYAATijNCGULQWkTAw0gyYSBuRiwA0YcGAIAboABOg==')

      If FindDTM(CrushNest, X, Y, MIX1, MIY1, MIX2, MIY2) Then
      Begin
        Writeln('Found a nest inside Inventory, Attempting to crush');
        MMouse (x, y, 5, 5);

        If IsUpText('cru') Then
          Mouse(x, y, 0, 0, True);
      End;

      FreeDTM(CrushNest);
    End;

    Procedure Joincommunity;
      begin
        case MessageBox('While the bot is running, would you like to browse our other scripts?','Community Site',mbYesNoCancel) of
              mrYes:
                begin
                  OpenWebPage('http://bot.lizardguru.com');
                end;
              mrNo:
                begin
                  Exit;
                end;
              mrCancel: TerminateScript;
            end;
    end;

    Procedure W2IVY;
    var
    myPath:TPointArray;
      begin
        Writeln('Attempting to walk to back to IVY');
        SPS_Setup(RUNESCAPE_SURFACE,['3_10','4_10','3_11']);//SPS Areas
        myPath := [Point(1592, 4279), Point(1635, 4279), Point(1645, 4314),
                   Point(1647, 4351), Point(1594, 4385), Point(1543, 4410),
                   Point(1517, 4372), Point(1534, 4368), Point(1505, 4370),
                   Point(1519, 4369), Point(1522, 4372), Point(1514, 4375),
                   Point(1509, 4372), Point(1518, 4372), Point(1510, 4365),
                   Point(1528, 4373), Point(1519, 4369)];
        SPS_WalkPath(myPath);
      end;

    begin
      SetupSRL;
      //Joincommunity;
      DeclarePlayers;
      //CheckSRLStats;
      LoginPlayer;
      ToggleXPBar(True);
      Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
      Writeln('Your using XtraIvy V 1.00');
      Writeln('Please report any bugs on the thread');
      Writeln('Thanks for using the most flawless IVY script on Simba :)');


      Repeat
        FindNormalRandoms;
        Banking;
        Chop;
        MyFindBirdsNest;
        Antiban_Upgrade;
        AFK;
        //X_CrushNest;
        //ProgressReport;
      until(Not LoggedIn);
    End.

    Why wont it compile? My brains giving up :P

  2. #2
    Join Date
    Nov 2011
    Location
    MA
    Posts
    545
    Mentioned
    3 Post(s)
    Quoted
    10 Post(s)

    Default

    Missing a repeat, change Bank to
    Simba Code:
    Procedure Bank;
    begin
        begin
          repeat
            OpenBankChestEdge(SRL_BANK_CW);
          Until(BankScreen);
            begin
                  DepositAll;
            end;
        end;
    end;

Thread Information

Users Browsing this Thread

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

Posting Permissions

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