Simba Code:
program tFletch;
{$DEFINE SMART} { tFletching }
{$i SRL/srl.simba}
var
x, y, Count, Fletching_XP, Antibans, GetTime, i, StartTime,
LoadCount, WHI, Runs, Log, XP: Integer;
User1, Pass1, StatsUser1, StatsPass1, Strings, LogType, Fletchs, Uptext, Method,
LogName, Bankloc, BankPin1: String;
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := User1;
Pass := Pass1;
BoxRewards := ['amp', 'Xp', 'XP'];
Pin := BankPin1;
LampSkill := SKILL_FLETCHING;
Active := True;
end;
end;
Procedure Run;
begin
SRL_SIXHOURFIX := TRUE;
SMART_FIXSPEED := TRUE;
SetupSRL;
SetupSRLStats(1302, StatsUser1, StatsPass1);
DeclarePlayers;
LoginPlayer;
Count := 0;
if not LoggedIn then
begin
repeat
LoginPlayerToLob;
until LobbyScreen;
OpenWorldScreen;
if not WorldScreen then
OpenWorldScreen;
if WorldScreen then
begin
RandomWorld(True, False);
LoginPlayer;
end;
end;
if LoggedIn then
begin
ClickNorth(SRL_ANGLE_HIGH);
ExitSquealOfFortune;
SetChat('off', CHAT_ASSIST);
SetChat('off', CHAT_PUBLIC);
Setchat('off', CHAT_PRIVATE);
FTab(tab_Inv);
end;
if FindNormalRandoms or FindNonInventoryRandoms then
Exit;
Antibans := 0;
end;
{ Form vars }
var
frmDesign: TForm;
BeginButton, SaveButton, LoadButton: TButton;
TitleLabel, UserLabel, PassLabel, InventoryLabel, StatsUserLabel,StatsPassLabel,
TFLabel, LogLabel, TSLabel, AccLabel, StyleLabel, BankLabel, PinLabel: TLabel;
User, Pass, Inventory, StatsUser, StatsPass, BankPin: TEdit;
ImageWH: TImage;
Acc, TSList, TFList, ListLogs, StyleList, BLList: TComboBox;
Accs: Array of string;
RefTime: TTimer;
Procedure ButtonClick(Sender: TObject);
begin
frmDesign.ModalResult := mrOk;
if (Acc.TEXT <> '') then
begin
if not FileExists('C:\Simba\TehScripts\Accounts\' + Acc.TEXT) or not FileExists('C:\Simba\TehScripts\tFletching\' + Acc.TEXT) then
begin
Writeln('Could not locate your player information.. Terminating script.');
TerminateScript;
end;
Runs := StrToIntDef(ReadINI('Times Run', 'Times Run', 'C:\Simba\TehScripts\Stats\tFletching.txt'), 0);
User1 := ReadINI('Name', 'Name', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
Pass1 := ReadINI('Pass', 'Pass', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
StatsUser1 := ReadINI('StatsName', 'StatsName', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
StatsPass1 := ReadINI('StatsPass', 'StatsPass', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
Strings := (ReadINI('String', 'String', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT));
Fletchs := (ReadINI('Fletch', 'Fletch', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT));
BankLoc := (ReadINI('Location', 'Location', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT));
BankPin1 := ReadINI('Pin', 'Pin', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
LogType := (ReadINI('LogType', 'LogType', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT));
LoadCount := StrToIntDef(ReadINI('Total Loads', 'Total Loads', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT), -1);
Method := (ReadINI('Style', 'Style', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT));
end else
begin
Runs := StrToIntDef(ReadINI('Times Run', 'Times Run', 'C:\Simba\TehScripts\Stats\tFletching.txt'), 0);
User1 := User.TEXT;
Pass1 := Pass.TEXT;
StatsUser1 := StatsUser.TEXT;
StatsPass1 := StatsPass.TEXT;
Strings := TSList.TEXT;
Fletchs := TFList.TEXT;
BankPin1 := BankPin.TEXT;
LogType := ListLogs.TEXT;
BankLoc := BLList.TEXT;
LoadCount := StrToInt(Inventory.TEXT);
Method := StyleList.TEXT;
end;
ClearDebug;
WriteLn('Thanks for using Teh''s Fletcher. Please leave some feedback.');
FreeBitmap(WHI);
end;
Procedure ButtonClick2(Sender: TObject); //saves player info
begin
ClearDebug;
if (User.TEXT <> '') then
begin
WriteINI('Name', 'Name', User.TEXT, 'C:\Simba\TehScripts\Accounts\' + (User.TEXT) + '.txt');
WriteINI('Pass', 'Pass', Pass.TEXT, 'C:\Simba\TehScripts\Accounts\' + (User.TEXT) + '.txt');
WriteINI('StatsName', 'StatsName', StatsUser.TEXT, 'C:\Simba\TehScripts\Accounts\' + (User.TEXT) + '.txt');
WriteINI('StatsPass', 'StatsPass', StatsPass.TEXT, 'C:\Simba\TehScripts\Accounts\' + (User.TEXT) + '.txt');
Acc.Items.Add(User.TEXT + '.txt');
WriteINI('String', 'String', (TSList.TEXT), 'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
WriteINI('Fletch', 'Fletch', (TFLIST.TEXT), 'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
WriteINI('Pin', 'Pin', BankPin.TEXT, 'C:\Simba\TehScripts\Accounts\' + (User.TEXT) + '.txt');
WriteINI('LogType', 'LogType', (ListLogs.TEXT), 'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
WriteINI('Location', 'Location', (BLLIST.TEXT), 'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
WriteINI('Total Loads', 'Total Loads', Inventory.TEXT,'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
WriteINI('Style', 'Style', StyleList.TEXT, 'C:\Simba\TehScripts\tFletching\' + (User.TEXT) + '.txt');
end else
Writeln('Please enter a username to save your information.');
WriteLn('Info saved to Simba\TehScripts.');
end;
Procedure OnTimer(Sender: TObject);
begin
if (Acc.TEXT <> '') then
begin
User.TEXT := ReadINI('Name', 'Name', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
Pass.TEXT := ReadINI('Pass', 'Pass', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
StatsUser.TEXT := ReadINI('StatsName', 'StatsName', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
StatsPass.TEXT := ReadINI('StatsPass', 'StatsPass', 'C:\Simba\TehScripts\Accounts\' + (Acc.TEXT));
TSList.TEXT := ReadINI('String', 'String', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
TFList.TEXT := ReadINI('Fletch', 'Fletch', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
ListLogs.TEXT := ReadINI('LogType', 'LogType', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
BankPin.TEXT := ReadINI('Pin', 'Pin', 'C:\Simba\TehScripts\Accounts\' + Acc.TEXT);
Inventory.TEXT := ReadINI('Total Loads', 'Total Loads', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
StyleList.TEXT := ReadINI('Style', 'Style', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
BLList.TEXT := ReadINI('Location', 'Location', 'C:\Simba\TehScripts\tFletching\' + Acc.TEXT);
end;
if (Lowercase(StyleList.Text) = 'cut') then
begin
TFList.Show;
TFLabel.Show;
TSList.Hide;
TSLabel.Hide;
end else
begin
TSList.Show;
TSLabel.Show;
TFList.Hide;
TFLabel.Hide;
end;
end;
Procedure FinishStats;
var
CurrXP, CurrTime: integer;
begin
if (Runs < 1) then
WriteINI('Times Run', 'Times Run', IntToStr(1), 'C:\Simba\TehScripts\Stats\tFletching.txt')
else
WriteINI('Times Run', 'Times Run', IntToStr(Runs + 1), 'C:\Simba\TehScripts\Stats\tFletching.txt');
CurrTime := StrToIntDef(ReadINI('Time Running (sec)', 'Time Running (sec)', 'C:\Simba\TehScripts\Stats\tFletching.txt'), 0);
CurrXP := StrToIntDef(ReadINI('Total XP Gained', 'Total XP Gained', 'C:\Simba\TehScripts\Stats\tFletching.txt'), 0);
WriteINI('Time Running (sec)', 'Time Running (sec)', IntToStr(CurrTime + Round(TimeFromMark(StartTime)/1000)), 'C:\Simba\TehScripts\Stats\tFletching.txt');
WriteINI('Total XP Gained', 'Total XP Gained', IntToStr(CurrXP + Fletching_XP), 'C:\Simba\TehScripts\Stats\tFletching.txt');
end;
Procedure CreateFolders();
begin
ClearDebug;
if not DirectoryExists(AppPath + 'TehScripts') then
begin
CreateDirectory(AppPath + 'TehScripts');
CreateDirectory(AppPath + 'TehScripts\tSuperheat');
CreateDirectory(AppPath + 'TehScripts\tAlch');
CreateDirectory(AppPath + 'TehScripts\tTeleport');
CreateDirectory(AppPath + 'TehScripts\tAgility');
CreateDirectory(AppPath + 'TehScripts\tVial');
CreateDirectory(AppPath + 'TehScripts\tQuest');
CreateDirectory(AppPath + 'TehScripts\tWoodcutting');
CreateDirectory(AppPath + 'TehScripts\tFletching');
CreateDirectory(AppPath + 'TehScripts\Accounts');
CreateDirectory(AppPath + 'TehScripts\Stats');
Writeln('Successfully created the directories that are used in my scripts.');
end else
Writeln('Please delete the TehScripts directory in your Simba folder and try again.');
end;
Procedure InitForm;
begin
frmDesign := TForm.Create(nil);;
frmDesign.Left := 270;
frmDesign.Top := 50;
frmDesign.Width := 800;
frmDesign.Height := 500;
frmDesign.Caption := 'Teh''s Fletcher';
frmDesign.Font.Color := ClBlack;
frmDesign.Font.Name := 'Calibri';
frmDesign.Color := ClNavy;
BeginButton := TButton.Create(FrmDesign);
BeginButton.Parent := frmDesign;
BeginButton.Left := 650;
BeginButton.Top := 400;
BeginButton.Height := 30;
BeginButton.Width := 105;
BeginButton.Caption := 'Begin Script';
BeginButton.OnClick := @ButtonClick;
SaveButton := TButton.Create(FrmDesign);
SaveButton.Parent := FrmDesign;
SaveButton.Left := 650;
SaveButton.Top := 350;
SaveButton.Height := 30;
SaveButton.Width := 105;
SaveButton.Caption := 'Save Info';
SaveButton.OnClick := @ButtonClick2;
TitleLabel := TLabel.Create(FrmDesign);
TitleLabel.Parent := FrmDesign;
TitleLabel.Left := 275;
TitleLabel.Top := 10;
TitleLabel.Caption := 'Teh''s Fletcher';
TitleLabel.Font.Size := 30;
TitleLabel.Font.Color := ClWhite;
TitleLabel.Font.Name := 'Calibri';
RefTime := TTimer.Create(FrmDesign);
RefTime.Interval := 1000;
RefTime.OnTimer := @OnTimer;
RefTime.Enabled := True;
User := TEdit.Create(FrmDesign);
User.Parent := FrmDesign;
User.Top := 100;
User.Left := 200;
User.Width := 140;
User.Height := 20;
UserLabel := TLabel.Create(FrmDesign);
UserLabel.Parent := FrmDesign;
UserLabel.Top := 100;
UserLabel.Left := 80;
UserLabel.Caption := 'Username';
UserLabel.FONT.Color := ClWhite;
StatsUser := TEdit.Create(FrmDesign);
StatsUser.Parent := FrmDesign;
StatsUser.Top := 200;
StatsUser.Left := 200;
StatsUser.Width := 140;
StatsUser.Height := 20;
StatsUser.Text := '';
StatsUserLabel := TLabel.Create(FrmDesign);
StatsUserLabel.Parent := FrmDesign;
StatsUserLabel.Top := 200;
StatsUserLabel.Left := 80;
StatsUserLabel.Caption := 'Stats User';
StatsUserLabel.FONT.Color := ClWhite;
StatsPass := TEdit.Create(FrmDesign);
StatsPass.Parent := FrmDesign;
StatsPass.Top := 250;
StatsPass.Left := 200;
StatsPass.Width := 140;
StatsPass.Height := 20;
StatsPass.Text := '';
StatsPassLabel := TLabel.Create(FrmDesign);
StatsPassLabel.Parent := FrmDesign;
StatsPassLabel.Top := 250;
StatsPassLabel.Left := 80;
StatsPassLabel.Caption := 'Stats Pass';
StatsPassLabel.FONT.Color := ClWhite;
Pass := TEdit.Create(FrmDesign);
Pass.Parent := FrmDesign;
Pass.Top := 150;
Pass.Left := 200;
Pass.Width := 140;
Pass.Height := 20;
PassLabel := TLabel.Create(FrmDesign);
PassLabel.Parent := FrmDesign;
PassLabel.Top := 150;
PassLabel.Left := 80;
PassLabel.Caption := 'Password';
PassLabel.FONT.Color := ClWhite;
Accs := GetFiles(AppPath + 'TehScripts\Accounts\', 'txt');
Acc := TComboBox.Create(FrmDesign);
Acc.Parent := FrmDesign;
Acc.Top := 400;
Acc.Left := 450;
Acc.Width := 140;
Acc.Height := 150;
for i := 0 to high(Accs) do
Acc.Items.Add(Accs[i]);
AccLabel := TLabel.Create(FrmDesign);
AccLabel.Parent := FrmDesign;
AccLabel.Top := 400;
AccLabel.Left := 370;
AccLabel.Caption := 'Account?';
AccLabel.FONT.Color := ClWhite;
BankPin := TEdit.Create(FrmDesign);
BankPin.Parent := FrmDesign;
BankPin.Top := 300;
BankPin.Left := 450;
BankPin.Width := 140;
BankPin.Height := 20;
BankPin.Text := '';
BankPin.MaxLength := 4;
PinLabel := TLabel.Create(FrmDesign);
PinLabel.Parent := FrmDesign;
PinLabel.Top := 300;
PinLabel.Left := 370;
PinLabel.Caption := 'Bank Pin';
PinLabel.FONT.Color := ClWhite;
Inventory := TEdit.Create(FrmDesign);
Inventory.Parent := FrmDesign;
Inventory.Top := 100;
Inventory.Left := 450;
Inventory.Width := 140;
Inventory.Height := 20;
Inventory.MaxLength := 4;
Inventory.TEXT := '75';
InventoryLabel := TLabel.Create(FrmDesign);
InventoryLabel.Parent := FrmDesign;
InventoryLabel.Top := 100;
InventoryLabel.Left := 370;
InventoryLabel.Caption := '# of Invs';
InventoryLabel.FONT.Color := ClWhite;
BLList := TComboBox.Create(FrmDesign);
BLList.Parent := FrmDesign;
BLList.Top := 300;
BLList.Left := 200;
BLList.Width := 140;
BLList.Height := 175;
BLList.Items.Add('Soul Wars');
BLList.Items.Add('Castle Wars');
BLList.Items.Add('Burthrope');
BLList.Items.Add('Varrock East');
BLList.Items.Add('Varrock West');
BLList.Items.Add('Falador East');
BLList.Items.Add('Falador West');
BLList.Items.Add('Yanille');
BLList.Items.Add('Camelot');
BLList.Items.Add('Catherby');
BLList.Items.Add('Draynor');
BLList.Items.Add('Al-Kharid');
BLList.Items.Add('Edgeville');
BLList.Items.Add('Taverly');
BLList.Items.Add('Warriors Guild');
BLList.Items.Add('Fishing Guild');
BLList.Items.Add('Ardougne North');
BLList.Items.Add('Ardougne South');
BLList.Items.Add('Gnome North');
BLList.Items.Add('Gnome South');
BankLabel := TLabel.Create(FrmDesign);
BankLabel.Parent := FrmDesign;
BankLabel.Top := 300;
BankLabel.Left := 80;
BankLabel.Caption := 'Bank?';
BankLabel.FONT.Color := ClWhite;
StyleList := TComboBox.Create(FrmDesign);
StyleList.Parent := FrmDesign;
StyleList.Top := 150;
StyleList.Left := 450;
StyleList.Width := 140;
StyleList.Height := 137;
StyleList.Items.Add('Cut');
StyleList.Items.Add('String');
StyleLabel := TLabel.Create(FrmDesign);
StyleLabel.Parent := FrmDesign;
StyleLabel.Top := 150;
StyleLabel.Left := 370;
StyleLabel.Caption := 'Method?';
StyleLabel.FONT.Color := ClWhite;
ListLogs := TComboBox.Create(FrmDesign);
ListLogs.Parent := FrmDesign;
ListLogs.Top := 200;
ListLogs.Left := 450;
ListLogs.Width := 140;
ListLogs.Height := 137;
ListLogs.Items.Add('Oak');
ListLogs.Items.Add('Willow');
ListLogs.Items.Add('Maple');
ListLogs.Items.Add('Yew');
ListLogs.Items.Add('Magic');
LogLabel := TLabel.Create(FrmDesign);
LogLabel.Parent := FrmDesign;
LogLabel.Top := 200;
LogLabel.Left := 370;
LogLabel.Caption := 'Logs?';
LogLabel.FONT.Color := ClWhite;
TFList := TComboBox.Create(FrmDesign);
TFList.Parent := FrmDesign;
TFList.Top := 250;
TFList.Left := 450;
TFList.Width := 140;
TFList.Height := 42;
TFList.Items.Add('Longbow(u)');
TFList.Items.Add('Shortbow(u)');
//TFList.Items.Add('Crossbow Stock');
TFLabel := TLabel.Create(FrmDesign);
TFLabel.Parent := FrmDesign;
TFLabel.Top := 250;
TFLabel.Left := 370;
TFLabel.Caption := 'Fletch?';
TFLabel.FONT.Color := ClWhite;
TSList := TComboBox.Create(FrmDesign);
TSList.Parent := FrmDesign;
TSList.Top := 250;
TSList.Left := 450;
TSList.Width := 140;
TSList.Height := 42;
TSList.Items.Add('Longbow');
TSList.Items.Add('Shortbow');
TSLabel := TLabel.Create(FrmDesign);
TSLabel.Parent := FrmDesign;
TSLabel.Top := 250;
TSLabel.Left := 370;
TSLabel.Caption := 'String?';
TSLabel.FONT.Color := ClWhite;
ImageWH := TImage.Create(FrmDesign);
ImageWH.Parent := FrmDesign;
ImageWH.Left := 630;
ImageWH.Top := 65;
ImageWH.Width := 151;
ImageWH.Height := 238;
WHI := BitmapFromString(151, 238, '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');
DrawBitmap(WHI, ImageWH.canvas, 0, 0);
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 SetupLogs();
begin
case Lowercase(LogType) of
'oak':
begin
Uptext := 'a';
if Lowercase(Fletchs) = 'longbow(u)' then
XP := 25
else
XP := 17;
LogName := 'Oak Logs';
Log := BitmapFromString(16, 13, 'meJxlke1KAmEQhS8lIoOyL1MrK/uXRFqki1GabLWoLBKEuEiISEQYXoT36mNnm15WOD92Z56Z98xMsTM9b3+fvn4WnicnrZHEN5Gz4AuRNRFP1QbFzpS4SowUQApddH+WCmcFf5zyIr5Jua3+mT/R5PjpI/cwaEzmFK4CSM15ETJ73z+4C3fLwWZ9iChxmditPz5qDg/r7/u33Z3rF+L5x2gJ/2JiNCMjk8p4b5Bbl43tUgue5ns3beY1TKn0la8UcKbao4oncE4HnsMVIoXE8CsGz2Lwjzetbq0UEDTRB4mxQ0jysFHtr1d62rwrw4zUwtkn0tVskATmni/BW8kqqRvFvBe5m0/cOr4mNwpnCyCG34k=');
end;
'willow':
begin
Uptext := 'l';
if Lowercase(Fletchs) = 'longbow(u)' then
XP := 42
else
XP := 33;
LogName := 'Willow Logs';
Log := BitmapFromString(17, 11, 'meJx9kdsKwjAMQP9g3qb/IAxlyuZuUhBFZC9DJuL//4iHBWpo5uA8tOlpkqZl91o3V4iri0aCmo27x4VbHqv6+WZtBa/9Eg7+fJc1/Ye4JriFvMrPyIv0NEsO0XZPFSk0IhdOZDIjE2HLwjYmPXBKWmTSogFrIFgOz5cn21OgCpABSAVyqvln+mGmt4fEpe0J00+exvK2Cz7Foh/LkIEhjH6o/VNmFVzRt6wsfAF3PGsL');
end;
'maple':
begin
Uptext := 'p';
if Lowercase(Fletchs) = 'longbow(u)' then
XP := 58
else
XP := 50;
LogName := 'Maple Logs';
Log := BitmapFromString(17, 11, 'meJx1kV0LgkAQRZ817S+EUBJFFEWRZAlRhBXRlyyBRPQUvRYR/vruOH7sKsF50OHcmdldW0T1w6s6u5puaE4uCm6IeoJ3Y0xH2CJqnD9JRKJgkuyGxjgwhntEABWzhmxKv5jIst7z9c6CIsGXBnE3Ocjy6FQZ7CBr7Tkq+OVI7mS7OYLk/lbvrrSWBx/98Q3s+PiZqTWnitDzkcIUgMXQBBta6wdtCOIOCalJWmpiLl+jtXnWlncqMuykWm7GMsOLIVh8FPWB5MvnS6bg8Z0f/79fjiip8svG/AC/hXru');
end;
'yew':
begin
Uptext := 'e';
if Lowercase(Fletchs) = 'longbow(u)' then
XP := 75
else
XP := 68;
LogName := 'Yew Logs';
Log := BitmapFromString(17, 10, 'meJyNkdEKgkAQRR/d0f4hqJQICVlcRGMRFiGEkL6gr+j/6Y6TtK4KwXmQ3TN3xh1K26QekuoxAydzYtPH5Z0Kpy5N+XoHt7vbM5R1R9eWcqvOVXTSlDkQxo69ECsykiFzue7w/fO9wWQGkaPMAJRwIfzcEv5lMtF0RcBIAAmFQxdOw+GIOFsaY/pv8t7w4cSW5kNHqw4NP4vHUvPBIwOS7SwXtLavf0u8rX0AgipZrA==');
end;
'magic':
begin
Uptext := 'g';
if Lowercase(Fletchs) = 'longbow(u)' then
XP := 92
else
XP := 83;
LogName := 'Magic Logs';
Log := BitmapFromString(17, 11, 'meJybOM8goqY1vLo5rLIxtLweiIJLa4EIwgYKQtCUC1f88sq8Mgv0vIMmzjOwis+A64IgIBuIgIIQZB6dYhoebxwSbRAQruMZANRiEZsWWdcOVwBkWydmQRBQClk90Aptdz+glqY+bZ3oNLgyCAJaDVRsFplkEhZrGBSp7xcKUa/h7AnUohWRhKYeaDhQMbLhQPfYhEar2buoO7rfuH1ROzIFzXCgYojhrokZTrEpQMMhCKgRhKLT4FoghgMVIyOgdjiav2UbUIFvTolNcg4c2abmISO79AJkZJ9RFFhUBRQHakQWhKPuQ8ccskqACB5ZQBRUUn3n/tVrNy8AnQSUcswpgyNg7DScPAuPXzgCarn/6MbNO5f7ZukD/QKJF0g8IscsMgJaBAB/etZX');
end;
end;
end;
Function WaitFindBitmap(Bitmap: integer; var x, y: integer; xs, ys, xe, ye, Tolerance, WaitPerLoop, MaxTime: integer): boolean;
var
t: integer;
begin
t := (getSystemTime + MaxTime);
while (getSystemTime < t) do
begin
if (FindBitmapToleranceIn(Bitmap, x, y, xs, ys, xe, ye, Tolerance)) then
begin
result := true;
break;
end;
wait(WaitPerLoop);
end;
end;
Function Fletching: boolean;
var
StartLogs, CurrentLogs, Done: integer;
begin
Done := BitmapFromString(59, 16, 'meJzVlDGKwlAQhhuV9Vl4h228gJ2lIGJp61aCB7ATjCgGPYXtNiso7BZ7CcFDeBFNnnlO3j8ziSmCwleYf/55+ZSH/Xa1/1YMOzzNzxYilYtSSVASl2Pnwc3tfLogiTazUhpf3SrihOnPS7XZrXIY9yoIFdZDmzswVwr6SGIyqCHUTc+9y4O5VFB2dRYjBvo6JfduDjui9yrnrs5u+oHQE6QcO8Wm+HVYJcf3rI7QdSnHToEp+0fEKjl+5gahh0s5dopNPaJyEGNfGph9kHI7LBnogVKIHUkpmq7UabIePa7MMeae088xv2uGzP9htkan3iMm+IrHNDQRViY0fyEvyQrjBXMCbFPS05PUurV9UtiehmQ2Mc+TpNZB2CeHfKlkCf9vGq/FNkEoXAF3z/CI');
result := true;
StartLogs := InvCount;
repeat
CurrentLogs := CountItems('bmp', Log, [15]);
if not (CurrentLogs = 0) and (CurrentLogs <= StartLogs) then
result := true;
if (CurrentLogs = 0) then
begin
if WaitFindBitmap(Done, x, y, MSX1, MSY1, MSX2, MSY2, 10, 100, 1000) then
Mouse(x + 10, y, 30, 15, mouse_Left);
result := false;
break;
end;
until (result = false);
FreeBitmap(Log);
FreeBitmap(Done);
end;
Procedure BankDeposit;
var
BankTime: integer;
begin
MarkTime(BankTime);
repeat
Deposit(1, 28, True);
until InvEmpty or (TimeFromMark(BankTime) > 15000);
if (TimeFromMark(BankTime) > 15000) then
begin
WriteLn('Failed to deposit bows. Logging out your character and terminating the script.');
Logout;
TerminateScript;
end;
end;
var
T: integer;
function WaitLogCount(Count, CountLog, MaxTime: Integer): boolean;
begin
if not BankScreen then
if not GameTab(tab_Inv) then
exit;
Result := false;
T := GetSystemTime + MaxTime;
while (GetSystemTime < T) do
begin
if CountLog > Count then
begin
Result := true;
break;
end;
end;
end;
Procedure LogOT;
begin
if (TimeFromMark(GetTime) > 6000) then
begin
Writeln('Failed to withdraw logs. Logging out your character and terminating the script.');
repeat
Logout;
TerminateScript;
until not LoggedIn;
end;
end;
Procedure Banking;
var
BankTime: integer;
begin
if FindNormalRandoms or FindNonInventoryRandoms or not LoggedIn then
Exit;
MarkTime(BankTime);
repeat
SetAngle(SRL_ANGLE_HIGH);
case Lowercase(BankLoc) of
'soul wars': OpenBankChest(SRL_BANK_SW);
'castle wars': OpenBankChest(SRL_BANK_CW);
'burthrope': OpenBankChest(SRL_BANK_B);
'varrock east': OpenBankQuiet('veb');
'varrock west': OpenBankQuiet('vwb');
'falador east': OpenBankQuiet('feb');
'falador west': OpenBankQuiet('fwb');
'yanille': OpenBankFast('ynb');
'camelot': OpenBankFast('clt');
'catherby': OpenBankFast('ctb');
'draynor': OpenBankQuiet('db');
'al-kharid': OpenBankQuiet('akb');
'edgeville': OpenBankQuiet('eb');
'taverly': OpenBankFast('tavb');
'warriors guild': OpenBankFast('wgb');
'fishing guild': OpenBankFast('fgb');
'ardougne north': OpenBankFast('nab');
'ardougne south': OpenBankFast('sab');
'gnome north': OpenBankFast('ngb');
'gnome south': OpenBankFast('sgb');
end;
until WaitFunc(@BankScreen, Random(15), 2000) or WaitFunc(@PinScreen, Random(15), 2000) or (TimeFromMark(BankTime) > 25000);
if (TimeFromMark(BankTime) > 25001) then
begin
WriteLn('Failed to open the bank. Logging out your character and terminating the script.');
Logout;
TerminateScript;
end;
if PinScreen then
begin
MarkTime(BankTime);
repeat
InPin(Players[CurrentPlayer].Pin);
until BankScreen or not LoggedIn or (TimeFromMark(BankTime) > 15000);
if (TimeFromMark(BankTime) > 15000) then
begin
WriteLn('Failed to enter your bank pin. Logging out your character and terminating the script.');
Logout;
TerminateScript;
end;
end;
end;
Procedure WithdrawLog(Tol: integer);
var
Amount, ReqLog, Bs: integer;
begin
Bs := BitmapFromString(37, 12, 'meJy11DEKgDAMAMCYRYX6B58guCkuLs4dnd38/wOMBEKJVocmIUuh9EjaFOAOBJjjThmPk5KWfT9wgkMojkXKYVrHZfPgQuiUmKKF59dN+xS/UZSdiGARdFOYNFah4lYmWB79rdcQfaXTN2xIyzh806wbFpuj1UWXlJl7gTQXQrP+2mG/UB0W1FVklC2aX/4J1bYL9KRSrA==');
MarkTime(GetTime);
if Lowercase(Method) = 'cut' then
Amount := 28
else
Amount := 14;
repeat
if WithdrawItem(Log, 'bmp', Amount, Uptext, [Tol]) then
begin
if (Lowercase(Method) = 'cut') then
WaitLogCount(27, CountItems('bmp', Log, [Tol]), 1500)
else
begin
//WaitLogCount(13, CountItems('bmp', BowU, [Tol]), 1500);
if WithdrawItem(Bs, 'bmp', Amount, 'str', [Tol]) then
WaitLogCount(13, CountItems('bmp', Bs, [Tol]), 1500);
end;
ClearDebug;
WriteLn('You currently have ' +IntToStr(CountItems('bmp', Log, [Tol])) +' '+ LogName + ' in your inventory.');
end;
until (CountItems('bmp', Log, [Tol]) > 13) and (CountItems('bmp', Bs, [Tol]) > 13) or (CountItems('bmp', Log, [Tol]) > 27) or (TimeFromMark(GetTime) > 6000);
LogOT;
CloseBank;
FreeBitmap(Bs);
end;
Procedure Progress;
var
Fxph: integer;
begin
Fxph := Round((Fletching_xp) / (GetTimeRunning / 3600000.0));
ClearDebug;
WriteLn('=-=-=-=-=-=-=-= Fletcher by Teh =-=-=-=-=-=-=');
WriteLn('Time Running: ' +TimeRunning);
WriteLn('Fletching: ' + (LogType));
WriteLn('Fletching XP Gained: ' + IntToStr(Fletching_XP));
Writeln('Fletching XP/Hour: ' + IntToStr(Fxph));
WriteLn('=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=');
end;
Procedure Antiban;
begin
case Random(200) of
40:
begin
HoverSkill('Fletching', False);
Inc(Antibans);
end;
80:
begin
HoverSkill('Random', False);
Inc(Antibans);
end;
120:
begin
Boredhuman;
Inc(Antibans);
end;
160:
begin
RandomRClick;
Inc(Antibans);
end;
end;
end;
Procedure CutLogs;
var
Cut, Longbow, Shortbow, Fletch, AddString: integer;
begin
Cut := BitmapFromString(33, 30, 'meJydVttqE1EULX30wW/oHyilUh0T0iStaQdDzIy9zBDSOIQQJC++KpRQrKkVe4FWBH/W1VnN7vbcYjtswpmZk7XOXmuffSaKXkfzWFt7yVidXxzjVRzHSZLE5dWoN/C7vLR0cNDL8/50+g3jlZXngrP+4haE40p1A7eRYrmbsF7BHD2TsEIh+Iijo68GhQ5QOJ8zatUNoNWqVVI0N3eYi8bv9QaPpgB+p93mmnUKQBNwxPHxLEwR1WMfhcC2tlpkQbTebAGN4P1+cXLyAxTE91G8aiYBCiOYAsERGIBC8DHBqU+l1gwboQO6ARDgg8EQv6ffL/T6DYp7LhcFFgBntT5SRQBnYP2z2U9SiF82C6Aa210nhaHPrSOlC0UxQkCis7NLLdEjKEQlDFCleZYTfzgcQ6KLy1+CD2pJ021HsKIYoCg+FMAEPiRCuZ6fX4tEshl9XgQoRDHutdHoIyW6uvqtJWJVwzuv3dbWw5P7eit9JwUlEosNl/W/bDXCvCwkpECJrm/+2BIFWgR1CLcpvKXRhkQA77TfLWQJUzB3YD551kJIIxIL8izd382S8vLhiIyB9ROfoSWCxQSn0QEjnG+ZnYH/tF4IBcHTNOMh5S1Xv912CoKPAOzgsIedgv0IrRZSIE3ncx9+CXsXzIWt7KFZOC0o8VM2k2R+LSxaX2gKXaXQR/BRsfprIVz2/4PPPU58nrag4O3CROy3QqF3Afst61/2NR0P90C7sQB2by8bjyefv0z1cRP9ewhK3RqHu4Em547G73RS9IrJ5JPd6zDg1w5zl+5BCq6WFDxunBUF2G53F70ITZUUeg36XAAmbyUXn/hMRFNs77xN3++DRVOICGKEmG5UVM0SyllODKoEZRBybjIXtj6dgiQbrl4JghvfXfSa+giy5CKnvI/iL7Mqx2E=');
Longbow := BitmapFromString(90, 18, 'meJztUlsOwyAM6wm4/22Z1EpRaucF7bqpwl8hOCYxaW3h/eg7rhBeg2PSbUdKe6yrn6BohSZP06Y3UPLf/hFx40ayR0vL08KhbkcxtBi6pCjLV/Fbf+LGlZJ+RqPmxT2OTcIh3gnaDSiMBeM4Hc07cokcNXRLcmSXgJ8SKsqeYBCnbvCwMcFzDJ7mAPh1gqfs8Z9xo51XNBaBADDkxmi+q3Xy3JB80Q05gg7scNGNjXC7G/qz+Oi5kY7vLYYpVXcDfsQk6P6n3dCzV6YougqW9jPgi4Oe00K5YgUu9ATN2WM3TEPMNsztgm3XSeBAPi3UVxBwoSfIzZgZc6i0jUBhYWHBxAfKONPO');
Shortbow := BitmapFromString(95, 18, 'meJztVdEOxCAIuy/w///WJS4xFQSLM95yZ5+UlALVuZQO/g654AnhV3EP/ikY0rZ19QaQziD5SaG53J2aWp9xJkpemCtE1mr6tchr021votZEriWyx5zlKbkFJmLQIic4BbFYoumsnUm7JaLmVA4C+6xbTbasuCt2yVFNIWUNZZnj3FveHMtV0Y9VUTvstBfV/KI5qT13X5mMM+3xmhkumzMU9s9XZ54pce3fYA6emt5a5gzLdbcMoibsMQet8Ieqh8uYzFyb3AJfRf80Hb4W14nYnh8PPRTan9z7V5IfVCrflHhLa1BweL4W14la34prweE4VnVG4eDgYDkuUTmArA==');
Fletch := BitmapFromString(69, 18, 'meJztlKsKAlEQhovrrfgOFh/CJlgEywaLyWDaJBgUFcFssxosFgWDzyH4EL6ICwOHYWbOv+MlGIQv7M4/8+05e0vbSfrnVxl2PqLRbOV8KPmifNQtYcipoeh+e+TQ6Xd5Tz7ulQHBqaFNhWPsCTZnJ7+0fyQn6ycA7hSIFHtebX6jn5gPSgDudKZ8y7FmMxX12J3EC14NywDu9KTi5YzVPVNcbk6ZbMcVAHjZRKqbeWSqzLo+5iPCqdllVYD/V2BuPFS4ik6FPxRpMBZpg2A/QYCno1OwcdFs+sGlC5sDh2kNwA04BRsHKuDXEV4McZwhuAGnZifVgUoXw4gZgcUQ52UdwA2FqX5AONWS2LFnMcRpgeAGT6q/ID4o0tgU1YHcXAxxWRdAN8qfig/H7MdThXKw2uvmz+/yBCC9DpA=');
AddString := BitmapFromString(100, 14, 'meJy1lD1OA1EMhJsk/DS5Aw33QKJBoqXZiiJVKiQKECAuQEdLQZMGJE4SiUNwEVayZFn2ePB7u0hfkdhjz7y32Qxny2Em1ienI33dGfk/o+vzBUesK7Lv/c8IFPOuulj+dOyIMZHNxYpgracoi12LVcrt8QCtgTvYXi4J1nqKknRtS7HiegZdWFS2cn+1yHCPe/wKNfGAxa61cFO2GC/TLrcurg418RTx9c8u5GlYZcS74gIn412n0Zxal8/ZEjuY1aHGZaiEVF42B5DMNBM4De/GJe683AgOkruaGFJ53R5CsruK3T59NIoHJ7PwX64pRlNI4e0GAJNoxQngCOlCO+fCvcjCeozWkCPvt0eR7FnLHiuQr67Cu9HLFuM4nM0W1mM0hRR2dwD+u3ICOEK6mVFWrGiy5LOEVD4fjx12hNShb7ELd8aHkmmKIfmqekjl48FjN/C629/UjWvdm0407h6ykCRSa0jh6xkgRpW6PuuObpRZPdHUQ2aRss16VzDnL9rOHD4=');
if InvFull then
begin
case Lowercase(Method) of
'cut':
begin
if InvMouse(1, mouse_Left) then
begin
if WaitFindBitmap(Cut, x, y, MSX1, MSY1, MSX2, MSY2, 15, 100, 2000) then
Mouse(x, y, 15, 15, mouse_Left);
if (Lowercase(Fletchs) = 'longbow(u)') then
begin
if not WaitFindBitmap(Longbow, x, y, MSX1, MSY1, MSX2, MSY2, 15, 100, 800) then
if (Lowercase(LogType) = 'magic') then
Mouse(90, 100, 10, 10, mouse_Left)
else
Mouse(139, 100, 10, 10, mouse_Left);
end else
begin
if not WaitFindBitmap(Shortbow, x, y, MSX1, MSY1, MSX2, MSY2, 15, 100, 2000) then
Mouse(42, 102, 10, 10, mouse_Left)
end;
if (Lowercase(Fletchs) = 'longbow(u)') then
if WaitFindBitmap(Longbow, x, y, MSX1, MSY1, MSX2, MSY2, 15, 100, 2000) then
if WaitFindBitmap(Fletch, x, y, MSX1, MSY1, MSX2, MSY2, 15, 200, 2000) then
Mouse(x, y, 50, 10, mouse_Left);
if (Lowercase(Fletchs) = 'shortbow(u)') then
if WaitFindBitmap(Shortbow, x, y, MSX1, MSY1, MSX2, MSY2, 15, 100, 2000) then
if WaitFindBitmap(Fletch, x, y, MSX1, MSY1, MSX2, MSY2, 15, 200, 2000) then
Mouse(x, y, 50, 10, mouse_Left);
end;
end;
'string':
begin
if InvMouse(1, mouse_Left) then
if InvMouse(15, mouse_Left) then
begin
if (Lowercase(Strings) = 'shortbow') then
if WaitFindBitmap(Shortbow, x, y, MSX1, MSY1, MSX2, MSY2, 8, 100, 2000) then
if WaitFindBitmap(AddString, x, y, MSX1, MSY1, MSX2, MSY2, 15, 200, 2000) then
Mouse(x, y, 10, 10, mouse_Left);
if (Lowercase(Strings) = 'longbow') then
if WaitFindBitmap(Longbow, x, y, MSX1, MSY1, MSX2, MSY2, 8, 100, 2000) then
if WaitFindBitmap(AddString, x, y, MSX1, MSY1, MSX2, MSY2, 15, 200, 2000) then
Mouse(x, y, 10, 10, mouse_Left);
end;
end;
end;
end;
FreeBitmap(Cut);
FreeBitmap(Longbow);
FreeBitmap(Shortbow);
FreeBitmap(Fletch);
FreeBitmap(AddString);
end;
begin
CreateFolders;
MarkTime(StartTime);
SafeInitForm;
ClearDebug;
SafeShowFormModal;
Freeform(frmDesign);
Run;
AddOnTerminate('FinishStats');
repeat
SetupLogs;
Banking;
if not InvEmpty then
BankDeposit;
WithdrawLog(17);
CutLogs;
while Fletching do
begin
Antiban;
Wait(100);
end;
IncEx(Fletching_XP, XP * 28);
Progress;
Inc(Count);
until (Count = LoadCount);
end.