Arr0w
2006-10-27 13:18:46
Hello thank you for looking at my powerminer.
Features:
-AntiBan
-AntiRandoms
-Fully functional progress report
- supports runescapes new interface
Features:
-AntiBan
-AntiRandoms
-Fully functional progress report
- supports runescapes new interface
{-------------------------- Arr0w's Powerminer --------------------------]
[ To start this scipt fill the colors of the rock in the setup ]
[ Then start the script stand next to the rock you want to mine ]
[ Put your pick in first inv slot. ]
[ ]
[ /\ |===\ |===\ /===\ | | /==\ ]
[ / \ | © | | © | | | | | / ]
[ | © | |___/ |___/ | © | | | \===\ ]
[ |====| | \ | \ | | \ /\ / / ]
[ | | | \ | \ \===/ \/ \/ \==/ ]
[ ]
[ /==\ /===\ | | |=== |===\ | | ===== | | |=== |===\ ]
[ | ©| | | | | | | © | |\ /| | |\ | | | © | ]
[ |__/ | © | | | |== |___/ | \/ | | | \ | |== |___/ ]
[ | | | \ /\ / | | \ | | | | \| | | \ ]
[ | \===/ \/ \/ |=== | \ | | ===== | | |=== | \ ]
[ ]
[------------------------------------------------------------------------]
# ScriptName = Anyore Powerminer!
# Author = Arr0w
# Description = Mines any ore then drops them.
# Authors Email = [email]Scott-_-bradford@hotmail.com[/email]
# Date = Published on the 10 october 2006
# Comments = Please post all Bugs/Corrections in this script's thread.
}
Program PowerMiner;
{.include SRL/SRL.Scar}
{.include SRL/SRL/Skill/Mining.Scar}
{.include SRL/SRL/Extended/xMapWalk.Scar}
{.include SRL/SRL/Misc/Trade.Scar}
//-=-=-=-=-=-=-=-=-=-=-=Setup=-=-=-=-=-=-=-=-=-=-=\\
Const
RockColor = 7829376; // The color of the rock.
RockColor1 = 7829376; // If the rock has 2 kind of colors find a different color from the top one.
RunDirection = 'N'; // What direction to run if fight found?
GenieSkill = 'Mining'; // What skill to use if genie is found?
LoadsToDo = 50; // How many loads do you want to do?
DisguiseScarAs = 'Google - FireFox'; // What do you want to disguise scar as?
RandomTalking = True; // Do you want to random talk?
TurnOffChats = False; // Do you want to turn off the chat?
UserName = 'Pur3min3r44'; // This is required if you choose to keep chats on.
//=-=-=-=-=-=-=-=-=-=-=End Of Setup=-=-=-=-=-=-=-=-=-=\\
//NOTE: PUT A CAPiTAL AT THE BEGINING OF YOUR USERNAME.
//NOTE: IF YOU HAVE RANDOMTALKING = TRUE THEN
// YOU CANT HAVE CHATS OFF OTHERWISE THE SCRIPT WILL JUST GET CONFUSED.
Var
gx, gy, Tradess,OresMined,
Clay,OreMask,Loads : Integer;
Procedure Miner;
Begin
Wait(100 + random(10));
If (findcolorspiral(x, y, rockcolor, 3, 3, 515, 336)) Or
(findcolorspiral(x, y, rockcolor1, 3, 3, 515, 336)) Then
Mmouse(x, y, 3, 3)
Wait(200 + random(50));
If (istextat2(x, y, 'ine', 5) = true) Then
begin
wait(500 + random(50));
Mouse(x, y, 2, 2, true)
wait(1000)
Loads := Loads + 1;
OresMined := OresMined + 27
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure CantFindRocks;
Var
WX, WY : integer;
Begin
If (Not(findcolorspiral(x, y, rockcolor, 3, 3, 515, 336))) Or
(Not(findcolorspiral(x, y, rockcolor1, 3, 3, 515, 336))) Then
Begin
If FindSymbol(Wx, WY, 'mining site') Then
Begin
Mmouse(x,y,3,3)
Mouse(x,y,2,2,true)
End;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure Randoms;
Begin
TalkToRand;
FindNormalRandoms;
If (FindFight) Then
Begin
RunWhere(rundirection, false);
Wait(10000 + random(200))
RunBack;
End;
If (GasFound(gx, gy)) Then
Begin
RunWhere(rundirection, false);
Wait(2000 + random(1000));
RunBack;
WriteLn('Waiting For Gas to Stop ..');
Wait(10000 + random(2000));
End;
If (FindNewBox) Then
Begin
writeln('Found Strange Box Trying To Solve..')
OpenBox;
SolveBox;
wait(1000);
End;
If (FindNewBox) Then
Begin
GambleNewBox;
End;
If (FindNewBox) Then
Begin
LogOut;
Writeln('Unable To Solve Box....Terminating');
TerminateScript;
End;
Begin
ItemGrab;
FindPick;
LoadSandArray;
LoadSWBitMaps;
SetupSandwich;
ReleasesandWich;
GetSandQuestion;
SolveSandwich;
SolveFrog;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure WeAtMine;
Var
WX, WY : Integer;
Begin
If (Not(FindSymbol(Wx, WY, 'mining site'))) Then
Begin
RunWhere('N', false)
If (Not(FindSymbol(Wx, WY, 'mining site'))) Then
Begin
RunBack;
Flag;
RunWhere('E', False)
If (Not(FindSymbol(Wx, WY, 'mining site'))) Then
Begin
RunBack;
Flag;
RunWhere('S', False)
If (Not(FindSymbol(Wx, WY, 'mining site'))) Then
Begin
RunBack;
Flag;
Runwhere('W', False)
If (Not(FindSymbol(Wx, WY, 'mining site'))) Then
WriteLn('We are defantly lost termInating script')
TerminateScript;
End;
End;
End;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure LoadBitmaps;
Begin
Clay := BitmapFromString(4, 4, '86714C89734D8B7650907A52978' +
'1569781569A8357957E55A1895CA38B5D9F875B9C8559AC9262A8' +
'8F60A58D5FA1895C');
OreMask := BitmapFromString(11, 11, 'z78DA73730301033070436' +
'2238B60024C35B84CC0A5923C13F0BB937813F0EB22DE04CC5022' +
'CF04CADD404CC890EA0BFCE2F85D4E4C6A212FF470998FCC0600F' +
'B599CC1');
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure DropOres;
Begin
DwarfItem;
ClickAllItemsBmpMaskTolWait('rop', OreMask, 20, 25, 30+Random(30));
ClickAllItemsBmpTolWait('rop', Clay, 10, 30+Random(30));
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure ModSetRun(Run: Boolean);
Var
WX, WY: Integer;
Begin
GameTab(11);
If Run Then
Begin
If (not (FindColorTolerance(WX, WY, 1711220, 663, 431, 665, 433, 5))) Then
Begin
Mouse(648, 431, 20, 20, true);
Wait(100 + Random(100));
End;
End Else
Begin
If FindColorTolerance(WX, WY, 1711220, 663, 431, 665, 433, 5) Then
Begin
Mouse(648, 431, 20, 20, true);
Wait(100 + Random(100));
End;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure ModRunTo(dir: String; runfar: Boolean);
Begin
MakeCompass('N');
ModSetRun(true);
If (runfar) Then
Case UpperCase(dir) Of
'N': MouseFlag(648, 83 - 63, 0, 0)
'S': MouseFlag(648, 83 + 63, 0, 0)
'E': MouseFlag(648 + 63, 83, 0, 0)
'W': MouseFlag(648 - 63, 83, 0, 0)
End;
If (not runfar) Then
Case UpperCase(dir) Of
'N': MouseFlag(648, 83 - 30, 0, 0)
'S': MouseFlag(648, 83 + 30, 0, 0)
'E': MouseFlag(648 + 30, 83, 0, 0)
'W': MouseFlag(648 - 30, 83, 0, 0)
End;
Wait(6500);
IdleTime(6000, 500, 1.0);
If (runfar) Then
Case Uppercase(dir) Of
'N': MouseFlag(648, 83 + 63, 0, 0)
'S': MouseFlag(648, 83 - 63, 0, 0)
'E': MouseFlag(648 - 63, 83, 0, 0)
'W': MouseFlag(648 + 63, 83, 0, 0)
End;
If (not runfar) Then
Case UpperCase(dir) Of
'N': MouseFlag(648, 83 + 30, 0, 0)
'S': MouseFlag(648, 83 - 30, 0, 0)
'E': MouseFlag(648 - 30, 83, 0, 0)
'W': MouseFlag(648 + 30, 83, 0, 0)
End;
ModSetRun(False);
GameTab(4);
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
procedure ProgressReport;
Begin
ChangeReportWidth(1);
WriteLn('/===========================================\');
WriteLn('| Thank You For Using Arr0w''s PowerMiner! |');
WriteLn('|===========================================|');
WriteLn('Total Loads Done : ' + IntToStr(Loads) + '! ');
writeLn('Total Ores Mined : ' + IntToStr(OresMined) +'!');
writeLn('Total People Tryied To Trade With You : ' + IntToStr(trades) +'!');
WriteLn('Made by Arr0w from moparisthebest.com ');
WriteLn('To see for a new version check moparisthebest');
writeLn('<><><><><><><><><><><><><><><><><><><><><><><');
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure Trading;
Begin
AcceptTrade;
Wait(3000+Random(100))
Decline;
Wait(100+Random(101))
SendText('No ty')
SendKeysSilent(Chr(13));
ChatsOff;
Tradess := Trades + 1
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure ifchat;
Begin
If FindChatText(UserName+'?') Then
Begin
SendText2('sorry i am a bit busy atm')
SendText2(' Ill speak with you later')
SendKeysSilent(Chr(13));
Chatsoff;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure Chats;
Begin
If TurnOffChats = True Then
Begin
ChatsOff;
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Procedure Randomchats;
Begin
If TurnOffChats = False Then
If RandomTalking = True Then
Begin
RandomChatEvery(10000 + random(10));
End;
End;
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-Main Loop-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
//=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\\
Begin
DisguiseScar(DisguiseScarAs);
ClearDebug;
SRLRandomsReport;
ActivateClient;
SetupSRL;
SetupSrlMining;
LoadMiningBitmaps;
Chats;
ModSetRun(true);
FindPickHeadColor;
Repeat
Repeat
WeAtMine;
CantFindRocks;
Miner;
Wait(500 + random(56));
Randoms;
Until (invfull)
DropOres;
Ifchat;
Trading;
Randoms;
Randomchats;
ProgressReport;
Until (loads = LoadsToDo)
If loads = loadstodo Then
openwebpage('http://www.moparisthebest.org/smf/index.php/topic,27040.0.html')
End.