digitalninja
2012-08-28 22:22:39
I would like to officially release my very 1st script. I have been working on herbalore recently and needed to make 2500+ extreme magic potions … which, of course, required 2500+ ground mud runes. Insanely boring, repetitive, and time consuming, which struck me as a fantastic 1st script. I watched a TON of tutorials and although the script is probably super easy for a pro I learned a ton writing it and trouble shooting it. Props to Griff, YoHoJo, Getdropped, and Footy for their tutorials, scripts, and help!
What it does - Grind Mud Runes :spot:
Improvements - I need to somehow add a "Loads" function so it logs out after its done grinding all the runes …
Please enjoy and let me know what I can do to improve this!
What it does - Grind Mud Runes :spot:
Improvements - I need to somehow add a "Loads" function so it logs out after its done grinding all the runes …
Please enjoy and let me know what I can do to improve this!
//by Digital Ninja
//This script is simply meant to grind mud runes for making extreme
//magic potions. Its rather boring so I thought a script would be perfect!
//This is my 1st script attempt and complete credit goes to Griff and
//YoHoJo for their tutorials as well as Getdropped whos Herbalore script
//helped me understand banking and invmouse functions and provided the
//backbone for this script! (And Kudos to Footy as well!)
program Grind;
{$DEFINE SMART}
{$I SRL/SRL.Simba}
var
x, SuperFailSafe : Integer;
const
BankOption = 1; // 0 for bankers and 1 for soulwars chest!
WaitTimer = 150;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := ''; //Character Name
Pass := ''; //Character Pass
Pin := ''; //Pin for bank
Active := true;
end;
end;
procedure AntiBan;
begin
case Random(500) of
0..2:
HoverSkill('Herblore', false);
3:
GameTab(26);
12..15:
PickUpMouse;
16..20:
RandomMovement;
26..27:
RandomRClick;
28..30:
BoredHuman;
33:
ExamineInv;
34:
RandomAngle(SRL_ANGLE_HIGH);
35..40:
GameTab(25);
end;
SetAngle(SRL_ANGLE_HIGH);
Wait(RandomRange(100, 200));
end;
function Bank: Boolean;
begin
If BankOption = 1 then
begin
repeat
SetAngle(SRL_ANGLE_HIGH);
OpenBankChest(SRL_BANK_SW);
until BankScreen or PinScreen;
end;
If BankOption = 0 then
begin
repeat
SetAngle(SRL_ANGLE_HIGH);
MakeCompass('N');
OpenBankNPC;
until BankScreen or PinScreen or not(LoggedIn);
end;
if PinScreen then
begin
repeat
InPin(Players[0].Pin);
until BankScreen or not(LoggedIn);
end;
if BankScreen then
begin
Wait(RandomRange(200, 300));
InvMouse(2, mouse_Right);
WaitOption('All', 2000);
CloseBank;
Wait(RandomRange(500, 600));
end;
end;
procedure Rind;
var
FailSafe : Integer;
begin
FailSafe := 0;
InvMouse(1, 1);
ClickMouse2(True);
Wait(RandomRange(800, 900));
MMouse((MCX1+MCX2)/2 ,(MCY1+MCY2)/2 , 5, 5);
while not(IsUpText('All')) do
begin
Wait(RandomRange(20, 40));
Inc(FailSafe);
if (FailSafe > 50) then
begin
Writeln('Couldn''t find the make all button!');
FindNormalRandoms;
Inc(SuperFailSafe);
if (SuperFailSafe > 2) then
Rind;
Exit;
end;
end;
Writeln(inttostr(failsafe));
ClickMouse2(True);
repeat
wait(100);
Inc(x);
until(x > WaitTimer);
AntiBan;
x :=0;
FindNormalRandoms;
SuperFailSafe := 0;
end;
begin
Cleardebug;
{$IFDEF SMART}
{$IFDEF SIMBAMAJOR980}
Smart_Server := 40;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
{$ELSE}
SRL_SixHourFix := True;
Smart_FixSpeed := True;
{$ENDIF}
{$ENDIF}
SetupSRL;
DeclarePlayers;
LoginPlayer;
Writeln('Welcome to Digital Ninjas Mud Rune Grind!');
Wait(800);
SetAngle(SRL_ANGLE_HIGH);
repeat //main loop
Bank;
Rind;
until(not(loggedin))
Logout;
end.