Results 1 to 3 of 3

Thread: Shortening Code

  1. #1
    Join Date
    Feb 2009
    Posts
    484
    Mentioned
    0 Post(s)
    Quoted
    1 Post(s)

    Default Shortening Code

    How can I make this piece of code shorter?

    Simba Code:
    Function FindOre:Boolean;
    Var
    X, Y:Integer;
    Begin
    SetAngle(False);
    If Not Invfull Then Begin
    MakeCompass('40');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('80');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('120');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('160');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('200');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('240');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('280');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('320');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    If Not Invfull Then Begin
    MakeCompass('360');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    end;

    I've tried this, but it doesn't seem to work.
    Simba Code:
    Function FindOre:Boolean;
    Var
    X, Y, T:Integer;
    Begin
    SetAngle(False);

    Repeat

    If Not Invfull Then Begin
    MakeCompass('T');
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    IncEx(T, +40);

    Until(InvFull);



    end;

  2. #2
    Join Date
    May 2007
    Location
    UK
    Posts
    4,007
    Mentioned
    1 Post(s)
    Quoted
    12 Post(s)

    Default

    Try:

    Simba Code:
    Function FindOre:Boolean;
    Var
    X, Y, T:Integer;
    Begin
    SetAngle(False);
    T := 40;
    Repeat

    If Not Invfull Then Begin
    MakeCompass(T);
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    IncEx(T, +40);

    Until(InvFull);



    end;

  3. #3
    Join Date
    Feb 2009
    Posts
    484
    Mentioned
    0 Post(s)
    Quoted
    1 Post(s)

    Default

    Quote Originally Posted by Dynamite View Post
    Try:

    Simba Code:
    Function FindOre:Boolean;
    Var
    X, Y, T:Integer;
    Begin
    SetAngle(False);
    T := 40;
    Repeat

    If Not Invfull Then Begin
    MakeCompass(T);
    If FindObjCustom(X, Y, ['ssen'], [8750732, 11579576, 1243514, 8224130], 2) Then
    Begin
    writeln('Found ore!')
    Result := True;
    MMouse(X, Y, 3, 3);
    GetMousePos(X, Y);
    Mouse(X, Y, 0, 0, False);
    Wait(500+randomrange(200,300));
    If ChooseOption('Mine Rune Essence') Then
    Result := True;
    while (Not InvFull)
    Do
    wait(100+randomrange(50,70));
    end;
    Wait(500+randomrange(200,500));
    end;

    IncEx(T, +40);

    Until(InvFull);



    end;
    Excellent. That's what I was missing. Thank you Sir.

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
  •