Raskolnikov
2007-12-01 21:12:30
Here it is. This will kill dark wizards, pick up any runes, eat when necessary, then bank the first two slots. Here are it's features:
New version will have:
Here is the script:
- SRL Stats
- Anti-Ban
- Anti-Randoms
- Rune Pickup and banking
- Eating (put food color in where specified and put food in 3rd and after inv slot
- HP check
New version will have:
- Bone Burying
Here is the script:
{
Wiiiiiiiiiiiii
zzzzzzz yyyyy KILLLER!!!!}
program DarkWizardKiller;
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/Fighting.scar}
var HowLoads, Wizzys, Pickups: integer;
YourSRLId, YourSRLPass: string;
idk: boolean;
procedure DeclarePlayers;
begin
YourSRLId := '';
YourSRLPass := '';
HowManyPlayers:=1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:=0;
Players[0].Name:='';
Players[0].Pass:='';
Players[0].Loc:='';
Players[0].Integers[0]:=2; //Loads?
Players[0].Integers[1]:=10; //How much hp to get down to before eating
Players[0].Integers[2]:=6; //How much hp to get down to before logging out
Players[0].Integers[3]:=1606850; //Color of food using to eat
Players[0].Active:=True;
{ Players[1].Name:='';
Players[1].Pass:='';
Players[1].Loc:='';
Players[1].Integers[0]:=2; //How many loads?
Players[1].Integers[1]:=15; //How much hp to get down to before eating
Players[1].Integers[2]:=6; //How much hp to get down to before logging out
Players[1].Integers[3]:=0; //Color of food using to eat
Players[1].Active:=True;
Players[2].Name:='';
Players[2].Pass:='';
Players[2].Loc:='';
Players[2].Integers[0]:=2;//Loads?
Players[2].Integers[1]:=15; //How much hp to get down to before eating
Players[2].Integers[2]:=6; //How much hp to get down to before logging out
Players[2].Integers[3]:=0; //Color of food using to eat
Players[2].Active:=True;
}
end;
function NextPlayerYet: Boolean;
begin
if (HowLoads=Players[CurrentPlayer].Integers[0]) then
begin
Result:=True;
NextPlayer(False);
HowLoads:=0;
MakeCompass('N');
end;
if not LoggedIn then
begin
LoginPlayer;
MakeCompass('N');
end;
end;
procedure Proggie;
begin
Writeln('Killed '+ IntToStr(Wizzys) +' wizards.');
Writeln('Picked up '+ IntToStr(Pickups) +' runes.');
Writeln('Thanks for using Wizard Killer!');
end;
procedure AntiBanCut;
begin
case 4 of
0: TypeSend('Woot I love killing!!');
1: TypeSend('Lvls?');
2: TypeSend('I love runescape!!!');
3: TypeSend('I wish upon a starrrr!');
end;
end;
procedure FindPickRune;
var
x, y: integer;
begin
if FindObjCustom(x, y, ['rune', 'r'], [10132134], 4) then
begin
if not LoggedIn then Exit;
Mouse(x, y, 1, 1, true);
AntiBanCut;
Wait(2000+random(300));
ReportVars[0]:=1;
Pickups:=Pickups+1;
end else
begin
Writeln('No rune found.');
end;
end;
procedure HPCheck;
var Hit: integer;
begin
Hit := GetHP;
if Hit < Players[CurrentPlayer].Integers[1] then
begin
RealEatIfNeeded(Players[CurrentPlayer].Integers[3], Players[CurrentPlayer].Integers[1], false);
end;
if Hit < Players[CurrentPlayer].Integers[2] then
begin
Logout;
end;
end;
procedure FindKillWizzy;
var v, w: integer;
begin
if not FindColorTolerance(v, w, 2702369, 0, 0, 6666, 6666, 4) then
begin
Wait(4000+random(350));
FindObjCustom(v, w, ['Dark','Wi'], [2702369], 4);
Mouse(v, w, 1, 1, true);
OutFight;
end else
begin
Mouse(v, w, 1, 1, true);
OutFight;
end;
HPCheck;
FindNormalRandoms;
FindNonInventoryRandoms;
FindTalk;
AntiBanCut;
ReportVars[1]:=1;
Wizzys:=Wizzys+1;
FindPickRune;
end;
procedure GetInToBank;
var d, x, cx, cy: integer;
begin
SymbolAccuracy := 0.5;
FindSymbol(d, x, 'bank');
Mouse(d, x, 1, 1, true);
Flag;
FindObjCustom(cx, cy, ['Use'], [738395, 5857124], 4);
Mouse(cx, cy, 1, 1, false);
ChooseOption('Use-quickly');
Wait(4000+random(300));
if BankScreen then
begin
Deposit(1,1,2);
Wait(2000+random(200));
Deposit(2,2,2);
end;
end;
procedure WalkBack;
begin
MouseFlag(621, 130, 1, 1);
Flag;
end;
procedure ScriptTerminate;
begin
Writeln('Script terminating.');
Proggie;
SendSRLReport;
SRLRandomsReport;
end;
begin
SetupSRL;
DeclarePlayers;
ScriptId := '500';
YourSRLId := SRLID;
YourSRLPass := SRLPassword;
ActivateClient;
Wait(1000);
repeat
FindKillWizzy;
GetInToBank;
WalkBack;
HowLoads := HowLoads+1;
idk := NextPlayerYet;
if idk then
begin
Proggie;
SendSRLReport;
SRLRandomsReport;
end;
until(false);
SendSRLReport;
SRLRandomsReport;
end.