• Log in or sign up for an account here: https://www.sythe.org/login

Weird error

Joined
Jan 23, 2007
Sythe Gold
0
Messages
232
Location
A House
When i try to run a monk killing script this comes up.
[Runtime Error] : Out Of Range in line 340 in script C:\Documents and Settings\Riley\My Documents\SCAR 3.06\includes\srl\srl\core\Login.scar
 
Here it is.
Code:
//        A            SSSSSSSSSSS  H          H  U           U  RRRRR        //
//       A A          S             H          H  U           U  R    R       //
//      A   A        S              H          H  U           U  R     R      //
//     A     A      S               H          H  U           U  R      R     //
//    AAAAAAAAA     SSSSSSSSSSSSSS  HHHHHHHHHHHH  U           U  RRRRRRRRR    //
//   A         A                 S  H          H  U           U  R R          //
//  A           A                S  H          H  U           U  R  R         //
// A             A               S  H          H  U           U  R   R        //
//A               A  SSSSSSSSSSSSS  H          H   UUUUUUUUUUU   R    R       //
//                                                                            //
//                                                                            //
//                             A    NN   N DDD                                //
//                            A A   N N  N D  D                               //
//                           A   A  N  N N D  D                               //
//                          A     A N   NN DDD                                //
//                                                                            //
//   H          H         A        X        X OOOOOOOOOO  RRRRRR              //
//   H          H        A A        X      X  O        O  R     R             //
//   H          H       A   A        X    X   O        O  R      R            //
//   H          H      A     A        X  X    O        O  R       R           //
//   HHHHHHHHHHHH     AAAAAAAAA        XX     O        O  R        R          //
//   H          H    A         A       XX     O        O  RRRRRRRRRRR         //
//   H          H   A           A     X  X    O        O  R R                 //
//   H          H  A             A   X    X   O        O  R  R                //
//   H          H A               A X      X  OOOOOOOOOO  R   R               //
                                                                              //
////////////////////////////////////////////////////////////////////////////////
//                          (~~!Notes!~~)                                     //
//* This Script (MonkBSER) was made by Ashur2good and Haxor                   //
//* Thanks for using The MonkBSER :)                                          //
//* If you have any troubles with this script, don't hesitate to Ask, just    //
//PM or post in the fourm which you got this from or Send an E-Mail,          //
//* If i do not respond, Ask Haxor he will help you (Hopefully :D) with       //
//any problems :D                                                             //
//* If you find any bugs/Comments/Reports on the script, please post a reply  //
//in the fourms which you got this from                                       //
//* I am not responsible for any loss or damage this script has caused but    //
//I seriously doubt that will happen...:)                                     //
//                        (~~!Instructions!~~)                                //
//* Start logged out.                                                         //
//* Hit play now!                                                             //
//                          (~~!Features!~~)                                  //
//* Range and Mage!!! :0                                                      //
//* Form!                                                                     //
//* Has Great Anti Ban                                                        //
//* Up to date Anti-Randoms with SRL                                          //
//* Very nice Monk Finding procedures                                         //
//* Has a very, very, VERY nice healing procedure :D                          //
//* Multiplayer :)                                                            //
//                          (~~!History!~~)                                   //
//Version 1.0:First release of script ( Released on the 21st of may )         //
//Version 1.2: Fixed some bugs and fixed up the attacking procedure a little. //
//Version 1.5: BIG update! Fixed nearly everything!                           //
//Version 2.0: HUGE update! Everything is fixed, also added Range/Mage, Magic //
//Book, better healing procedure( Again :P ):D -Credit to WT-Fawaki :)        //
//Version 2.5: Added forms, not as stable as version 2.0                      //
//Version 2.6: Took out world switching, Made it to work for SRL 3.8          //
//Version 3.0: Fixed up everything yet again, after that engine update, fixed //
//the forms and attacking procedures, no set up!                              //
//                          (~~!Credits!~~)                                   //
//Thanks to ron for his DRM parser, :)                                        //
//Thanks to WT-Fawaki for his blue hit, red hit procedure :)                  //
//Thanks to the SRL devs/community for their SRL :)                           //
//Thanks to widget for his awesome player form!!! :D                          //
//And thanks to haxor for lending me 500K Lol :)                              //
////////////////////////////////////////////////////////////////////////////////
//         (~~!The Magic Book!~~)                                             //
//      1: TheSpell := 'Home Teleport';                                       //
//      2: 'Wind Strike';                                                     //
//      3: 'Confuse';                                                         //
//      4:'Bolt Enchantment';                                                 //
//      5: 'Water Strike';                                                    //
//      6: 'Enchant Level 1 Jewelry';                                         //
//      7: 'Earth Strike';                                                    //
//      8: 'Weaken';                                                          //
//      9: 'Fire Strike';                                                     //
//      10: 'Bones to Bananas';                                               //
//      11: 'Wind Bolt';                                                      //
//      12: 'Curse';                                                          //
//      13: 'Bind';                                                           //
//      14: 'Low Level Alchemy';                                              //
//      15: 'Water Bolt';                                                     //
//      16: 'Varrock Teleport';                                               //
//      17: 'Enchant Level 2 Jewelry';                                        //
//      18: 'Earth Bolt';                                                     //
//      19: 'Lumbridge Teleport';                                             //
//      20: 'Telekinetic grab';                                               //
//      21: 'Fire Bolt';                                                      //
//      22: 'Falador Teleport';                                               //
//      23: 'Crumble Undead';                                                 //
//      24: 'House teleport';                                                 //
//      25: 'Wind Blast';                                                     //
//      26: 'Superheat Item';                                                 //
//      27: 'Camelot Teleport';                                               //
//      28: 'Water Blast';                                                    //
//      29: 'Enchant Level 3 Jewelry';                                        //
//      30: 'Iban Blast';                                                     //
//      31: 'Snare';                                                          //
//      32: 'Magic Dart';                                                     //
//      33: 'Ardougne teleport';                                              //
//      34: 'Earth Blast';                                                    //
//      35: 'High Level Alchemy';                                             //
//      36: 'Charge Water Orb';                                               //
//      37: 'Enchant Level 4 Jewelry';                                        //
//      38: 'Watchtower Teleport';                                            //
//      39: 'Fire Blast';                                                     //
//      40: 'Charge Earth Orb';                                               //
//      41: 'Bones to Peaches';                                               //
//      42: 'Saradomin Strike';                                               //
//      43: 'Claws of Guthix';                                                //
//      44: 'Flames of Zamorak';                                              //
//      45: 'Trollheim Teleport';                                             //
//      46: 'Wind Wave';                                                      //
//      47: 'Charge Fire Orb';                                                //
//      48: 'Ape Atoll teleport';                                             //
//      49: 'Water Wave';                                                     //
//      50: 'Charge Air Orb';                                                 //
//      51: 'Vulnerability';                                                  //
//      52: 'Enchant Level 5 Jewelry';                                        //
//      53: 'Earth Wave';                                                     //
//      54: 'Enfeeble';                                                       //
//      55: 'Teleother Lumbridge';                                            //
//      56: 'Fire Wave';                                                      //
//      57: 'Entangle';                                                       //
//      58: 'Stun';                                                           //
//      59: 'Charge';                                                         //
//      60: 'Teleother Falador';                                              //
//      61: 'Tele Block';                                                     //
//      62: 'Enchant Level 6 Jewelry ';                                       //
//      63: 'Teleother Camelot';                                              //
////////////////////////////////////////////////////////////////////////////////
//Best proggie!                                                               //
//~~~~~~~~~~~~~~Report~~~~~~~~~~~~~~                                          //
//Worked For : 7 Hours, 32 Minutes, and 12 Seconds                            //
//Bsed 827 Monkz                                                              //
//Healed 23 Times                                                             //
//Have got 12 Randoms Since start                                             //
//~~~~~~~~~~~~~~Report~~~~~~~~~~~~~~                                          //
////////////////////////////////////////////////////////////////////////////////
program MonkBser;
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/Fighting.scar}
{.include SRL/SRL/Skill/Magic.scar}
{.include SRL/SRL/Misc/Amount.scar}



{~~~~~~~End of set up, Don't touch below unless you know what your doing~~~~~~~}
{~~~~~~~~~~~~~~~~~~~~~~1 mistake everything goes wrong :o~~~~~~~~~~~~~~~~~~~~~~}



//////////////////////////////Variables/////////////////////////////////////////
var
  i: Integer;
  Boom: Boolean;
  Swarm, Randomz, HealTime, Hits: Integer;
  MonkColors: array[1..4] of integer;
  Monks, Time, HpAmount, Nuber: Integer;
  Magices: Boolean;
  AttackStyle: string;
  Ha: Integer;
//////////////////////////////Variables/////////////////////////////////////////






////////////////////////////FormVariables///////////////////////////////////////
var
  frmDesign: TForm;
  EndInitForm: Boolean;
  Label5: TLabel;
  UseMagic: TLabel;
  Spell: TLabel;
  Label1: TLabel;
  Healing: TLabel;
  ATTStyle: TLabel;
  Killa: TLabel;
  Start: TButton;
  Magic: TComboBox;
  MagicNumber: TEdit;
  Kills: TEdit;
  AStyle: TEdit;
  HP: TEdit;
  PlayerForm: TButton;
////////////////////////////FormVariables///////////////////////////////////////






//////////////////////////////Constants/////////////////////////////////////////
const
  Version = '3.0'; //Don't touch
  MissedColor = 16728128; //Credit to WT-Fawaki :) Don't touch ;)
  HitColor = 192; //Credit to WT-Fawaki :) Don't touch ;)
//////////////////////////////Constants/////////////////////////////////////////






////////////////////////////////Form////////////////////////////////////////////
procedure ButtonClick(sender: TObject);
begin
  Writeln('Starting Form');
  frmDesign.Caption := frmDesign.Caption + '.';
  frmDesign.ModalResult := mrOk;
end;

procedure Playa(sender: TObject);
begin
  StartPlayers(True, '')
end;

procedure InitFormOnClose(Sender: TObject; var Action: TCloseAction);
begin
  if (not (frmDesign.ModalResult = 1)) then
    EndInitForm := True;
end;




var WidgetForm:TForm;
    Background,Close,Minimize:TImage;
    DragTimer:TTimer;
    wx1,wy1,wx2,wy2:integer;
    Usernames,Passwords,Loads:array of TEdit;
    Active:array of TCheckBox;
    Add, delet:TButton;

procedure VOut(text:array of variant);
   var i:integer;
       s:string;
   begin
   for i := 1 to getarraylength(text) do
      s := s + Text[i-1]
   Writeln(s);
   end;

procedure SetActive(Sender:TObject);
   var i,i2:integer;
   begin
   for i2 := 0 to (GetArrayLength(Active)-1) do
      if (Sender=Active[i2]) then
         i := i2;
   if Active[i].Checked then
      begin
      Loads[i].Enabled := True;
      Loads[i].Color := $333333;
      Usernames[i].Enabled := True;
      Usernames[i].Color := $333333;
      Passwords[i].Enabled := True;
      Passwords[i].Color := $333333;
      end else begin
      Loads[i].Enabled := False;
      Loads[i].Color := $111111;
      Usernames[i].Enabled := False;
      Usernames[i].Color := $111111;
      Passwords[i].Enabled := False;
      Passwords[i].Color := $111111;
      Passwords[i].DestroyComponents
      end;
   end;

procedure AddUser(Sender:TObject);
   var i:integer;
   begin
   i := GetArrayLength(Usernames);
   Background.Canvas.Pen.Color := $000000;
   Background.Canvas.MoveTo(1,Background.Height-1)
   Background.Canvas.LineTo(Background.Width-2,Background.Height-1)
   try
      Usernames[i].Visible := True;
      Passwords[i].Visible := True;
      Loads[i].Visible := True;
      Active[i].Visible := True;
   except
      VOut(['Blah!']);
      SetArrayLength(Usernames,i+1);
      SetArrayLength(Passwords,i+1);
      SetArrayLength(Loads,i+1);
      SetArrayLength(Active,i+1);
      Usernames[i] := TEdit.Create(WidgetForm);
      with Usernames[i] do
         begin
         Parent := WidgetForm;
         Color := $333333;
         Font.Color := clWhite;
         SetBounds(30,i*20+40,100,20);
         end;
      Passwords[i] := TEdit.Create(WidgetForm);
      with Passwords[i] do
         begin
         Parent := WidgetForm;
         Color := $333333;
         Font.Color := clWhite;
         SetBounds(130,i*20+40,100,20);
         end;
      Loads[i] := TEdit.Create(WidgetForm);
      with Loads[i] do
         begin
         Parent := WidgetForm;
         Color := $333333;
         Font.Color := clWhite;
         SetBounds(230,i*20+40,40,20);
         end;
      Active[i] := TCheckBox.Create(WidgetForm);
      with Active[i] do
         begin
         Parent := WidgetForm;
         SetBounds(10,i*20+40,20,20);
         OnClick := @SetActive;
         Checked := True;
         end;
      end;
   WidgetForm.Height := WidgetForm.Height + 20;
   Add.Top := Add.Top + 20;
   Delet.Top := Delet.Top + 20;
   Background.Height := WidgetForm.Height;
   Background.Canvas.Pen.Color := $FFFFFF;
   Background.Canvas.Pen.Style := psSolid;
   Background.Canvas.MoveTo(0,1)
   Background.Canvas.LineTo(0,WidgetForm.Height-1)
   Background.Canvas.LineTo(WidgetForm.Width-1,WidgetForm.Height-1)
   Background.Canvas.LineTo(WidgetForm.Width-1,1)
   end;

procedure DeleteUser(Sender:TObject);
   var i:integer;
   begin
 { i := GetArrayLength(Usernames)-1;
   Usernames[i].Visible := False;
   Passwords[i].Visible := False;
   Loads[i].Visible := False;
   Active[i].Visible := False;
   WidgetForm.Height := WidgetForm.Height - 20;
   Add.Top := Add.Top - 20;
   Delet.Top := Delet.Top - 20;
   Background.Height := WidgetForm.Height;
   Background.Canvas.Pen.Color := $FFFFFF;
   Background.Canvas.Pen.Style := psSolid;
   Background.Canvas.MoveTo(0,1)
   Background.Canvas.LineTo(0,WidgetForm.Height-1)
   Background.Canvas.LineTo(WidgetForm.Width-1,WidgetForm.Height-1)
   Background.Canvas.LineTo(WidgetForm.Width-1,1) }
   end;

procedure DragForm(Sender: TObject);
   begin
   getmousepos(wx1,wy1);
   WidgetForm.Top := WidgetForm.Top - (wy2-wy1);
   WidgetForm.Left := WidgetForm.Left - (wx2-wx1);
   wx2 := wx1;
   wy2 := wy1;
   end;

procedure DragDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
   begin
   getmousepos(wx2,wy2);
   if (y < 19) then
      DragTimer.Interval := 1;
   end;

procedure DragUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
   begin
   DragTimer.Interval := 10000000;
   end;

procedure CloseForm(Sender:TObject);
   begin
   WidgetForm.ModalResult := mrOk;
   end;

procedure MinimizeForm(Sender:TObject);
   begin
   WidgetForm.WindowState := WSMinimized;
   end;

procedure MakeForm;
   begin
   WidgetForm := CreateForm;
   with WidgetForm do
      begin
      SetBounds(0,0,277,65);
      Caption := 'Generic Player Form';
      Color := clBlack;
      Font.Color := clRed;
      Position := poScreenCenter;
      Borderstyle := bsNone;
      OnMouseDown := @DragDown;
      OnMouseUp := @DragUp;
      Ctl3d := False;
      end;
   Background := TImage.Create(WidgetForm);
   with Background do
      begin
      Parent := WidgetForm;
      SetBounds(0,0,WidgetForm.Width,1500);
      OnMouseDown := @DragDown;
      OnMouseUp := @DragUp;
      i := BitmapFromString(1, 1, '000000');
      SafeCopyCanvas(GetBitmapCanvas(i),Canvas,0,0,1,1,0,0,Width,Height);
      FreeBitmap(i);
      with Canvas do
         begin
         Pen.Color := $FFFFFF;
         MoveTo(0,0);
         LineTo(WidgetForm.Width-1,0);
         LineTo(WidgetForm.Width-1,WidgetForm.Height-1);
         MoveTo(0,WidgetForm.Height-1);
         LineTo(0,0);
         Pen.Color := $555555;
         MoveTo(5,16);
         LineTo(WidgetForm.Width-5,16);
         MoveTo(5,18);
         LineTo(WidgetForm.Width-5,18);
         Brush.Style := bsClear;
         Font.Color := $FFFFFF;
         Font.Size := 10;
         TextOut((WidgetForm.Width-TextWidth(WidgetForm.Caption))/2,0,WidgetForm.Caption)
         end;
      end;
   i := BitmapFromString(11, 11, 'z78DAAD924B0EC02008' +
      '44AFD45F50B7357AFF2335C36C68D0DAD4CEDB18022382B2CB24B' +
      '9804A05E5B56E0E5ABB259005F87CC6C3091A0E26678DC0FAF4E2' +
      '8D57B8FC74005FFBEC40B17651F13C98C34F3DCCCCA154D0BBCBF' +
      'A705FDC9DEF813E03993F631DBE41870BCEA4B212');
   Close := TImage.Create(WidgetForm);
   with Close do
      begin
      Parent := WidgetForm
      SetBounds(WidgetForm.Width-13,2,11,11);
      SafeCopyCanvas(GetBitmapCanvas(i),Canvas,0,0,11,11,0,0,11,11);
      FreeBitmap(i);
      OnClick := @CloseForm;
      end;
   i := BitmapFromString(11, 11, 'z78DA333336A3103ABB82' +
      'A01B5900A277D4045A98407C0CE232C1D00004F103881A5AF8821' +
      '208008BAEBA31');
   Minimize := TImage.Create(WidgetForm);
   with Minimize do
      begin
      Parent := WidgetForm
      SetBounds(WidgetForm.Width-26,2,11,11);
      SafeCopyCanvas(GetBitmapCanvas(i),Canvas,0,0,11,11,0,0,11,11);
      FreeBitmap(i);
      OnClick := @MinimizeForm;
      end;
   DragTimer := TTimer.Create(WidgetForm);
   DragTimer.Interval := 10000000;
   DragTimer.OnTimer := @DragForm;
   Add := TButton.Create(WidgetForm);
   with Add do
      begin
      Parent := WidgetForm;
      SetBounds(5,40,75,20);
      Caption := 'Add Player';
      OnClick := @AddUser;
      end;
   Delet := TButton.Create(WidgetForm);
   with Delet do
      begin
      Parent := WidgetForm;
      SetBounds(85,40,75,20);
      Caption := 'Delete Player';
      OnClick := @DeleteUser;
      end;
   AddUser(WidgetForm);
   end;




procedure SafeShowWF;
   var tva: TVariantArray;
   begin
   setarraylength(tva, 0);
   ThreadSafeCall('MakeForm', tva);
   end;

procedure ShowFormModal;
   begin
   WidgetForm.ShowModal
   end;

procedure SafeShowFormModal;
   var tva: TVariantArray;
   begin
   setarraylength(tva, 0);
   ThreadSafeCall('ShowFormModal', tva);
end;

procedure Form;
   begin
   SafeShowWF;
   SafeShowFormModal;
   FreeForm(WidgetForm);
   end;
   
   
procedure makform(sender: TObject);
begin
  Form;
end;

procedure IniForm;
var
  TimeInitForm: Integer;
begin
  TimeInitForm := GetSystemTime;
  frmDesign := CreateForm;
  with frmDesign do
  begin
    OnClose := @InitFormOnClose;
    Position := poScreenCenter;
    FormStyle := fsStayOnTop;
    Width := 387;
    Height := 329;
    Cursor := crArrow;
    Caption := 'Ashur2good and Haxor'#39's MonkBSER';
    Color := clBtnFace;
    Font.Color := clWindowText;
    Font.Height := -11;
    Font.Name := 'MS Sans Serif';
    Font.Style := [];
    PixelsPerInch := 96;
  end;
  Label5 := TLabel.Create(frmDesign);
  with Label5 do
  begin
    Parent := frmDesign;
    Left := 11;
    Top := 258;
    Width := 345;
    Height := 23;
    Caption := 'Guarrented to kill at least 50 monks an hour!';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Simpsonfont';
    Font.Style := [];
    ParentFont := False;
  end;
  UseMagic := TLabel.Create(frmDesign);
  with UseMagic do
  begin
    Parent := frmDesign;
    Left := 36;
    Top := 121;
    Width := 69;
    Height := 19;
    Caption := 'Use magic';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Times New Roman';
    Font.Style := [fsBold];
    ParentFont := False;
  end;
  Spell := TLabel.Create(frmDesign);
  with Spell do
  begin
    Parent := frmDesign;
    Left := 36;
    Top := 152;
    Width := 33;
    Height := 19;
    Caption := 'Spell';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Times New Roman';
    Font.Style := [fsBold];
    ParentFont := False;
  end;
  Label1 := TLabel.Create(frmDesign);
  with Label1 do
  begin
    Parent := frmDesign;
    Left := 12;
    Top := 2;
    Width := 357;
    Height := 31;
    Caption := 'Ashur2good and Haxor'#39's MonkBSER';
    Font.Color := clWindowText;
    Font.Height := -24;
    Font.Name := 'WillyWonka';
    Font.Style := [];
    ParentFont := False;
  end;
  Healing := TLabel.Create(frmDesign);
  with Healing do
  begin
    Parent := frmDesign;
    Left := 36;
    Top := 56;
    Width := 91;
    Height := 19;
    Caption := 'HP to Heal at';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Times New Roman';
    Font.Style := [fsBold];
    ParentFont := False;
  end;
  ATTStyle := TLabel.Create(frmDesign);
  with ATTStyle do
  begin
    Parent := frmDesign;
    Left := 36;
    Top := 89;
    Width := 83;
    Height := 19;
    Caption := 'Attack Style';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Times New Roman';
    Font.Style := [fsBold];
    ParentFont := False;
  end;
  Killa := TLabel.Create(frmDesign);
  with Killa do
  begin
    Parent := frmDesign;
    Left := 36;
    Top := 187;
    Width := 112;
    Height := 19;
    Caption := 'How many to kill';
    Font.Color := clWindowText;
    Font.Height := -16;
    Font.Name := 'Times New Roman';
    Font.Style := [fsBold];
    ParentFont := False;
  end;
  Start := TButton.Create(frmDesign);
  with Start do
  begin
    Parent := frmDesign;
    Left := 138;
    Top := 228;
    Width := 71;
    Height := 23;
    Hint := 'Start the script';
    Caption := 'Start';
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 8;
    OnClick := @ButtonClick;
  end;
  Magic := TComboBox.Create(frmDesign);
  with Magic do
  begin
    Parent := frmDesign;
    Left := 152;
    Top := 123;
    Width := 145;
    Height := 21;
    Hint := 'Use magic?';
    ItemHeight := 13;
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 9;
    Text := 'Magic';
    with Magic.Items do
    begin
      Add('True');
      Add('False');
    end;
  end;
  MagicNumber := TEdit.Create(frmDesign);
  with MagicNumber do
  begin
    Parent := frmDesign;
    Left := 162;
    Top := 155;
    Width := 121;
    Height := 21;
    Hint := 'If magic is true, then what spell number?';
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 10;
    Text := 'MagicNumber';
  end;
  Kills := TEdit.Create(frmDesign);
  with Kills do
  begin
    Parent := frmDesign;
    Left := 163;
    Top := 188;
    Width := 121;
    Height := 21;
    Hint := 'Put in how many monks to kill';
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 11;
    Text := 'Kills';
  end;
  AStyle := TEdit.Create(frmDesign);
  with AStyle do
  begin
    Parent := frmDesign;
    Left := 162;
    Top := 92;
    Width := 121;
    Height := 21;
    Hint := 'What attack style? 1 is Att, 2 is Str, 3 is shared, 4 is Def';
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 12;
    Text := 'AStyle';
  end;
  HP := TEdit.Create(frmDesign);
  with HP do
  begin
    Parent := frmDesign;
    Left := 162;
    Top := 58;
    Width := 121;
    Height := 21;
    Hint := 'What hp to heal at';
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 13;
    Text := 'HP';
  end;
  PlayerForm := TButton.Create(frmDesign);
  with PlayerForm do
  begin
    Parent := frmDesign;
    Left := 266;
    Top := 228;
    Width := 75;
    Height := 25;
    Caption := 'Player Setup';
    TabOrder := 14;
    OnClick := @makform;
  end;
  WriteLn('InitForm compiled in ' + IntToStr(GetSystemTime - TimeInitForm) + ' milliseconds!');
end;

procedure SafeInitForm;
var

  V: TVariantArray;
begin
  SetArrayLength(V, 0);
  ThreadSafeCall('IniForm', V);
end;

procedure ShowIniFormModal;
begin
  frmDesign.ShowModal;
end;

procedure SafeShowIniFormModal;
var
  V: TVariantArray;
begin
  SetArrayLength(V, 0);
  ThreadSafeCall('ShowIniFormModal', V);
end;

procedure MainInitForm;
begin
  try
    SafeInitForm;
    SafeShowIniFormModal;
  finally
    FreeForm(frmDesign);
  except
    WriteLn('An error seems to have occurred in: InitForm');
  end;
end;

procedure SetupAll;
begin
  AttackStyle := AStyle.Text;
  Nuber := StrToInt(MagicNumber.Text);
  HpAmount := StrToInt(HP.Text);
  Time := StrToInt(Kills.Text);
  case Magic.Text of
    'True': Magices := True;
    'False': Magices := False;
  end;
end;

////////////////////////////////Form////////////////////////////////////////////













////////////////////////////Logging In/////////////////////////////////////////

procedure LoggingIn;
begin
  SetUpSRL;
  LoginPlayer;
end;
/////////////////////////////Logging In/////////////////////////////////////////






///////////////////////////////LoadDTMs/////////////////////////////////////////

procedure LoadDTMs;
begin
  Swarm := DTMFromString('78DA63946760605065C00A18A134000908004' +
    '7');

end;
///////////////////////////////LoadDTMs/////////////////////////////////////////






//////////////////////////////MonkColours///////////////////////////////////////

procedure MonkColour;
begin
  MonkColors[1] := 8562644;
  MonkColors[2] := 8497364;
  MonkColors[3] := 8562644;
  MonkColors[4] := 8497364;
end;
//////////////////////////////MonkColours///////////////////////////////////////






/////////////////////////////Auto Talk1/////////////////////////////////////////

procedure AutoTalk1;
begin
  if (InChat('noobs')) or
    (InChat('noobz')) or
    (InChat('noob')) or
    (InChat('nub')) or
    (InChat('nab')) or
    (InChat('froob')) or
    (InChat('loser')) or
    (InChat('choob')) then
  begin
    Ha := Ha + 1;
    if Ha = 3 then
    begin
      Wait(500 + Random(500));
      TypeSend('your the noob');
      Ha := 0;
    end;
  end;
end;
/////////////////////////////Auto Talk1/////////////////////////////////////////






/////////////////////////////Auto Talk2/////////////////////////////////////////

procedure AutoTalk2;
begin
  if (InChat('i own')) or
    (InChat('i rule')) or
    (InChat('i rulz')) or
    (InChat('i good')) or
    (InChat('im good')) or
    (InChat('ure a nub')) or
    (InChat('ure a noob')) or
    (InChat('loser')) or
    (InChat('i pwn')) or
    (InChat('i score')) or
    (InChat('im hot')) or
    (InChat('ure ugly')) or
    (InChat('ch00b')) or
    (InChat('fr00b')) or
    (InChat('youre a noob')) or
    (InChat('youre a nub')) then
  begin
    Ha := Ha + 1;
    if Ha = 3 then
    begin
      Wait(500 + Random(500));
      TypeSend('you wish...');
      Ha := 0;
    end;
  end;
end;
/////////////////////////////Auto Talk2/////////////////////////////////////////






/////////////////////////////Auto Talk3/////////////////////////////////////////

procedure AutoTalk3;
begin
  if (InChat('fak')) or
    (InChat('bi+(#h')) or
    (InChat('faken ')) or
    (InChat('dik')) or
    (InChat('4uk')) then
  begin
    Ha := Ha + 1;
    if Ha = 3 then
    begin
      Wait(500 + Random(500));
      TypeSend('reported :)');
      Ha := 0;
    end;
  end;
end;
/////////////////////////////Auto Talk3/////////////////////////////////////////






/////////////////////////////Auto Talker////////////////////////////////////////

procedure AutoTalker;
begin
  AutoTalk1;
  AutoTalk2;
  AutoTalk3;
end;
/////////////////////////////Auto Talker////////////////////////////////////////






///////////////////////////////Randoms//////////////////////////////////////////

function FindFastRandoms: Boolean; //By WT-Fakawi.
var
  f: Integer;
begin
  for f := 1 to 8 do
  begin
    case I of
      1: if FindDead then
          Result := True;
      2: if FindMod then
          Result := True;
      3: if FindMime then
          Result := True;
      4: if FindMaze then
          Result := True;
      5: if FindQuiz then
          Result := True;
      6: if FindDemon then
          Result := True;
      7:
        begin
          if NoGameTab then
          begin
            Result := True;
            Players[CurrentPlayer].loc := 'No GameTab';
            Logout;
            Exit;
          end;
        end;
      7:
        begin
          if InBlack then
          begin
            Result := True;
            Players[CurrentPlayer].loc := 'InBlack';
            Logout;
            Exit;
          end;
        end;
      8: RC;
    end;
    wait(1);
  end;
  if (Result = true) then
    Randomz := Randomz + 1;
end;
///////////////////////////////Randoms//////////////////////////////////////////






/////////////////////////////AntiRandoms////////////////////////////////////////

procedure DoAntiRandoms;
begin
  FindTalk;
  FindNormalRandoms;
  FindFastRandoms;
  PopUp('ontinue');
end;
/////////////////////////////AntiRandoms////////////////////////////////////////






{*******************************************************************************
procedure FTWaitRandom(Time: Integer);
By: WT-Fakawi/Edited by ashur for my use :)
Description: Performs Wait and DoAntiRandoms :). Time is multiple of 250 msec, so FTWait(4)
waits approx 1 sec and performs 4 DoAntiRandoms; :)
*******************************************************************************}

procedure FTWaitRandom(Time: Integer);
var
  t: Integer;
begin
  for T := 1 to Time do
  begin
    Wait(200 + Random(50));
    DoAntiRandoms;
  end;
end;
//////////////////////////////FTWaitRandom//////////////////////////////////////






//////////////////////////////RandomAClick//////////////////////////////////////
{*******************************************************************************
procedure RandomAClick;
By: phantombmx/Fixed by Ashur2good for my own purposes :)
Description: Performs random right click to stay active.
*******************************************************************************}

procedure RandomAClick;
var
  m: Integer;
begin
  if (not (LoggedIn)) then Exit;
  m := MouseSpeed;
  MouseSpeed := 15;
  case Random(7) of
    0: MouseBox(533, 345, 757, 200, 2);
    1: MouseBox(521, 386, 553, 496, 2);
    2: MouseBox(743, 265, 764, 497, 2);
    3: MouseBox(456, 467, 763, 498, 2);
    4: MouseBox(499, 342, 552, 496, 2);
    5: MouseBox(121, 345, 521, 355, 2);
    6: MouseBox(124, 346, 14, 499, 2);
  end;
  MouseSpeed := m;
end;
//////////////////////////////RandomAClick//////////////////////////////////////






//////////////////////////////AntiDie///////////////////////////////////////////

procedure AntiDie;
begin
  case Random(30) of
    1: FTWaitRandom((6) + Random(4));
    2: RandomMovement;
    3: FTWaitRandom((6) + Random(4));
    4: BoredHuman;
    5: FTWaitRandom((6) + Random(4));
    6: DoAntiRandoms;
    7: FTWaitRandom((6) + Random(4));
    8: RandomMovement
    9: FTWaitRandom((6) + Random(4));
    10: DoAntiRandoms;
    11: FTWaitRandom((6) + Random(4));
    12: BoredHuman;
    13: FTWaitRandom((6) + Random(4));
    14: FTWaitRandom((6) + Random(4));
    15: FTWaitRandom((6) + Random(4));
    16: DoAntiRandoms;
    17: FTWaitRandom((6) + Random(4));
    18: BoredHuman;
    19: FTWaitRandom((6) + Random(4));
    20: FTWaitRandom((6) + Random(4));
    21: FTWaitRandom((6) + Random(4));
    22: FTWaitRandom((6) + Random(4));
    23: FTWaitRandom((6) + Random(4));
    24: FTWaitRandom((6) + Random(4));
    25: FTWaitRandom((6) + Random(4));
    26: FTWaitRandom((6) + Random(4));
    27: FTWaitRandom((6) + Random(4));
    28: FTWaitRandom((6) + Random(4));
    29: FTWaitRandom((6) + Random(4));
  end;
end;

//////////////////////////////AntiDie///////////////////////////////////////////






////////////////////////////MonkSafety//////////////////////////////////////////

procedure MonkSafety;
begin
  case Random(8) of
    1: MakeCompass('N');
    2: FTWaitRandom((6) + Random(4));
    3: MakeCompass('E');
    4: FTWaitRandom((6) + Random(4));
    5: MakeCompass('S');
    6: FTWaitRandom((6) + Random(4));
    7: MakeCompass('W');
  end;
end;
////////////////////////////MonkSafety//////////////////////////////////////////







//////////////////////////////Anti Ban//////////////////////////////////////////

procedure AntiBans;
begin
  case Random(25) of
    1: PickUpMouse;
    2: MouseBox(MSx1, MSy1, MSx2, MSy2, 3);
    3: AlmostLogout;
    4: HoverSkill('Defence', False);
    5: HoverSkill('Attack', False);
    6: MouseBox(MIx1, MIy1, MIx2, MIy2, 3);
    7: HoverSkill('Strength', False);
    8: RandomAClick;
    9: BoredHuman;
    10: GameTab(5);
    11: GameTab(6);
    12: GameTab(13);
    13: FTWaitRandom((6) + Random(4));
    14: FTWaitRandom((6) + Random(4));
    15: FTWaitRandom((6) + Random(4));
    16: FTWaitRandom((6) + Random(4));
    17: FTWaitRandom((6) + Random(4));
    19: BoredHuman;
    20: AntiDie;
    21: AntiDie;
    22: AntiDie;
    23: AntiDie;
    24: AntiDie;
  end;
end;
//////////////////////////////Anti Ban//////////////////////////////////////////






////////////////////////////////Anti////////////////////////////////////////////

procedure Anti;
begin
  case random(7) of
    1: AutoTalker;
    2: AntiBans;
    3: AntiDie;
    4: BoredHuman;
  end;
end;
////////////////////////////////Anti////////////////////////////////////////////






/////////////////////////////FightMode//////////////////////////////////////////

procedure SetsFightMode;
begin
  GameTab(1);
  if AttackStyle = 'Attack' then SetFightMode(1);
  if AttackStyle = 'Strength' then SetFightMode(2);
  if AttackStyle = 'Defence' then SetFightMode(4);
end;
/////////////////////////////FightMode//////////////////////////////////////////





////////////////////////////FindMSColour////////////////////////////////////////
{*******************************************************************************
function FindMSColour(var x, y: Integer; color: Integer): Boolean;
By: Stupid3ooo/Fixed by Ashur2Good( His one didin't look in the main screen )
Description: Finds color on MainScreen.
*******************************************************************************}

function FindMSColour(var x, y: Integer; color: Integer): Boolean;
begin
  Result := FindColor(x, y, color, MSX1, MSY1, MSX2, MSY2);
end;

////////////////////////////FindMSColour////////////////////////////////////////






//////////////////////////////RClicking/////////////////////////////////////////

procedure MonkKilla;
begin
  case Random(2) of
    0:
      begin
        Writeln(' Found a free monk or not already killing one, proceding to kill');
        Mouse(x, y, 0, 0 + random(3), True);
        Writeln('Left clicked on the monk');
        FTWaitRandom(1);
      end;

    1:
      begin
        Writeln(' Found a free monk or not already killing one, proceding to kill');
        Mouse(x, y, 0, 0 + random(3), False);
        ClickOption('ttac', 1);
        Writeln('Right clicked on the monk');
        FTWaitRandom(1);
      end;
  end;
end;
//////////////////////////////RClicking/////////////////////////////////////////






/////////////////////////////FindMonk///////////////////////////////////////////

function KillMonk: Boolean;
begin
  x := MSCX;
  y := MSCY;
  for Monks := 1 to 4 do
  begin
    FindObj(x, y, 'onk', MonkColors[Monks], 2);
    if (not (InFight) or not (IsFightAt(x, y))) then
    begin
      Writeln('Found Monk');
      MonkKilla;
      Boom := True;
    end
    else
    begin
      MonkSafety;
      FTWaitRandom((6) + Random(4));
    end;
    Boom := False;
  end;
end;
/////////////////////////////FindMonk///////////////////////////////////////////






//////////////////////////////Healing///////////////////////////////////////////

procedure Healin;
begin
  repeat
    GameTab(2);
    if (HpPercent < HpAmount) then
    begin
      Writeln('You have low HP :( Time to heal ;D');
      Wait(500 + Random(100));
      Writeln('Looking for a Monk to BS Muwhahaha');
      FindObj(x, y, 'onk', MonkColors[Monks], 5);
      FTWait((6) + Random(4));
      Mouse(x, y, 0, 0, False);
      ChooseOption(x, y, 'lk-');
      FTWait((6) + Random(4));
      ClickToContinue;
      FTWait((6) + Random(4));
      ChooseOptionEx('heal');
      TalkToRand;
      FTWait((6) + Random(4));
      DoAntiRandoms;
      HealTime := HealTime + 1;
    end;
  until (HpPercent >= HpAmount);
end;
//////////////////////////////Healing///////////////////////////////////////////






//////////////////////////Blue Hit, Red Hit/////////////////////////////////////

procedure HitHeal; //Kinda taken from WT-Fawaki :)
begin
  if (FindMSColour(x, y, 192)) then
  begin
    Hits := Hits + 1;
    if Hits >= 2 + random(2) then
    begin
      Wait(100 + Random(10));
      Healin;
      Hits := 0;
    end;
  end;
end;
//////////////////////////Blue Hit, Red Hit/////////////////////////////////////






////////////////////////////////Killa///////////////////////////////////////////

procedure AttackingMonkz;
begin
  if (HpPercent > HpAmount) then
  begin
    if Magices = True then
    begin
      CastSpell(Nuber);
    end;
    if Magices = False then
    begin
      KillMonk;
      HitHeal;
      repeat
        case Random(4) of
          1: Anti;
          2: FTWait((6) + Random(4));
        end;
      until (not (InFight));
      if (InFight = True) then
      begin
        Writeln('Fighting Monk');
        Wait(100 + Random(100));
        OutFight;
        Monks := Monks + 1;
      end
      else
        Writeln('Did not find monk, Going to new area to search :)');
      case random(4) of
        1: MouseBox(MSx1, MSy1, MSx2, MSy2, 1);
        2: FindSymbol(x, y, 'water');
        3: FindSymbol(x, y, 'water');
      end;
      Wait(500 + Random(100));
      KillMonk;
      MonkKilla;
      Wait(500 + Random(100));
      DoAntiRandoms;
      case Random(3) of
        1: Anti;
        2: FTWait((6) + Random(4));
      end;
      Wait(500 + Random(100));
      HitHeal;
      if (InFight = True) then
      begin
        Writeln('Fighting Monk');
        Wait(500 + Random(100));
        Monks := Monks + 1;
        if (not (Loggedin)) then NextPlayer(false);
      end;
    end;
  end;
end;
////////////////////////////////Killa///////////////////////////////////////////






/////////////////////////////World Switching////////////////////////////////////
//-----------------------------------------------------------------//
//--               Scar Standard Resource Library                --//
//--               » WorldSwitch routines                        --//
//-----------------------------------------------------------------//
//
// * function SelectWorld(Which:integer):Boolean; // by WT-Fakawi
// * procedure OrderBy(Which, UpDown:string);     // by WT-Fakawi
// * procedure GetWorldList(Var WList:array of integer);  // by WT-Fakawi
//        The worldswitcher include doesn't work, so i had to put them all in my
//        script, but the fixed version :)

var
  B0, B1, B2, B3, B4, B5, B6, B7, B8, B9: Integer;

{ type TWorld;
  Description: Hols world number and coordinates of the button }
type
  TWorld = record
    Nr: Integer;
    X: Integer;
    Y: Integer;
  end;

var
  Worlds: array of TWorld;

const
  HowManyWorlds = 150;

// -------------------------------------------------------------------------- //

procedure SetupWorldSwitcher;
begin
  B0 := BitmapFromString(7, 10, 'z78DA33304000370C60800130658' +
    '911C1653E252A71D9489E4A6AB996D4302126E4016F196571');
  B1 := BitmapFromString(6, 10, 'z78DA333040003724608001DC300' +
    '07E595CE61063D7D052E346040000CE02516D');
  B2 := BitmapFromString(7, 10, 'z78DA33300001371CC00009902A8' +
    'E0B10AF9E189543518D01DE30C7040082BE5DB5');
  B3 := BitmapFromString(6, 10, 'z78DA33300001371CC00043D6000' +
    '9E012A75C0D7EF750D72EFC6A88F73B7E5D00595A52F9');
  B4 := BitmapFromString(7, 10, 'z78DA7373430003BCC06D90A9C4A' +
    '597D62AF1035A840600F8D25EBD');
  B5 := BitmapFromString(6, 10, 'z78DA7373230D18E000A4AA21463' +
    'DF12693E7064ADC89298E5F1700DB4A52F9');
  B6 := BitmapFromString(7, 10, 'z78DA33304000370C60800130658' +
    '911C105C85389DF9DB8644975273176512B4CF0DB020094FD6151');
  B7 := BitmapFromString(6, 10, 'z78DA7373230C0C7000FC6A464D4' +
    '00600B0AF4FE1');
  B8 := BitmapFromString(7, 10, 'z78DA33304000370C60800130658' +
    '911A19D09F4B465A07C04006C5261D5');
  B9 := BitmapFromString(7, 10, 'z78DA3330000137BCC000438D010' +
    '6C0AF977295F8DD408C383136126326FD5502003C6F6049');
  SetArrayLength(Worlds, HowManyWorlds);
end;

// -------------------------------------------------------------------------- //

procedure FreeNumbers;
begin
  FreeBitmap(B0);
  FreeBitmap(B1);
  FreeBitmap(B2);
  FreeBitmap(B3);
  FreeBitmap(B4);
  FreeBitmap(B5);
  FreeBitmap(B6);
  FreeBitmap(B7);
  FreeBitmap(B8);
  FreeBitmap(B9);
end;

{*******************************************************************************
function ReturnNumber(BX, BY: Integer): Integer;
By: WT-Fakawi
Description: OCR machine.
*******************************************************************************}

function ReturnNumber(BX, BY: Integer): Integer;
var
  Number, BM: Integer;
begin
  for Number := 0 to 9 do
  begin
    case Number of
      0: BM := B0;
      1: BM := B1;
      2: BM := B2;
      3: BM := B3;
      4: BM := B4;
      5: BM := B5;
      6: BM := B6;
      7: BM := B7;
      8: BM := B8;
      9: BM := B9;
    end;
    if FindBitmapMaskTolerance(BM, x, y, BX, BY, BX + 9, BY + 11, 0, 0) then
    begin
      Result := Number;
      Exit;
    end
  end;
  Result := -1;
end;

{*******************************************************************************
procedure OrderBy(Which, UpDown: string);
By: WT-Fakawi
Description: Orders Display.
*******************************************************************************}

procedure OrderBy(Which, UpDown: string);
var
  Origin, OBx, OBy: Integer;
begin
  case Which of
    'world':
      begin
        case UpDown of
          'up': Origin := 284;
          'down': Origin := 297;
        end
      end;
    'players':
      begin
        case UpDown of
          'up': Origin := 393;
          'down': Origin := 409;
        end
      end;
    'location':
      begin
        case UpDown of
          'up': Origin := 503;
          'down': Origin := 519;
        end
      end;
    'type':
      begin
        case UpDown of
          'up': Origin := 613;
          'down': Origin := 629;
        end
      end;
  end;

  MMouse(Origin, 7, 7, 7)
    GetMousePos(OBx, OBy);
  repeat
    Mouse(OBx, OBy, 0, 0, True);
    Wait(500);
  until FindColorSpiralTolerance(OBx, OBy, 2851375, Origin, 7, Origin + 7, 7 + 7, 50);
end;

{*******************************************************************************
Procedure GetWorldRecord;
By: WT-Fakawi
Description: Performs old school OCR on bitmaps.
*******************************************************************************}

procedure GetWorldRecord;
var
  Row, Column, RN, World, Index: Integer;
begin
  for Row := 0 to 6 do
  begin
    for Column := 0 to 19 do
    begin
      RN := ReturnNumber(63 + (93 * Row), 39 + (23 * Column)); //Digit 1 of 3 digit worlds
      if RN <> -1 then
      begin
        World := RN * 100;
        RN := ReturnNumber(70 + (93 * Row), 39 + (23 * Column)); //Digit 2 of 3 digit worlds
        if RN <> -1 then
        begin
          World := (RN * 10) + World;
          RN := ReturnNumber(78 + (93 * Row), 39 + (23 * Column)); //Digit 2 of 3 digit worlds
          if RN <> -1 then
          begin
            World := RN + World;
            Index := Index + 1;
            Worlds[Index].Nr := World;
            Worlds[Index].X := 78 + (93 * Row);
            Worlds[Index].Y := 39 + (23 * Column);
            World := 0;
          end;
        end
      end
      else
      begin
        RN := ReturnNumber(66 + (93 * Row), 39 + (23 * Column)); //Digit 1 of 2 digit worlds
        if RN <> -1 then
        begin
          World := (RN * 10) + World;
          RN := ReturnNumber(74 + (93 * Row), 39 + (23 * Column)); // Digit 2 of 2 digit worlds
          if RN <> -1 then
          begin
            World := RN + World;
            Index := Index + 1;
            Worlds[Index].Nr := World;
            Worlds[Index].X := 74 + (93 * Row);
            Worlds[Index].Y := 39 + (23 * Column);
            World := 0;
          end;
        end
        else
        begin
          RN := ReturnNumber(70, 39 + (23 * Column)); //Digit 1 of 1 digit worlds
          if RN <> -1 then
          begin
            World := RN;
            Index := Index + 1;
            Worlds[Index].Nr := World;
            Worlds[Index].X := 71 + (93 * Row);
            Worlds[Index].Y := 39 + (23 * Column);
            World := 0;
          end
          else
          begin
            Index := Index + 1;
          end;
        end;
      end;
    end;
  end;
end;


// -------------------------------------------------------------------------- //

procedure ReadOutRecord;
var
  i: Integer;
begin
  for i := 1 to HowManyWorlds - 1 do
    Writeln('Index :' + IntToStr(i) + ' = ' + IntToStr(Worlds[i].Nr));
end;

{*******************************************************************************
procedure ClickWorldSwitchButton;
By: WT-Fakawi
Description: Click button
*******************************************************************************}

procedure ClickWorldSwitchButton;
begin
  MMouse(8, 466, 90, 25);
  GetMousePos(x, y);
  Mouse(x, y, 0, 0, True);
  repeat
    Wait(10);
  until (GetColor(17, 477) = 0);
end;

{*******************************************************************************
function SelectWorld(Which: Integer): Boolean;
By: WT-Fakawi
Description: Selects World using ingame switcher.
*******************************************************************************}

function SelectWorld(Which: Integer): Boolean;
var
  i: Integer;
begin
  SetupWorldSwitcher;
  if not WelcomeToRuneScape then
  begin
    Result := False;
    Exit
  end;
  ClickWorldSwitchButton;
  OrderBy('location', 'down');
  OrderBy('players', 'down');
  OrderBy('type', 'down');
  Wait(1000);
  GetWorldRecord;
//  ReadOutRecord;
  for i := 1 to HowManyWorlds - 1 do
    if Which = Worlds[i].Nr then
    begin
      Mouse(Worlds[i].X, Worlds[i].Y, 0, 0, True);
      Result := True;
      Exit;
    end;
  FreeNumbers;
end;
/////////////////////////////World Switching////////////////////////////////////






////////////////////////////World Switching/////////////////////////////////////
Procedure GoLessPeeps;
begin
Case Random(5) of
1: SelectWorld(125);
2: SelectWorld(87);
3: SelectWorld(75);
4: SelectWorld(55);
end;
end;
////////////////////////////World Switching/////////////////////////////////////






////////////////////////////Progress Report/////////////////////////////////////

procedure AshursReport;
begin
  Writeln('[]//////////////////////////////////////////////[]');
  Writeln('    ~~~~~~~~~~~~~~Report~~~~~~~~~~~~~~');
  Writeln('   Worked For : ' + ScriptTime2(2))
  Writeln('       Bsed ' + IntToStr(Monks) + ' Monkz');
  Writeln('   Healed ' + IntToStr(HealTime) + ' Times ');
  Writeln('   Have got ' + IntToStr(Randomz) + ' Randoms Since start');
  Writeln('    ~~~~~~~~~~~~~~Report~~~~~~~~~~~~~~');
  Writeln('[]//////////////////////////////////////////////[]');
  SRLRandomsReport;
  GetAllLevels;
end;
////////////////////////////Progress Report/////////////////////////////////////






///////////////////////////////Welcoming////////////////////////////////////////

procedure Ashur;
begin
  Writeln('        A            SSSSSSSSSSS  H          H  U           U  RRRRR');
  Wait(100 + Random(10));
  Writeln('       A A          S             H          H  U           U  R    R');
  Wait(100 + Random(10));
  Writeln('      A   A        S              H          H  U           U  R     R');
  Wait(100 + Random(10));
  Writeln('     A     A      S               H          H  U           U  R      R');
  Wait(100 + Random(10));
  Writeln('    AAAAAAAAA     SSSSSSSSSSSSSS  HHHHHHHHHHHH  U           U  RRRRRRRR');
  Wait(100 + Random(10));
  Writeln('   A         A                 S  H          H  U           U  R R');
  Wait(100 + Random(10));
  Writeln('  A           A                S  H          H  U           U  R  R');
  Wait(100 + Random(10));
  Writeln(' A             A               S  H          H  U           U  R   R');
  Wait(100 + Random(10));
  Writeln('A               A  SSSSSSSSSSSSS  H          H   UUUUUUUUUUU   R    R');
  Wait(100 + Random(10));
  Writeln('                           A    NN   N DDD');
  Wait(100 + Random(10));
  Writeln('                          A A   N N  N D  D');
  Wait(100 + Random(10));
  Writeln('                         A   A  N  N N DDD');
  Wait(100 + Random(10));
  Writeln('   H          H         A        X        X OOOOOOOOOO  RRRRRR');
  Wait(100 + Random(10));
  Writeln('   H          H        A A        X      X  O        O  R     R');
  Wait(100 + Random(10));
  Writeln('   H          H       A   A        X    X   O        O  R      R');
  Wait(100 + Random(10));
  Writeln('   H          H      A     A        X  X    O        O  R       R');
  Wait(100 + Random(10));
  Writeln('   HHHHHHHHHHHH     AAAAAAAAA        XX     O        O  R        R');
  Wait(100 + Random(10));
  Writeln('   H          H    A         A       XX     O        O  RRRRRRRRRRR');
  Wait(100 + Random(10));
  Writeln('   H          H   A           A     X  X    O        O  R R');
  Wait(100 + Random(10));
  Writeln('   H          H  A             A   X    X   O        O  R  R ');
  Wait(100 + Random(10));
  Writeln('   H          H A               A X      X  OOOOOOOOOO  R   R ');
  Wait(1000 + Random(100));
  Writeln('                 Thanks for using the');
  Wait(1000 + Random(100));
  Writeln('                   MonkBSER! :)');
  Wait(100 + Random(10));
  Wait(1000 + Random(100));
  Writeln('Have fun autoing :D');
  Wait(1000 + Random(100));
  Writeln('This script was made by Ashur2good And haxor, Remeber that :)');
  Wait(1000 + Random(100));
  Writeln('Script version ' + Version + ' ');
end;
///////////////////////////////Welcoming////////////////////////////////////////






////////////////////////////////Setup///////////////////////////////////////////

procedure SetupScript;
begin
  MonkColour;
  MouseSpeed := 15;
  CheckUserNicks;
end;
////////////////////////////////Setup///////////////////////////////////////////






////////////////////////////////Main Loop///////////////////////////////////////
begin
  ClearDebug;
  LoadUs;
  MainInitForm;
  FreeForm(frmDesign);
  Ashur;
  SetupScript;
  ActivateClient;
  LoggingIn;
  HighestAngle;
  MakeCompass('N');
  SetRun(True);
  SetsFightMode;
  repeat
    AttackingMonkz;
    AshursReport;
    LogOutEvery(3, 10);
    if (Time = Monks) then
    begin
      GoLessPeeps;
      NextPlayer(True);
      HighestAngle;
      MakeCompass('N');
      SetRun(True);
      SetsFightMode;
      Writeln('Switched players successfully :)');
    end;
  until (False);
end.
 
Runescape Gamblingrunescape gambling
Back
Top