Results 1 to 3 of 3

Thread: Leo's coffins :SSSS

  1. #1
    Join Date
    Jan 2009
    Location
    Belgium
    Posts
    175
    Mentioned
    0 Post(s)
    Quoted
    14 Post(s)

    Default Leo's coffins :SSSS

    im getting a strange error lol :/

    Line 414: [Error] (16169:9): Unknown identifier 'Leo_AnalyzeCoffin2' in script C:\Program Files\SCAR 3.22\includes\SRL\SRL\Core\AntiRandoms\Leo.scar

    my code:

    Code:
    program MapleSnijder;
    {.include SRL/SRL.scar}
    
    var
     Maple, Knife, MapleLongBow: Integer;
    
    procedure DeclarePlayers;
    begin
     HowManyPlayers := 1;
     NumberOfPlayers(HowManyPlayers);
     CurrentPlayer := 0;
    
     Players[0].Name := '';
     Players[0].Pass := '';
     Players[0].Nick := '';
     Players[0].Active := True;
     Players[0].Pin := '';
    end;
    
    procedure AntiBan;
    begin
      if(not(LoggedIn)) then
        Exit;
      Writeln('Performing AntiBan...');
      case Random(20) of
        1, 14, 18           : Hoverskill('Fletching', False);
        2, 6, 13            : BoredHuman;
        3, 15, 17           : PickUpMouse;
        4, 16               : RandomRClick;
        5, 9, 10, 11, 12, 8 : MMouse(Random(600), Random(600), 50, 50);
        7, 19               : MouseSpeed := RandomRange(10, 13);
      end;
    end;
    
    function LoadDTMs(Which: Integer): Integer;
    begin
      case Which of
        // Knife
        0:  Result := DTMFromString('78DA63E4636060006124901013C3C00AA4198' +
             '1F83F10307263AA61606002938C501E23489E8D801A6120C14C40' +
             '8D0811E680DC2346400DC80C59026A5880843401359C404210BF1' +
             'A008F760632');
    
        // Maple
        1:  Result := DTMFromString('78DA631460606010624001D1D6BC0CFC409A1' +
           '188FF0301231B90C1C3800698C0242394C7C80C24F88950234440' +
           '0DC82E31026A406E9124A0460248881250A308240409A89101125' +
           'C04D4C802090E026AE48084087E3500DA3A0651');
    
        // Maple Longbow
        2:  Result := DTMFromString('78DA631466606010604001A9D1E10CFC409A1' +
           '188FF030123489E8F010D30814946288F510248881050230E24C4' +
           '09A8910212D204D480E46509A8110212BC04D4F01356030002B80' +
           '684');
      else
        Writeln('Invalid Integer in LoadDTMs.');
      end;
    end;
    
    function GetMapleFromBank : Boolean;
    var
     x, y : Integer;
    begin
      OpenBankFast('vwb');
      if (BankScreen) then
      if(FindDTM(LoadDTMs(1), x, y, MSX1, MSY1, MSX2, MSY2))then
      begin
        Writeln('Found Maple in bank!');
        MMouse(x, y, 2, 2);
        if WaitUpText('ple lo', 2000) then
        Mouse(x, y, 0, 0, False);
        Wait(500 + Random(100));
        ChooseOption('Withdraw-27');
        CloseWindow;
        Wait(200 + Random(100));
        Result := FindDTM(LoadDTMs(1), x, y, MIX1, MIY1, MIX2, MIY2);
        Writeln('Found Maple in inventory, moving on!');
        FreeDTM(Maple);
       end else
        WriteLn('Couldn''t Find Maple In Bank');
        Result := False;
    end;
    
    function CutMaple: Boolean;
    var
     x, y: Integer;
    begin
      if(FindDTM(LoadDTMs(0), x, y, MIX1, MIY1, MIX2, MIY2))then
      begin
       Writeln('Found Knife in inventory!');
       Mouse(x, y, 1, 1, True);
       if(FindDTM(LoadDTMs(1), x, y, MIX1, MIY1, MIX2, MIY2))then
       begin
        Mouse(x, y, 1, 1, True);
        MouseBox(MCX1, MCY1, MCX2, MCY2, 2);
        ChooseOption('Make X');
        Wait(100 + Random(200));
        TypeSend('27');
        Wait(10000 + Random(5000));
        Result := CountItemsIn('inv', 'dtm', LoadDTMs(2), []) = 27;
      end else
        Writeln('Could not find Knife in inventory');
        Result := False;
        FreeDTM(LoadDTMs(0));
        FreeDTM(LoadDTMs(1));
        FreeDTM(LoadDTMs(2));
      end;
    end;
    
    
    procedure DepositMapleLongBows;
    var
     x, y: Integer;
    begin
     OpenBankFast('vwb');
     if (BankScreen) then
      if FindDTM(Maple, x, y, MIX1, MIY1 ,MIX2, MIY2) then
      begin
       Mouse(x, y, 1, 1, False);
       ChooseOption('Deposit-27');
       Wait(1000);
       if not FindDTM(Maple, x, y, MSX1, MSY1, MSX2, MSY2) then
         Writeln('We have deposited 27 longbows!')
       else
         Writeln('We did not have deposited 27 longbows.');
      end;
    end;
    
    procedure MainLoop;
    begin
     SetupSRL;
     ActivateClient;
     DeclarePlayers;
     ClearDebug;
     if(GetMapleFromBank)then
      Writeln('We have withdrawed the Maple logs!')
     else
      Writeln('We have not withdrawed the Maple logs.');
     Wait(1000 + Random(500));
     AntiBan;
     if(CutMaple)then
      Writeln('We have cutted Maple longbows!')
     else
      Writeln('We did not have cutted Maple longbows.');
     Wait(1000);
     DepositMapleLongBows;
     AntiBan;
    end;
    
    begin
      MainLoop;
    end.
    code from leo:

    Code:
    {*******************************************************************************
    function Leo_BuryCoffins: Boolean;
    By: Nielsie95 and SKy Scripter
    Description: Finds the coffins, identifies, and puts them in the right grave.
    *******************************************************************************}
    
    function Leo_BuryCoffins: Boolean;
    var
      i, c, f, x, y, bmp_Coffin: Integer;
      p: TPointArray;
      t: T2DPointArray;
      b: TBox;
      IDTwice, BuryTwice: Boolean;
      GraveStone: string;
      Coffins : array [0..4] of record
        Inv: Integer;
        Name: string;
      end;
    label
      IDCoffins;
    begin
      bmp_Coffin := BitmapFromString(17, 5, 'beNpjYGQAAUYIivPVifLSAqI' +
               'wd40gZzUggkmhAcb8aJOcSGMIyggzTA3Wn9WgsX2GgakOH8QENF01' +
               'aVaVyZZAVJpoDkQre3WOLTXZM9cQqP3COjOg9sQAPaDtcJcAtdRn2' +
               'AB1QRBQI9B8oMaiODO41RB7gRohCKgrNS6uKdsWrhFuHZouuEYGAG' +
               'sCPyY=');
      IDCoffins:
      f := 0;
      ColorToleranceSpeed(1);
      if (CountItems('bmp', bmp_Coffin, [30]) < 5) then
      begin
        if (not Leo_FixInv) then
        begin
          WriteLn('Could not clear inventory for Leo!');
          FreeBitmap(bmp_Coffin);
          Exit;
        end;
        Leo_GrabCoffins;
      end;
      if (CountItems('bmp', bmp_Coffin, [30]) < 5) then
      begin
        WriteLn('Could not find all coffins!');
        FreeBitmap(bmp_Coffin);
        Exit;
      end;
    
      for i := 1 to 28 do
      begin
        if (not ExistsItem(i)) then Continue;
        b := InvBox(i);
        if (FindBitmapToleranceIn(bmp_Coffin, x, y, b.x1, b.y1, b.x2, b.y2, 30)) then
          with Coffins[f] do
          begin
            Inv := i;
            Name := 'error';
            c := GetSystemTime;
            while (Name = 'error') and ((GetSystemTime - c) < (30 * 1000)) do
            begin
              if (GetColor(460, 30) <> 39423) then
                Mouse(x + 6, y + 7, 6, 7, true);
              Leo_WaitForScreen;
              Wait(500);
              try
                Name := Leo_AnalyzeCoffin2(GetClientCanvas.Handle);
              except end;
              if (Random(2) = 0) or (Name <> 'error') then
                CloseWindow;
            end;
            if (Name <> 'error') then
            begin
              WriteLn('Coffins('+IntToStr(f)+'): '+Name);
              Inc(f);
            end;
          end;
      end;
    
      for i := 0 to 4 do
      begin
        for c := 0 to 4 do
          if (i <> c) then
            if (Coffins[i].Name = Coffins[c].Name) then Break;
        if (c < 5) then Break;
      end;
    
      if ((f <> 5) or (i < 5)) then
        if (not IDTwice) then
        begin
          IDTwice := True;
          WriteLn('Could not identify all coffins, trying again!');
          Leo_ToCenter;
          goto IDCoffins;
        end else
        begin
          WriteLn('Could not identify all coffins!');
          FreeBitmap(bmp_Coffin);
          Exit;
        end;
    
      f := 0;
      c := 0;
      Leo_ToCenter;
      ColorToleranceSpeed(2);
    
      while (c < 5) and (f < 5) do
      begin
        SetColorSpeed2Modifiers(0.15, 0.15);
        FindColorsTolerance(p, 6513515, MSX1, MSY1, MSX2, MSY2, 3);
        SetColorSpeed2Modifiers(0.1, 0.2);
        t := SplitTPAEx(p, 15, 30);
        SortATPAFromFirstPoint(t, Point(MSCX, MSCY));
        for i := 0 to High(t) do
        begin
          if (Length(t[i]) < 50) then Continue;
          b := GetTPABounds(t[i]);
          if not (InRange(b.x2 - b.x1, 25, 65) and InRange(b.y2 - b.y1, 50, 120)) then Continue;
          if (CountColorTolerance(3563122, b.x1 + 10, b.y1 + 10, b.x2 -10, b.y2 -10, 13) > 5) then Continue;
          MMouse(b.x1 + 16, b.y1 + 5, 5, 10);
          Wait(200 + Random(150));
          if IsUpText('Read') then
          begin
            GetMousePos(x, y);
            Mouse(x, y, 0, 0, True);
            b.x1 := (b.x1 + b.x2) shr 1;
            b.y1 := ((b.y1 + b.y2) shr 1);
            Leo_FollowGrave(b.x1, b.y1);
            Leo_WaitForScreen;
            if (GetColor(460, 30) <> 39423) then
            begin
              Leo_WaitForScreen;
              if (GetColor(460, 30) <> 39423) then
                Break;
            end;
            GraveStone := 'error';
            x := GetSystemTime;
            while (GraveStone = 'error') and ((GetSystemTime - x) < (30 * 1000)) do
            begin
              Wait(500);
              try
                GraveStone := Leo_AnalyzeGraveStone2(GetClientCanvas.Handle);
              except end;
            end;
            CloseWindow;
            if (GraveStone <> 'error') then
            begin
              WriteLn(GraveStone);
              for x := 0 to 4 do
                if (Coffins[x].Name = GraveStone) and (Coffins[x].Inv > 0) then
                begin
                  MouseItem(Coffins[x].Inv, False);
                  Wait(250 + Random(150));
                  if (not ChooseOption('Use')) then Continue;
                  if Leo_ClickNearestGrave(b.x1, b.y1) then
                  begin
                    Inc(c);
                    Coffins[x].Inv := -1;
                    Break;
                  end
                  else
                    MouseItem(Coffins[x].Inv, True);
                end;
              if (x > 4) then
              begin
                x := -100;
                y := -100;
                Break;
              end;
            end;
            Break;
          end;
        end;
    
        if (x = -100) and (y = -100) then
          Break;
        if (i > High(t)) then
        begin
          Leo_ToCenter;
          Inc(f);
        end;
      end;
    
      if (x = -100) and (y = -100) then
        if (not BuryTwice) then
        begin
          BuryTwice := True;
          WriteLn('Could not identify all graves, trying again!');
          goto IDCoffins;
        end else
          WriteLn('Could not identify all graves!');
    
      Result := (c = 5) and (x > -100);
      FreeBitmap(bmp_Coffin);
    end;
    any help??

  2. #2
    Join Date
    Jul 2008
    Location
    Poland
    Posts
    375
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    move your plugins :P
    :P

  3. #3
    Join Date
    Jan 2009
    Location
    Belgium
    Posts
    175
    Mentioned
    0 Post(s)
    Quoted
    14 Post(s)

    Default

    thanks xD

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
  •