Dog
2014-10-12 21:37:20
Hey guys!
Earlier I requested a superheater script on a different thread: https://villavu.com/forum/showthread.php?t=110517
And a lot of people seemed interested. Knowing that this would be a popular script, I decided to do some digging, and actually found something on this thread: https://villavu.com/forum/showthread.php?t=108760
Voilaa superheater script :thumbsup:
I was really excited to find what I had been looking for, but unfortunately the script is quite old, and won't even run. Now that we have a basic script, could a script writer maybe fix this one? Or even better make a new and better script? ;)
I'm sure it would be a great addition to the script library, and with color I see this script running forever. Heck, maybe someone could code this in Aerolib, and make it amazing :spot:
Thanks to whomever decides to take this on :)
Credit:
All credit goes to Frement for making the superheating script attached.
~Dog
Earlier I requested a superheater script on a different thread: https://villavu.com/forum/showthread.php?t=110517
And a lot of people seemed interested. Knowing that this would be a popular script, I decided to do some digging, and actually found something on this thread: https://villavu.com/forum/showthread.php?t=108760
Voilaa superheater script :thumbsup:
program new;
{$DEFINE SMART8}
{$I SRL-OSR/SRL.Simba}
{$I SRL-OSR\SRL\misc\SmartGraphics.simba}
{$I SRL-OSR/SRL/Reflection/Reflection.simba}
function F_OpenBank: Boolean;
var
Booth: TPoint;
begin
if (not LoggedIn) or (BankScreen) then
Exit;
Booth := R_TileToMS(Point(3186, 3436));
MMouse(Booth.X, Booth.Y, 2, 2);
Sleep(100 + Random(100));
if (R_IsUpText('Bank Ba')) then begin
ClickMouse2(Mouse_Left);
end else begin
ClickMouse2(Mouse_Right);
Sleep(250 + Random(250));
R_ChooseOption('Bank Ba');
end;
Sleep(500 + Random(250));
if (PinScreen) then
InPin(Players[CurrentPlayer].Pin);
Result := WaitFunc(@BankScreen, 250, 2500);
Sleep(1000 + Random(250));
end;
procedure F_CloseBank;
begin
if (not LoggedIn) or (not BankScreen) then
Exit;
MMouse(486, 42, 2, 2);
ClickMouse2(Mouse_Left);
Sleep(250 + Random(250));
end;
function F_WithdrawEx(Col, Row, Amount: Integer; Uptexts: TStringArray): Boolean;
var
BBox: TBox;
X, Y: Integer;
begin
Result := False;
FixBank;
if not bankscreen then
exit;
BBox := BankIndexToMSBox(BankPointToBankIndex(Point(Col, Row)));
BBox := IntToBox(BBox.X1 - 2, BBox.Y1 + 10, BBox.X2 - 2, BBox.Y2 + 3);
GetMousePos(X, Y);
if (not PointInBox(Point(X, Y), BBox)) then
MouseBox(BBox.X1 - 2, BBox.Y1 + 10, BBox.X2 - 2, BBox.Y2 + 3, mouse_move);
if (Length(Uptexts) > 0) then
if (not R_WaitUpTextMulti(Uptexts, 500)) then
Exit;
if (Amount = 1) then
ClickMouse2(mouse_left)
else
ClickMouse2(mouse_right);
if (Amount = 1) then
begin
Result := True;
Wait(RandomRange(250, 550));
Exit;
end;
if (Amount = -1) then
begin
if (WaitOptionMultiEx(['Withdraw-All-but', 'l-b'], 'All', Nothing, 300)) then
Result := R_ChooseOption('Withdraw-All-but');
end else
if (Amount = 0) then
begin
if (WaitOptionMultiEx(['Withdraw-All', 'w-A'], 'All', Nothing, 300)) then
Result := R_ChooseOption('Withdraw-All');
end else
if (WaitOptionMultiEx(['Withdraw-' + IntToStr(Amount) + ' ', 'w-' + IntToStr(Amount) + ' '], 'All', Nothing, 300)) then
Result := R_ChooseOption('Withdraw-' + IntToStr(Amount) + ' ');
if (not (Result)) and (Amount > 0) then
begin
if (not OptionsExist(['Withdraw', 'ithdraw', 'draw'], False)) then
MouseBox(BBox.X1 + 5, BBox.Y1 + 5, BBox.X2 - 5, BBox.Y2 - 5, mouse_right);
if WaitOptionMulti(['Withdraw-X', 'w-X', 'X'], 500) then
begin
X := GetSystemTime + 10000;
while (X >= GetSystemTime) and (not (InRange(CountColor(0, 211, 394, 308, 411), 200, 300))) do
Wait(50);
Wait(RandomRange(75, 400));
TypeSend(IntToStr(Amount));
Result := True;
end;
end;
end;
procedure WithdrawOres;
begin
F_OpenBank;
F_WithdrawEx(2, 0, 9, ['Iron ore']);
F_WithdrawEx(1, 0, 0, ['Coal']);
F_CloseBank;
end;
procedure SuperheatBar;
begin
GameTab(tab_Magic);
MMouse(666 + RandomRange(-3, 3), 313 + RandomRange(-3, 3), 2, 2);
Sleep(100 + Random(100));
ClickMouse2(Mouse_Left);
Sleep(100 + Random(100));
InvMouse(10, 1);
Sleep(1000 + Random(250));
end;
procedure Superheat;
var
I: Integer;
begin
for I := 0 to 8 do begin
SuperheatBar;
end;
end;
procedure DepositBars;
begin
F_OpenBank;
Deposit(2, 28, True);
end;
begin
SetupSRL;
SetupReflection;
repeat
WithdrawOres;
Superheat;
DepositBars;
until(False);
end.I was really excited to find what I had been looking for, but unfortunately the script is quite old, and won't even run. Now that we have a basic script, could a script writer maybe fix this one? Or even better make a new and better script? ;)
I'm sure it would be a great addition to the script library, and with color I see this script running forever. Heck, maybe someone could code this in Aerolib, and make it amazing :spot:
Thanks to whomever decides to take this on :)
Credit:
All credit goes to Frement for making the superheating script attached.
~Dog