Results 1 to 6 of 6

Thread: ANOTHER error with my script...

  1. #1
    Join Date
    Nov 2007
    Location
    UK
    Posts
    242
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default ANOTHER error with my script...

    Well, here is my script
    SCAR Code:
    program Willow_Chopper;
    {.include SRL/SRL/Misc/Smart.scar}
    {.include srl/srl.scar}
    {.include srl/srl/skill/woodcutting.scar}
      var
      frmDesign : TForm;
      Username : TEdit;
      Password : TEdit;
      SmartWorld : TEdit;
      TreeBaseColor : TEdit;
      Start : TButton;
      Loads : TEdit;
      x , y , cx , cy , i , TreesChopped , loadsdone : Integer;
      loadz : string;
      TreeBaseColor1 : String;

    const
    ///Set up your colors below///
    WillowColor1 = 4487022;

    CurrentVersion  =  '2.0';// no need to change this

    yourSRLID='';

    yourSRLPW='';

    WillowColor2 = 4480100;

    BoothColor1 = 739167;//You have to set these colors If it cannot find the bank booth

    BoothColor2 = 671057;

    SmartWorldNumber = 125;

    Procedure SetupFormz(sender: tobject);
    begin
      HowManyPlayers := 1;
      NumberOfPlayers(HowManyPlayers);
      CurrentPlayer := 0;

      Players[0].Name := Username.text;
      Players[0].Pass := Password.text;
      Players[0].Active :=True;
      Loads.text := loadz;
      TreeBaseColor.Text := TreeBaseColor1;
      FrmDesign.ModalResult := Mrok;

    end;

    Procedure InitForm;
    begin
    frmDesign := CreateForm;
    frmDesign.Left := 656;
    frmDesign.Top := 223;
    frmDesign.Width := 220;
    frmDesign.Height := 248;
    frmDesign.Caption := 'Willow Chopper';
    frmDesign.Color := clBtnFace;
    frmDesign.Font.Color := clWindowText;
    frmDesign.Font.Height := -14;
    frmDesign.Font.Name := 'MS Sans Serif';
    frmDesign.Font.Style := [];
    frmDesign.Visible := False;
    frmDesign.PixelsPerInch := 120;
    Username := TEdit.Create(frmDesign);
    Username.Parent := frmDesign;
    Username.Left := 8;
    Username.Top := 8;
    Username.Width := 113;
    Username.Height := 24;
    Username.TabOrder := 8;
    Username.Text := 'Username';
    Password := TEdit.Create(frmDesign);
    Password.Parent := frmDesign;
    Password.Left := 8;
    Password.Top := 48;
    Password.Width := 113;
    Password.Height := 24;
    Password.TabOrder := 9;
    Password.Text := 'Password';
    TreeBaseColor := TEdit.Create(frmDesign);
    TreeBaseColor.Parent := frmDesign;
    TreeBaseColor.Left := 8;
    TreeBaseColor.Top := 128;
    TreeBaseColor.Width := 113;
    TreeBaseColor.Height := 24;
    TreeBaseColor.TabOrder := 11;
    TreeBaseColor.Text := 'TreeBaseColor';
    Start := TButton.Create(frmDesign);
    Start.Parent := frmDesign;
    Start.Left := 8;
    Start.Top := 168;
    Start.Width := 97;
    Start.Height := 25;
    Start.Caption := 'Start';
    Start.TabOrder := 12;
    Start.OnClick := @SetupFormz;
    Loads := TEdit.Create(frmDesign);
    Loads.Parent := frmDesign;
    Loads.Left := 120;
    Loads.Top := 48;
    Loads.Width := 89;
    Loads.Height := 24;
    Loads.TabOrder := 13;
    Loads.Text := 'Loads';
    end;

    Procedure SafeInitForm;
    var
      v: TVariantArray;
    begin
      setarraylength(V, 0);
      ThreadSafeCall('InitForm', v);
    end;

    Procedure ShowFormModal;
    begin
      frmDesign.ShowModal;
    end;

    Procedure SafeShowFormModal;
    var
      v: TVariantArray;
    begin
      setarraylength(V, 0);
      ThreadSafeCall('ShowFormModal', v);
    end;





    {****************************************************************************}
    {Procedure BankWalk                                                          }
    {By: Wade007                                                                 }
    {Description: This will walk to to the bank                                  }
    {****************************************************************************}


    Procedure BankWalk;
     begin
      RadialWalk(FindRoadColor,0,90,50,5,5)
      Flag;
      if(FindSymbol(x,y,'bank'))then
       begin
       writeln('Walking To bank!')
       Mouse(x,y,2,2,true)
       flag;
       FindNormalRandoms;
      end;
    end;
    {****************************************************************************
    Procedure WillowWalk
    By: Wade007
    Description: This will walk you to willows.
    {****************************************************************************}


    Procedure WillowWalk;
     begin
      If(Not(LoggedIn)) then LoginPlayer;
      setangle(true)
      Status('Walking to willows')
      writeln('Walking to willows')

     end;
    {*****************************************************************************
    function InFight: Boolean;
    By: WT-Fakawi
    Description: Returns as True if in fight.
    *****************************************************************************}


    function InFight: Boolean;
    var
      x, y : Integer;
    begin
      Result := (FindColor(x, y, 65280, 230, 130, 280, 180) or FindColor(x, y, 255,
        230, 130, 280, 180))
    end;
    {****************************************************************************
    Procedure Depositing
    By: the find and open bank part is by Wade007 and the deposit part is by frozen_soul
    Description: This will deposit your logs.
    *****************************************************************************}



    procedure Depositing;
      begin
        if FindObjCustom(cx, cy, ['booth', 'ooth'], [BoothColor1, BoothColor2], 3) then
          begin
          repeat
          Status('Banking');
          Mouse(cx,cy,2,2,false)
          chooseoption('Use-quickly')
          wait(1000)
           until(bankscreen)
             Begin
              for i := 2 to 28 do
              Begin
              if ExistsItem(i) then
              Begin
              MouseItem(i, false);
              ChooseOption('ll');
              Wait(1000 + random(500));
             end;
            end;
        Mouse(485, 41, 4, 4, True);
        Wait(500 + random(250));
      end;
           {case random(2) of       //Use this if the banking doesn't work.
              1: Deposit(2, 28, 2)
              2: Deposit(2, 28, 2)
              end;}

          closebank;
          FindNormalRandoms;
          loadsdone := loadsdone+1
          WillowWalk;
      end;
    end;

    {****************************************************************************
    Procedure: ChopDemWillows
    By: Wade007
    Description: This Chops trees (DUH!)
    *****************************************************************************}



    Procedure ChopDemWillows;
     var tries:Integer;
     Begin
       if FindObjCustom(cx, cy, ['illow', 'llow'], [WillowColor1, WillowColor2], 3) then
         begin
         Status('Chopping Willows');
         if(FindEnt(cx, cy, True))then exit;
         Mouse(cx,cy,2,2,False)
         ChooseOption('hop')
         flag;
         Wait(4000+random(800))
         TreesChopped := TreesChopped+1
         FindNormalRandoms;
     end else
      begin
        tries := tries+1;
        if (tries = 10)then
         begin
          Writeln('Could not find any trees :(')
          Writeln('Try changing the colors.')
         NextPlayer(false);
       end;
      end;
    end;

    procedure Ent_phrases;
    begin
      case random(18) of
        0: Typesend('arg! stupied ent!');
        1: Typesend('lol, lil nub ent');
        2: Typesend('hahaha funny lil ent');
        3: Typesend('tree got mad, hahaha');
        4: Typesend('ents are funny');
        5: Typesend('O M G, stupied ent');
        6: Typesend('ffs dumb ent');
        7: Typesend('rofl ent got mad');
        8: Typesend('lamo, ent gone crazzy');
        9: Typesend('huhh.....');
        10: Typesend('ents are pointless to rs');
        11: Typesend('Why did jagex make ents?');
        12: Typesend('huh....ents are so useless');
        13: Typesend('hahaha, stupied lil ent');
        14: Typesend('oooo, an ent!');
        15: Typesend('aarrgg, dumb ent');
        16: Typesend('E N T !');
        17: Typesend('ffs, an ent');
      end;
    end;

    // Actual ent FINDING by Sumilion - from Woodcutting.scar
    // Everything else edited by Osmm
    function FFindEnt(fx, fy: Integer; AvoidWhenFound: Boolean): Boolean;
    var
      arUpTextEntColorPoints: TPointArray;
      x, y, EntTime, tcts: Integer;
    begin
      if not(LoggedIn)then exit;
      GetMousePos(x, y);
      if(x <> fx)or(y <> fy)then
      mmouse(fx, fy, 0, 0);
      if(IsUpText('Chop'))then
      begin
        tcts := GetColorToleranceSpeed;
        ColorToleranceSpeed(2);
        SetColorspeed2Modifiers(0.4, 0.4);
        FindColorsTolerance(arUpTextEntColorPoints, 51657, 80, 6, 127, 20, 5);
        Result := Length(arUpTextEntColorPoints) > 10;
        ColorToleranceSpeed(tcts);
      end;
      if(result)then
        begin // All my stuff from here on down
          MarkTime(EntTime);
          WriteLn('Ent Found!!');
          Writeln('Waiting for it to go away.');
          begin
            case random(2) of
              0: begin
                   mouse(627, 86, 5, 5, true);
                   mouse(627, 86, 10, 10, true);
                   Ent_phrases;
                   wait(750 + random(750));
                   GameTab(4);
                   wait(750 + random(750));
                   FindNormalRandoms;
                 end;
              1: begin
                   DoEmote(4);
                   wait(750 + random(750));
                   Ent_phrases;
                   wait(750 + random(750));
                   Hoverskill('woodcutting', false);
                   wait(750 + random(750));
                 end;
            end;
          end;
          begin
          if (TimeFromMark(EntTime) < 35000) then
            case random(2) of
              0: begin
                   if Random(10) > 8 then
                   Hoverskill('woodcutting', false);
                 end;
            end;
          end;
          Inc(EntsAvoided);
        end;
    end;

    {****************************************************************************
    Procedure Proggy
    By: Wade007
    Description: This will print a proggy to the debug box.
    *****************************************************************************}


    Procedure Proggy;
    begin
      Writeln('Thank you for using')
      Writeln('             |\     /|(  ___  )(  __  \ (  ____ \(  __   )(  __   )/ ___  \ ')
      Writeln('             | )   ( || (   ) || (  \  )| (    \/| (  )  || (  )  |\/   )  )')
      Writeln('             | | _ | || (___) || |   ) || (__    | | /   || | /   |    /  / ')
      Writeln('             | |( )| ||  ___  || |   | ||  __)   | (/ /) || (/ /) |   /  / ')
      Writeln('             | || || || (   ) || |   ) || (      |   / | ||   / | |  /  /   ')
      Writeln('             | () () || )   ( || (__/  )| (____/\|  (__) ||  (__) | /  /')
      Writeln('             (_______)|/     \|(______/ (_______/(_______)(_______) \_/      ''s Willow chopper')
      Writeln('Willow Chopper by wade007 has run for ' +TimeRunning)
      Writeln('Willow Chopper has Chopped ' +intToStr(TreesChopped)+ ' Trees')
      Writeln('We have done'+inttostr(loadsdone)+'loads')
    end;


    {****************************************************************************
    Procedure: Running
    By: Wade007
    Description: This TINY procedure will run away if it is in a fight.
    *****************************************************************************}


    Procedure Running;
    begin
      If (InFight) then
        begin
        Writeln('We have found a fight! Running away!')
        Status('Running');
        BankWalk;
        wait(2000)
        WillowWalk;
        end else
         begin
         Exit;
         end;
    end;


    {****************************************************************************
    Procedure: SetUp
    By: Wade007
    Description: this will run when it is start up....
    *****************************************************************************}



    procedure SetUp;
    begin
      If (FindAxe) then
       begin
       Writeln('I have found your axe, continuing.')
       end else
        begin
        Withdraw(1,1,1)
        end;
      ScriptID := '651';
      if not(yourSRLID = '') then SRLID := yourSRLID;
      if not(yourSRLPW = '') then SRLPassword := yourSRLPW;
      If (GetPage('http://wade007.freehostia.com/Version.txt')) > '2.0' then
      begin
        Writeln('Hmm... Your version is not up to date. please get the new update from the topic.')
        Writeln('I hope to have a direct download link for this in the near future.')
        logout;
      end else
       begin
         writeln('You have the latest version, Continueing.')
       end;
    end;


    {****************************************************************************
    MAIN LOOP
    Description: This is where it all begins...
    *****************************************************************************}



    begin
      SmartSetupEx((SmartWorldNumber),false,false);
        SetTargetDC(SmartGetDC);
       SetupSRL;
      SafeInitForm;
      SafeShowFormModal;
     SetUp;
      repeat
      If (not (loggedIn)) then loginplayer;
      WillowWalk;
      FindNormalRandoms;
       repeat
       ChopDemWillows;
       solvesandwich;
       Running;
       FindNormalRandoms;
       Until(InvFull);
      Running;
      bankWalk;
      wait(100)
      depositing;
      SetUp;
      ClearDebug;
      Proggy;
      i := +1
     until(inttostr(loadsdone) = loadz)
      ClearDebug;
      Proggy;
     end.
    And here is the error i get
    SCAR Code:
    [Runtime Error] : Type Mismatch in line 94 in script C:\Program Files\SCAR 3.14\includes\SRL/SRL/Core/Bank.scar
    Any ideas? Well, goodnight, I am going to bed.

  2. #2
    Join Date
    Jan 2008
    Location
    California, US
    Posts
    2,765
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    It compiles fine for me Wade...

    Edit: You just havent used the SmartWorld variable. I'll take a look at that line.
    There dosent seem to be anything wrong with that line. Try changing it to 50.

  3. #3
    Join Date
    Nov 2007
    Location
    UK
    Posts
    242
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Well, i still get that error. I deleted the smartworld variable, and it still doesn't work!

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

    Default

    Quote Originally Posted by Da 0wner View Post
    It compiles fine for me Wade...
    It is a Runtime error - it means it gets an error when running, not when compiling.


    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!

  5. #5
    Join Date
    Nov 2007
    Location
    Nowhereville
    Posts
    1,155
    Mentioned
    0 Post(s)
    Quoted
    3 Post(s)

    Default

    I don't see a problem I'll get back to you but:

    SCAR Code:
    case random(2) of
      1: blah; //this is the only thing that will ever happen, only half the time
      2: theblah; //this won't
    end;

    should be this:

    SCAR Code:
    case random(2) of
      0: blah; //both of these could result.
      1: theblah;
    end;

    Also:

    SCAR Code:
    flag
    should be nowadays:
    SCAR Code:
    FFlag(0);

    I also fixed the standards, and most of the errors but my computer froze, I hope I don't lose it :S
    Formerly known as Cut em2 it

  6. #6
    Join Date
    Jun 2007
    Location
    Wednesday
    Posts
    2,446
    Mentioned
    3 Post(s)
    Quoted
    1 Post(s)

    Default

    As it's in an SRL include, I would say either it's one of your banking bits or you need to replace your bank.scar (with a re-install of SRL or from a working uploaded one) - but I will check through quickly and see.
    Edit: Looked at the banking bit and it should work fine, so I'm guessing it's a dodgy bank.scar file (have uploaded mine - try putting it over and see if it fixes it). Have noticed you still haven't fixed your version checking bit though (where it gets the current version from a webpage - you need to use StrToFloatDef (I think that's it) befare comparing it otherwise you'll get an error from that (that may be what is causing the runtime error, though as you said it's in bank.scar, it might not).
    By reading this signature you agree that mixster is superior to you in each and every way except the bad ways but including the really bad ways.

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Line 135: [Error] (14845:1): Syntax error in script
    By AbsTrACt'^.| in forum OSR Help
    Replies: 16
    Last Post: 05-23-2008, 01:14 PM
  2. Replies: 5
    Last Post: 02-26-2008, 04:14 PM
  3. Error: Cannot Fix Script - Error Overgrowth - Begin Headdesking
    By PhantasmalScripter in forum OSR Help
    Replies: 6
    Last Post: 12-23-2006, 12:50 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
  •