SCAR Code:
program ChickenKiller;
{.include srl/srl.scar}
{.Include srl/srl/skill/fighting.scar}
Const
HPlayers = 5;//How many players to use.
CC1 = 792178;//these colors are good so dont change =)
CC2 = 2029819;
CC3 = 4679296;
CC4 = 4217714;
TimeToKill = 8;//how long it takes to kill chicken
Var
I,CheckHp,Water,WT,BB : Integer;
Killed, Exp, TheAuto : Integer;
Ver : String;
CC : array[1..4] of Integer;
Feather : array[1..2] of integer;
RawMeat : array[1..3] of Integer;
procedure Declareplayers;
begin
HowManyPlayers:=(HPlayers);
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:=0;
Players[0].Name :=''; //PlayerName
Players[0].Pass :=''; //Password
Players[0].Nick :='';//Players nick name( a few letters from playername)
Players[0].Skill :='';//The skill to pick if you get Genie random
Players[0].Integer1 := 45;//Kills to do
Players[0].Boolean1 := True;//Pick Up Feathers?
Players[0].String1 := 'attack';//attack,strength,shared,defense
Players[0].Loc :='Chicken Pen'; //leave this alone
Players[0].Active :=True;// Leave this alone 2
Players[1].Name :=''; //PlayerName
Players[1].Pass :=''; //Password
Players[1].Nick :='';//Players nick name( a few letters from playername)
Players[1].Skill :='';//The skill to pick if you get Genie random
Players[1].Integer1 := 45;//Kills to do
Players[1].Boolean1 := True;//Pick Up Feathers?
Players[1].String1 := 'attack';//attack,strength,shared,defense
Players[1].Loc :='Chicken Pen'; //leave this alone
Players[1].Active :=True;// Leave this alone 2
Players[2].Name :=''; //PlayerName
Players[2].Pass :=''; //Password
Players[2].Nick :='';//Players nick name( a few letters from playername)
Players[2].Skill :='';//The skill to pick if you get Genie random
Players[2].Integer1 := 45;//Kills to do
Players[2].Boolean1 := True;//Pick Up Feathers?
Players[2].String1 := 'attack';//attack,strength,shared,defense
Players[2].Loc :='Chicken Pen'; //leave this alone
Players[2].Active :=True;// Leave this alone 2
Players[3].Name :=''; //PlayerName
Players[3].Pass :=''; //Password
Players[3].Nick :='';//Players nick name( a few letters from playername)
Players[3].Skill :='';//The skill to pick if you get Genie random
Players[3].Integer1 := 45;//Kills to do
Players[3].Boolean1 := True;//Pick Up Feathers?
Players[3].String1 := 'attack';//attack,strength,shared,defense
Players[3].Loc :='Chicken Pen'; //leave this alone
Players[3].Active :=True;// Leave this alone 2
Players[4].Name :=''; //PlayerName
Players[4].Pass :=''; //Password
Players[4].Nick :='';//Players nick name( a few letters from playername)
Players[4].Skill :='';//The skill to pick if you get Genie random
Players[4].Integer1 := 45;//Kills to do
Players[4].Boolean1 := True;//Pick Up Feathers?
Players[4].String1 := 'attack';//attack,strength,shared,defense
Players[4].Loc :='Chicken Pen'; //leave this alone
Players[4].Active :=True;// Leave this alone 2
Players[5].Name :=''; //PlayerName
Players[5].Pass :=''; //Password
Players[5].Nick :='';//Players nick name( a few letters from playername)
Players[5].Skill :='';//The skill to pick if you get Genie random
Players[5].Integer1 := 45;//Kills to do
Players[5].Boolean1 := True;//Pick Up Feathers?
Players[5].String1 := 'attack';//attack,strength,shared,defense
Players[5].Loc :='Chicken Pen'; //leave this alone
Players[5].Active :=True;// Leave this alone 2
End;
Procedure CheckRandoms;
Begin
FindMod;
FindDead;
FindDemon;
SolveCerter;
If(FindFrogCave) Then
Begin
SolveFrogSwamp;
end;
FindTalk;
FindName;
FindLamp(Players[CurrentPlayer].Skill);
End;
Procedure SetFight;
Begin
Case Lowercase(Players[CurrentPlayer].String1) of
'attack' : SetFightMode(1);
'strength' : SetFightMode(2);
'shared' : SetFightMode(3);
'defense' : SetFightMode(4);
End;
End;
Procedure SetUp;
Begin
HighestAngle;
SetChat('On',1);
SetChat('Off',2);
SetChat('Off',3);
PerfectNorth;
SetRun(True);
End;
Procedure InitiateColors;
Begin
Feather[1] := 12171714;
Feather[2] := 9472;
RawMeat[1] := 7829911
RawMeat[2] := 9408950;
RawMeat[3] := 11251145;
WriteLn('Done Initiating Color Arrays');
WriteLn('WILL BE ADDING THIS IN LATERZ');
End;
Procedure Rotate;
Begin
Case Random(4) Of
0 : MakeCompass('W');
1 : MakeCompass('S');
2 : MakeCompass('E');
3 : MakeCompass('N');
End;
end;
Procedure GetThoseChickens;
Var
XX , YY, Search : Integer;
Begin
CheckHp := GetHp;
WriteLn('We started fighting at '+IntToStr(CheckHp)+' Health Points');
Repeat
MarkTime(Search);
If(FindColorSpiralTolerance(XX,YY,CC1,MSX1,MSY1,MSX2,MSY2,15)) Or
(FindColorSpiralTolerance(XX,YY,CC2,MSX1,MSY1,MSX2,MSY2,15)) Or
(FindColorSpiralTolerance(XX,YY,CC3,MSX1,MSY1,MSX2,MSY2,15)) Or
(FindColorSpiralTolerance(XX,YY,CC4,MSX1,MSY1,MSX2,MSY2,15)) Then
MMouse(XX,YY,2,2);
Wait(1);
Until(IsUpText('Chic') or (TimeFromMark(Search) >= 8000))
If(TimeFromMark(Search) >= 1000)Then
Begin
Rotate;
GetThoseChickens;
End;
Mouse(XX,YY,0,0,True);
Flag;
CheckRandoms;
SRlRandomsReport;
Wait(TimeToKill*1000+Random(1750));
Killed := Killed + 1;
Exp := EXp + 12;
End;
Procedure FullReport;
Begin
Ver := '1.0';
WriteLn('Player : '+Players[CurrentPlayer].Name);
WriteLn('Killed : '+IntToStr(Killed));
WriteLn('Exp : '+IntToStr(Exp));
WriteLn('Time Autoing : '+TimeRunning);
WriteLn('Buckley''s Chicken Sweeper '+Ver);
End;
Procedure SetUpScript;
Begin
BenMouse := False;
MouseSpeed := 25;
SRLRandomsReport;
If(not(LoggedIn)) Then
begin
LoginPlayer;
SetUp;
End;
If(LoggedIn)Then
Begin
SetUp;
End;
End;
Begin
SetUpSRL;
DeclarePlayers;
Repeat
SetUpScript;
SetUp;
InitiateColors;
SetUp;
SetFight;
MarkTime(TheAuto);
Repeat
GetThoseChickens;
FullReport;
Until(Killed = Players[CurrentPlayer].Integer1)
If(Not(FindDead)) Then
Begin
NextPlayer(True);
End;
If(FindDead)Then
Begin
NextPlayer(False);
End;
Until(False)
End.