Simba Code:
program SoulWarsHumidify;//
{$DEFINE SMART}
//{$DEFINE CRASHSMART}
{$DEFINE SRL5}
{$i srl/srl.simba}
//{$i SRL\SRL\Misc\stats.simba}
const
SRLStats_Username = '';// SRL Stats ID
SRLStats_Password = '';// SRL Stats Pass
HowManyToFill = 10000;// to the number of items you want filled.
var
CPH, Loads, FilledItem, Casts, Bank : Integer;
EXP, aFound : Extended;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name :=''; // Username
Pass :=''; // Password
Nick :=''; // 3-4 lower case letters of your character's name
Pin :=''; // NO PIN SUPPORT.
Member := true;
Active := true;
end;
end;
Procedure CheckStats;//SRL Stats
begin
if ((SRLStats_Username = '') And (SRLStats_Password = '')) then
begin
case MessageBox('No Stats account entered, would you like to set one up?','SRL Stats',mbYesNoCancel) of
mrYes:
begin
OpenWebPage('http://stats.villavu.com/register');
TerminateScript;
end;
mrNo:
begin
SetupSRLStats(399,'Anonymous','anon1337');
Exit;
end;
mrCancel: TerminateScript;
end;
end else
SetupSRLStats(399,SRLStats_Username,SRLStats_Password);
end;
procedure BankChest(PX:Integer; Click: Boolean);//credits to Demise for her guide :)
var
x, y : Integer;
begin
Bank := DTMFromString('m1gAAAHic42IAAkYGhi9AihNI/wLSHED6P5D+AWX/BikB0peA9DEgPgrF56D0RSC+BsXXgTgp3JuhLDOaIS3aj6EoLYKhJD2SIS8phKEgJYzBx9mKIdzPmSHUx5GBFagWhvlxYFaI84jCCAAASX8YHQ==');
if FindDTMRotated(PX, x, y, MSX1, MSY1, MSX2, MSY2, -Pi, Pi, Pi/30, aFound) then
begin
MMouse(x, y, 0, 0);
GetMousePos(x, y);
if (WaitUpText('se Bank', 200)) then
begin
Writeln('Opening bank.');
ClickMouse2(True);
Wait(500);
if (BankScreen) then
begin
Writeln('Bank Opened.');
FreeDTM(Bank);
Exit;
end;
end;
end;
end;
procedure SetUp;
begin
MakeCompass('S');
SetAngle(SRL_ANGLE_HIGH);
Writeln('Thanks for using! Have a nice day :) ');
Wait(500);
end;
procedure HandleItem;
begin
BankChest(Bank, True);
if (BankScreen) then
begin
Writeln('Depositing.');
Deposit(4, 28, true);
IncEx(Loads, 1);
Wait(200);
Writeln('Withdrawing.');
Withdraw(0, 0, 28);
CloseBank;
Wait(300+Random(300));
Exit;
end else
if not (BankScreen) then
begin
repeat
BankChest(Bank, True);
until(BankScreen);
HandleItem;
end;
end;
procedure ClickSpell;
var
x, y : Integer;
Humidify : Integer;
begin
GameTab(Tab_Magic);
Humidify := DTMFromString('mwQAAAHic42RgYOACYn4gFgZiMSAWAGJmBgjggmIOIOaDYhCfBYjZgJgbiHmhamXzVgNJRgKYMCBkAoopAAspAgo=');
If FindDTM(Humidify, X, Y, MIX1, MIY1, MIX2, MIY2) Then
begin
Writeln('Casting Humidify.');
Mouse (x, y, 0, 0, true);
FreeDTM(Humidify);
SleepAndMoveMouse(3500);
IncEx(FilledItem, 27);//Modify if you aren't using a steam staff.....
IncEx(Casts, 1);
end;
end;
procedure ProgressReport;//Thanks to King Kong and Camaro' for their input on this.
begin
EXP := 65;
CPH := Round((Casts * 3600) / (GetTimeRunning / 1000));
ClearDebug;
Writeln('=======================================================');
Writeln(' Soul Wars Humidifier V2');
Writeln(' Time running: '+TimeRunning+'');
Writeln(' Items filled: '+ToStr(FilledItem)+'');
Writeln(' Casts done: '+ToStr(Casts)+'');
Writeln(' Casts per hour: '+ToStr(CPH)+'');
Writeln(' Amount left: '+ToStr(HowManyToFill - FilledItem)+'');
Writeln(' Exp gained: ' + FloatToStr(Loads * EXP) + '');
Writeln('=======================================================');
stats_IncVariable('Magic EXP (Gained)', 65);
stats_Commit;
end;
begin
Smart_Server := 9;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
ActivateClient;
DeclarePlayers;
CheckStats;
LogInPlayer;
SetUp;
repeat
if not LoggedIn then TerminateScript;
//BankChest(Bank, True);
HandleItem;
ClickSpell;
ProgressReport;
until(FilledItem=HowManyToFill);
if (FilledItem=HowManyToFill) then
LogOut;
TerminateScript;
end.