tletl1
2012-03-20 20:57:27
How Long have You Played Runescape?
4 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
C++
Are you a member of any other communities?
Powerbot, Epicbot, and runedream
Tell us about yourself…
Please show us one (or multiple) of your scripts.
4 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
C++
Are you a member of any other communities?
Powerbot, Epicbot, and runedream
Tell us about yourself…
From: tletl1
I am Houston Griffeth my inerests are video games and scripting for the games i play to make them easier. :p
Please show us one (or multiple) of your scripts.
program SoulWars;
{$DEFINE SMART}
{$Define CrashSmart}
{$i SRL/srl.simba}
{$i sps/sps.simba}
{$i SRL/SRL/skill/fighting.simba}
{$i SRL/SRL/misc/paintsmart.simba}
Const
//Team Red or Blue
Team = 'Blue';
//Special True or False
UseSpecial = True;
//Prayer True or False
UsePrayer = False;
//This is the world you want it to select.
WorldChoice = 44;
Var
WaitPath: TPointArray;
Dead:Variant;
aFound: Extended;
Procedure DeclarePlayers;
Begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
With Players[0] Do
Begin
Name := ''; //Player username.
Pass := ''; //Player password.
Nick := ''; //Player nickname - 3-4 letters of Player username.
Active := True;
End;
End;
Procedure SetupChar;
Begin
SetupSRL();
SetAngle(0);
ClickNorth(0);
Wait(250);
Mouse(90,493,2,2,True);
SPS_Setup(RUNESCAPE_SURFACE,['0_12','1_12','2_12','2_13','1_13','0_13']);
end;
Procedure Proggy;
begin
ClearDebug;
Writeln('============================================');
Writeln('================Soul Wars XXX===============');
Writeln('============================================');
Writeln('Ive been playing for ' + TimeRunning + ' YW!');
Writeln('============================================');
Writeln('===============By Tletl1================');
Writeln('============================================');
end;
Procedure RandomWalk;
begin
SPS_WalkPath(WaitPath);
end;
Procedure Waiting;
Begin
writeln('Waiting for game to start.');
writeln('Waiting for game to start..');
writeln('Waiting for game to start...');
writeln('Waiting for game to start....');
writeln('Waiting for game to start.....');
writeln('Waiting for game to start......');
writeln('Waiting for game to start.......');
writeln('Waiting for game to start........');
case random(11) of
0 : GameTab(27);
1 : RandomWalk;
2 : Wait(500 +Random(750));
3 : RandomRClick;
4 : BoredHuman;
5 : HoverSkill(skill_strength,false);
6 : HoverSkill(skill_hitpoints,false);
7 : GameTab(23);
8 : PickUpMouse;
9 : Wait(randomrange(1000,2000));
10: HoverSkill('attack',false);
end;
Wait(randomrange(2500,5000));
end;
procedure CrashSMART;
begin
Writeln('You are using CRASHSMART, so we are going to reload your client after the RS update!');
SmartgetFieldObject(1488,'crash'); // will crash SMART (and Simba).
// IF THIS DOES NOT CRASH YOUR SIMBA, YOU ARE NOT USING THE PROPER PLUGIN
// AN ACCESS VIOLATION HERE IS NOT THE CRASH; MAKE SURE YOU MOVED THE EDITED PLUGIN
Wait(5000);
WriteLn('CRASHSMART Failed: Make sure you are using the proper plugin!');
WriteLn('Read more about this feature at villavu.com/forum/showthread.php?t=67864');
TerminateScript;
end;
Procedure Startup;
Begin
Smart_Server := 27;
Smart_Members:= true;
Smart_Signed := true;
SetupSRL;
SRL_Procs[srl_OnRSUpdate] := @CrashSMART;
DeclarePlayers;
LoginPlayerToLob;
SelectWorld(WorldChoice);
LogInPlayer;
MouseSpeed := 500;
wait(100+random(100));
end;
Function UInFight: Boolean;
begin
Wait(100);
Writeln('Pixel shift of '+IntToStr(averagePixelShift(IntToBox(234, 100, 289, 185), 100, 300)));
if (averagePixelShift(IntToBox(234, 100, 289, 185), 120, 360) > 400) then
Begin
Result := True;
Exit;
end else
if not InFight then
Result :=False;
Exit;
end;
Procedure ToRPortal;
Var
myPath: TPointArray;
Begin
myPath := [Point(680, 5254), Point(681, 5260), Point(681, 5267), Point(680, 5271), Point(681, 5276), Point(681, 5284), Point(681, 5289), Point(681, 5295), Point(682, 5300), Point(688, 5304), Point(694, 5306), Point(697, 5306), Point(705, 5306), Point(711, 5309), Point(720, 5311)];
SPS_WalkPath(myPath);
MakeCompass('E');
Wait(500);
end;
Procedure ToBPortal;
Var
myPath: TPointArray;
Begin
Writeln('Going to blue portal');
myPath := [Point(680, 5247), Point(680, 5249), Point(680, 5254), Point(680, 5254), Point(680, 5255), Point(680, 5257), Point(680, 5260), Point(680, 5267), Point(680, 5269), Point(680, 5273), Point(680, 5276), Point(680, 5278), Point(680, 5280), Point(680, 5282), Point(680, 5285), Point(680, 5287), Point(680, 5289), Point(680, 5291), Point(680, 5294), Point(680, 5297), Point(678, 5300), Point(675, 5302), Point(668, 5304), Point(666, 5306), Point(661, 5306), Point(656, 5308), Point(650, 5308), Point(648, 5309), Point(645, 5309), Point(641, 5310)];
SPS_WalkPath(myPath);
MakeCompass('W');
Wait(500);
end;
Function GetText3: String;
Begin
Result := GetTextAtExWrap(185, 15, 223, 33, 1, 7, 3, 2070783, 2, CharsNPc);
end;
Function GetText2: String;
Begin
Result := GetTextAtExWrap(454, 27, 495, 39, 0, 5, 2, 39423, 5, StatChars);
end;
Function GetText: String;
Begin
Result := GetTextAtExWrap(397, 47, 475, 59, 0, 5, 2, 39423, 5, StatChars);
end;
Function CGame:Variant;
Var
Lobby,Red,Blue: TBox;
Begin
Lobby:= PointToBox(Point(620, 5232), Point(734, 5342));
Red:= PointToBox(Point(653, 5256), Point(677, 5296));
Blue:= PointToBox(Point(684, 5256), Point(708, 5296));
If PointInBox(SPS_GetMyPos, Lobby) or PointInBox(SPS_GetMyPos, Red) or PointInBox(SPS_GetMyPos, Blue) or (FindNPCChatText('partipication in this game.',nothing)) or (GetText3 = 'N5W') Then
Begin
Result := True;
Writeln('Game is Finished');
end else
begin
Result := false;
Writeln('Game is still going');
end;
End;
Function FindCol(Px,Py,Px2,Py2,Col,tol:Integer):Boolean;
Var
X,Y:Integer;
Begin
Result := FindColorTolerance(X,Y,Col,Px,Py,Px2,Py2,tol);
End;
Procedure Prayer;
Begin
If UsePrayer = FindCol(706,53,733,84,7287880,40) then
begin
Mouse(723,71,3,3,true);
end else if UsePrayer = False then Exit;
End;
Procedure Special;
Begin
If FindCol(567,410,711,432,2070783,3) then Exit;
If UseSpecial = True then
begin
Mouse(536,187,3,3,true);
Wait(500);
Mouse(639,426,3,3,true);
end else if UseSpecial = False then Exit;
End;
Function FindBarrier(Up,Option:Array of String;Color,Tolerance:Integer;MC2:Variant;Hmod,Smod:Extended): Boolean;
var
X,Y:Integer;
CTS,I,J: Integer;
TPA,OBox: TPointArray;
Box:TBox;
ATPA:T2DPointArray;
begin
MarkTime(J);
repeat
Result := False;
CTS := GetColorToleranceSpeed;
OBox := TPAFromBox(IntToBox(266, 18, 384, 82));
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(Hmod,Smod);
FindColorsSpiralTolerance(MSCX, MSCY, TPA,(Color), MSX1, MSY1, MSX2, MSY2, Tolerance);
ColorToleranceSpeed(CTS);
TPA := ClearTPAFromTPA(TPA, OBox);
ATPA := TPAtoATPAEx(TPA,25,25);
SortATPAFrom(ATPA,Point(257,157));
For i := 0 to High(ATPA) do
begin
if (Length(TPA) < 1) then
Exit;
Box := GetATPABounds(ATPA);
SMART_DrawBoxEx(False,IntToBox(Box.X1,Box.Y1,Box.X2,Box.Y2),65320);
SMART_DrawDotsEx(false, TPA, 65320);
MiddleTPAEx(ATPA[i],X,Y);
MMouse(X,Y,5,5);
SMART_ClearCanvas;
if WaitUpTextMulti(Up, 400) then
begin
GetMousePos(X, Y);
ClickMouse2(MC2);
ChooseOptionMulti(Option);
Result := True;
Exit;
end;
end;
Until (TimeFromMark(J) > 2500);
end;
Function FindObjOnScreen(Up,Option:Array of String;Color,Tolerance:Integer;MC2:Variant;Hmod,Smod:Extended): Boolean;
var
X,Y:Integer;
CTS,I,J: Integer;
TPA,Pbox: TPointArray;
Box:TBox;
ATPA:T2DPointArray;
begin
repeat
Result := False;
CTS := GetColorToleranceSpeed;
PBox := TPAFromBox(IntToBox(245, 135, 280, 185));
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(Hmod,Smod);
FindColorsSpiralTolerance(MSCX, MSCY, TPA,(Color), MSX1, MSY1, MSX2, MSY2, Tolerance);
ColorToleranceSpeed(CTS);
TPA := ClearTPAFromTPA(TPA, PBox);
ATPA := TPAtoATPAEx(TPA,25,25);
SortATPAFrom(ATPA,Point(257,157));
For i := 0 to High(ATPA) do
begin
if (Length(TPA) < 1) then
Exit;
Box := GetATPABounds(ATPA);
SMART_DrawBoxEx(False,IntToBox(Box.X1,Box.Y1,Box.X2,Box.Y2),65320);
SMART_DrawDotsEx(false, TPA, 65320);
MiddleTPAEx(ATPA[i],X,Y);
MMouse(X,Y,5,5);
SMART_ClearCanvas;
if WaitUpTextMulti(Up, 400) then
begin
GetMousePos(X, Y);
ClickMouse2(MC2);
ChooseOptionMulti(Option);
Result := True;
Exit;
end;
end;
Until (TimeFromMark(J) > 2500);
end;
Function BlueDead: Variant;
Var
Grave1,Grave2,Spawn: TBox;
Begin
Spawn := PointToBox(Point(382, 5029), Point(415, 5076));
Grave1 := PointToBox(Point(843, 4964), Point(861, 4979));
Grave2 := PointToBox(Point(480, 5074), Point(505, 5092));
If FindBlackChatMessage('can only exit this') then Exit;
If PointInBox(SPS_GetMyPos, Spawn) or PointInBox(SPS_GetMyPos, Grave1) or PointInBox(SPS_GetMyPos, Grave2) then
Begin
Repeat
WriteLN('You Have Died!');
SPS_WalkToPos(Point(383, 5054));
If CGame = true then Exit;
MakeCompass(RandomRange(0,359));
FindBarrier(['Pass Blue barrier','ass','lue','arier','rier','Blue'],['Blue barrier'],12287846,10,False,0.26,1.56);
Wait(1850);
Until SPS_PosOnMM(Point(489, 5070)) or SPS_PosOnMM(Point(853, 4980)) or SPS_PosOnMM(Point(380, 5052)) or SPS_PosOnMM(Point(853, 4981)) or CGame = True;
Result := True;
Dead := True;
Prayer;
Special;
Exit;
end else
Result := False;
Dead := False;
end;
Function RedDead: Variant;
Var
Grave1,Grave2,Spawn: TBox;
Begin
Spawn := PointToBox(Point(927, 4977), Point(950, 5017));
Grave1 := PointToBox(Point(844, 4965), Point(860, 4978));
Grave2 := PointToBox(Point(481, 5075), Point(502, 5090));
If PointInBox(SPS_GetMyPos, Spawn) or PointInBox(SPS_GetMyPos, Grave1) or PointInBox(SPS_GetMyPos, Grave2) or FindBlackChatMessage('15 seconds before') then
Begin
WriteLN('You Have Died!');
Repeat
FindBarrier(['Pass Red barrier','ass','ed','arier','rier','Red'],['Red barrier'],4277360,9,False,0.03,0.72);
wait(1450);
Until SPS_PosOnMM(Point(489, 5073)) or SPS_PosOnMM(Point(381, 5054)) or SPS_PosOnMM(Point(382, 5054)) or SPS_PosOnMM(Point(381, 5055)) or SPS_PosOnMM(Point(853, 4980)) or SPS_PosOnMM(Point(853, 4981)) or CGame = True;
Dead := True;
Result := True;
Prayer;
Special;
Exit;
end else
Dead := False;
Result := False;
end;
Procedure BO1;
Var
myPath: TPointArray;
begin
myPath := [Point(489, 5074), Point(489, 5073), Point(491, 5070), Point(491, 5068), Point(491, 5066), Point(492, 5064), Point(492, 5063), Point(493, 5061), Point(494, 5059), Point(495, 5055), Point(497, 5053), Point(497, 5051), Point(498, 5049), Point(499, 5047), Point(501, 5046), Point(501, 5045), Point(502, 5044), Point(504, 5041), Point(504, 5041), Point(505, 5038), Point(506, 5038), Point(507, 5037), Point(508, 5037), Point(510, 5036), Point(511, 5034), Point(514, 5032), Point(515, 5031), Point(516, 5030)];
SPS_WalkPath(myPath);
end;
Procedure BO2;
Var
myPath: TPointArray;
begin
myPath := [Point(519, 5027), Point(521, 5027), Point(524, 5025), Point(526, 5025), Point(529, 5023), Point(533, 5022), Point(537, 5022), Point(541, 5022), Point(545, 5022), Point(547, 5022), Point(550, 5022), Point(552, 5022), Point(555, 5022), Point(559, 5022), Point(560, 5022), Point(562, 5022), Point(565, 5022), Point(567, 5022), Point(569, 5022), Point(570, 5022), Point(572, 5022), Point(574, 5023), Point(580, 5023), Point(579, 5024), Point(585, 5024), Point(587, 5023), Point(592, 5023), Point(595, 5022), Point(597, 5021), Point(600, 5021), Point(601, 5021), Point(602, 5021), Point(608, 5021), Point(608, 5022), Point(612, 5022), Point(614, 5022)];
SPS_WalkPath(myPath);
end;
Procedure BO3;
Var
myPath: TPointArray;
begin
myPath := [Point(751, 5032), Point(748, 5032), Point(747, 5032), Point(744, 5031), Point(738, 5029), Point(734, 5028), Point(727, 5028), Point(727, 5028), Point(721, 5029), Point(721, 5029), Point(716, 5029), Point(712, 5029), Point(710, 5027), Point(707, 5027), Point(703, 5028), Point(701, 5028), Point(698, 5028), Point(692, 5028), Point(691, 5027), Point(687, 5027), Point(687, 5029), Point(691, 5032), Point(696, 5032), Point(695, 5026), Point(690, 5023), Point(697, 5024), Point(696, 5022), Point(700, 5032), Point(697, 5032), Point(691, 5032), Point(685, 5029), Point(687, 5024), Point(697, 5022), Point(700, 5028)];
SPS_WalkPath(myPath);
end;
Procedure BO4;
Var
myPath: TPointArray;
begin
myPath := [Point(613, 5023), Point(613, 5023), Point(616, 5023), Point(618, 5023), Point(620, 5023), Point(623, 5025), Point(626, 5027), Point(628, 5027), Point(634, 5032), Point(636, 5033), Point(638, 5034), Point(641, 5034), Point(643, 5036), Point(646, 5037), Point(650, 5038), Point(651, 5041), Point(655, 5040), Point(659, 5039), Point(661, 5039), Point(664, 5039), Point(668, 5039), Point(670, 5039), Point(673, 5039), Point(674, 5039), Point(678, 5038), Point(681, 5038), Point(682, 5038), Point(685, 5035), Point(689, 5033), Point(694, 5033), Point(695, 5033), Point(700, 5032)];
SPS_WalkPath(myPath);
end;
Procedure BH1;
Var
myPath: TPointArray;
begin
myPath := [Point(854, 4981), Point(853, 4985), Point(853, 4987), Point(855, 4990), Point(855, 4991), Point(856, 4993), Point(856, 4996), Point(858, 4998), Point(858, 5000), Point(859, 5001), Point(860, 5004), Point(860, 5006), Point(862, 5008), Point(863, 5010), Point(863, 5013), Point(864, 5018), Point(867, 5021), Point(869, 5025), Point(869, 5030), Point(871, 5033), Point(872, 5034)];
SPS_WalkPath(myPath);
end;
Procedure BH2;
Var
myPath: TPointArray;
begin
myPath := [Point(869, 5036), Point(870, 5039), Point(871, 5040), Point(872, 5042), Point(872, 5043), Point(875, 5046), Point(875, 5046), Point(878, 5049), Point(879, 5049), Point(880, 5051), Point(882, 5055), Point(883, 5055), Point(884, 5057), Point(885, 5058), Point(887, 5059), Point(889, 5062), Point(891, 5063), Point(891, 5063), Point(894, 5065), Point(895, 5065), Point(897, 5066), Point(899, 5067), Point(901, 5068), Point(902, 5069), Point(904, 5071), Point(905, 5072), Point(906, 5074), Point(908, 5074), Point(909, 5075), Point(911, 5078), Point(912, 5078), Point(915, 5079), Point(916, 5081), Point(919, 5081), Point(920, 5082)];
SPS_WalkPath(myPath);
end;
Procedure BH3;
Var
myPath: TPointArray;
begin
myPath := [Point(922, 5084), Point(922, 5085), Point(924, 5086), Point(926, 5088), Point(926, 5088), Point(929, 5089), Point(931, 5092), Point(933, 5094), Point(936, 5095), Point(937, 5096), Point(940, 5098), Point(943, 5098), Point(946, 5099), Point(950, 5099), Point(953, 5099), Point(956, 5099), Point(958, 5099), Point(961, 5099), Point(966, 5099), Point(969, 5099), Point(971, 5099), Point(974, 5097), Point(975, 5096), Point(977, 5091), Point(978, 5087), Point(980, 5084), Point(981, 5083), Point(982, 5079), Point(982, 5077), Point(982, 5074), Point(984, 5068), Point(983, 5070), Point(983, 5063), Point(984, 5061), Point(984, 5058), Point(985, 5056), Point(985, 5053)];
SPS_WalkPath(myPath);
end;
Procedure BH4;
Var
myPath: TPointArray;
begin
myPath := [Point(987, 5047), Point(987, 5045), Point(987, 5044), Point(988, 5040), Point(988, 5039), Point(988, 5035), Point(989, 5033), Point(988, 5032), Point(985, 5025), Point(985, 5020), Point(985, 5018), Point(985, 5014), Point(986, 5011), Point(986, 5008), Point(986, 5006), Point(986, 5003), Point(982, 5001), Point(982, 5001), Point(985, 4998), Point(987, 4999), Point(988, 5000), Point(988, 5001), Point(986, 5002), Point(985, 5002), Point(982, 5001), Point(982, 5000), Point(982, 4999), Point(983, 4999)];
SPS_WalkPath(myPath);
end;
Procedure BG1;
Var
myPath: TPointArray;
begin
myPath := [Point(546, 5020), Point(547, 5019), Point(550, 5019), Point(551, 5019), Point(555, 5020), Point(557, 5020), Point(558, 5020), Point(561, 5021), Point(564, 5021), Point(566, 5021), Point(569, 5020), Point(572, 5019), Point(576, 5020), Point(580, 5019), Point(581, 5021), Point(587, 5020), Point(589, 5020), Point(592, 5020), Point(592, 5020), Point(594, 5020), Point(598, 5020), Point(601, 5020), Point(604, 5019), Point(610, 5019), Point(612, 5021), Point(616, 5021), Point(626, 5023), Point(631, 5024), Point(633, 5025), Point(634, 5026), Point(637, 5028), Point(639, 5028), Point(641, 5028), Point(643, 5028), Point(646, 5028), Point(650, 5029), Point(651, 5033), Point(653, 5035), Point(656, 5035), Point(660, 5035), Point(664, 5034), Point(667, 5034), Point(672, 5032), Point(674, 5030), Point(678, 5030), Point(684, 5030), Point(686, 5029), Point(690, 5028), Point(694, 5027), Point(696, 5027), Point(699, 5027), Point(702, 5026), Point(708, 5026), Point(710, 5028), Point(715, 5028), Point(720, 5028), Point(725, 5028), Point(730, 5027), Point(734, 5027), Point(738, 5028), Point(741, 5028), Point(745, 5028), Point(746, 5029), Point(750, 5029), Point(755, 5029), Point(759, 5028), Point(761, 5029), Point(766, 5029), Point(769, 5029), Point(772, 5028), Point(776, 5028), Point(779, 5028)];
SPS_WalkPath(myPath);
end;
Procedure BG2;
Var
myPath: TPointArray;
begin
myPath := [Point(775, 5027), Point(777, 5027), Point(780, 5028), Point(783, 5028), Point(787, 5028), Point(793, 5029), Point(794, 5029), Point(801, 5028), Point(803, 5027), Point(807, 5025), Point(811, 5024), Point(815, 5022), Point(820, 5022), Point(826, 5021), Point(830, 5019), Point(834, 5016), Point(836, 5014), Point(838, 5009), Point(839, 5007), Point(839, 5005), Point(840, 5003), Point(842, 5001), Point(843, 4999)];
SPS_WalkPath(myPath);
end;
Procedure BG3;
Var
myPath: TPointArray;
begin
myPath := [Point(845, 4997), Point(848, 4993), Point(851, 4989), Point(851, 4987), Point(852, 4983), Point(849, 4982), Point(857, 4981), Point(852, 4985), Point(849, 4985), Point(847, 4984), Point(845, 4982), Point(846, 4986), Point(849, 4986), Point(854, 4988), Point(854, 4987), Point(854, 4985)];
SPS_WalkPath(myPath);
end;
Procedure BHG1;
Var
myPath: TPointArray;
begin
myPath := [Point(379, 5052), Point(378, 5052), Point(376, 5052), Point(374, 5052), Point(372, 5052), Point(370, 5052), Point(366, 5051), Point(365, 5051), Point(363, 5050), Point(362, 5048), Point(362, 5047), Point(361, 5045), Point(359, 5045), Point(358, 5044), Point(356, 5042), Point(355, 5042), Point(354, 5041), Point(350, 5035), Point(350, 5038), Point(349, 5033), Point(349, 5031), Point(349, 5028), Point(349, 5026), Point(349, 5024), Point(349, 5023), Point(349, 5020), Point(349, 5018), Point(349, 5015), Point(349, 5014), Point(349, 5013), Point(349, 5010), Point(349, 5008), Point(349, 5007), Point(349, 5005), Point(350, 5004), Point(351, 4999), Point(351, 4997), Point(352, 4994), Point(353, 4992), Point(354, 4991), Point(355, 4986), Point(356, 4983), Point(358, 4980), Point(359, 4976), Point(361, 4973), Point(364, 4970), Point(365, 4967), Point(369, 4962), Point(373, 4958), Point(376, 4958), Point(381, 4957), Point(384, 4957), Point(386, 4957)];
SPS_WalkPath(myPath);
end;
Procedure BHG2;
Var
myPath: TPointArray;
begin
myPath := [Point(386, 4954), Point(388, 4955), Point(390, 4957), Point(392, 4958), Point(393, 4958), Point(395, 4959), Point(396, 4959), Point(398, 4960), Point(400, 4960), Point(403, 4961), Point(404, 4963), Point(406, 4964), Point(409, 4967), Point(412, 4970), Point(412, 4970), Point(413, 4971), Point(415, 4973), Point(417, 4974), Point(419, 4977), Point(419, 4978), Point(423, 4979), Point(424, 4980), Point(425, 4981), Point(428, 4983), Point(429, 4983), Point(431, 4985), Point(432, 4986), Point(434, 4988), Point(435, 4989), Point(438, 4994), Point(439, 4995), Point(440, 4996), Point(443, 4998), Point(444, 5000), Point(446, 5002), Point(446, 5003)];
SPS_WalkPath(myPath);
end;
Procedure BHG3;
Var
myPath: TPointArray;
begin
myPath := [Point(446, 5006), Point(448, 5008), Point(450, 5009), Point(452, 5012), Point(458, 5015), Point(460, 5017), Point(457, 5015), Point(462, 5018), Point(464, 5020), Point(465, 5022), Point(467, 5023), Point(468, 5024), Point(471, 5027), Point(472, 5028), Point(472, 5029), Point(474, 5031), Point(475, 5033), Point(475, 5036), Point(477, 5037), Point(477, 5039), Point(479, 5041), Point(481, 5046), Point(481, 5046), Point(481, 5048), Point(483, 5048), Point(483, 5051), Point(485, 5053), Point(485, 5054), Point(485, 5055), Point(487, 5059), Point(487, 5059), Point(487, 5064), Point(487, 5065), Point(487, 5068), Point(487, 5068), Point(487, 5068), Point(487, 5068), Point(487, 5068), Point(488, 5068), Point(488, 5068), Point(488, 5068), Point(489, 5067), Point(489, 5066), Point(487, 5066), Point(487, 5066), Point(486, 5066)];
SPS_WalkPath(myPath);
end;
Procedure RO1;
Var
myPath: TPointArray;
begin
myPath := [Point(852, 4982), Point(852, 4982), Point(852, 4984), Point(852, 4985), Point(852, 4987), Point(852, 4988), Point(852, 4990), Point(852, 4992), Point(851, 4994), Point(851, 4996), Point(850, 4997), Point(849, 5000), Point(847, 5001), Point(846, 5003), Point(845, 5003), Point(844, 5005), Point(843, 5006), Point(841, 5008), Point(837, 5012), Point(838, 5012), Point(838, 5011), Point(835, 5014), Point(829, 5016), Point(830, 5016), Point(825, 5020), Point(824, 5020), Point(824, 5023), Point(822, 5025), Point(820, 5026)];
SPS_WalkPath(myPath);
end;
Procedure RO2;
Var
myPath: TPointArray;
begin
myPath := [Point(816, 5027), Point(816, 5028), Point(813, 5028), Point(811, 5028), Point(810, 5028), Point(807, 5028), Point(807, 5028), Point(801, 5028), Point(799, 5028), Point(798, 5028), Point(795, 5028), Point(788, 5028), Point(789, 5028), Point(786, 5028), Point(784, 5028), Point(782, 5028), Point(779, 5029), Point(775, 5029), Point(772, 5029), Point(772, 5029), Point(766, 5029), Point(763, 5029), Point(759, 5029), Point(758, 5029), Point(757, 5029), Point(755, 5029), Point(753, 5029), Point(752, 5029), Point(750, 5029), Point(748, 5029), Point(746, 5029), Point(745, 5028), Point(741, 5028)];
SPS_WalkPath(myPath);
end;
Procedure RO3;
Var
myPath: TPointArray;
begin
myPath := [Point(738, 5031), Point(735, 5031), Point(731, 5029), Point(729, 5029), Point(727, 5029), Point(725, 5029), Point(722, 5030), Point(716, 5030), Point(715, 5030), Point(713, 5029), Point(711, 5029), Point(709, 5029), Point(706, 5028), Point(704, 5028), Point(703, 5028), Point(701, 5028), Point(699, 5026), Point(697, 5026), Point(696, 5026), Point(694, 5026), Point(693, 5026), Point(692, 5026), Point(689, 5027), Point(688, 5027), Point(685, 5027), Point(685, 5027), Point(681, 5027), Point(679, 5027), Point(676, 5029), Point(675, 5029), Point(672, 5029), Point(667, 5030), Point(665, 5030), Point(664, 5030), Point(664, 5028), Point(663, 5024), Point(667, 5023), Point(669, 5023), Point(670, 5025), Point(670, 5025), Point(670, 5027), Point(668, 5027), Point(668, 5027), Point(664, 5024), Point(670, 5024)];
SPS_WalkPath(myPath);
end;
Procedure RH1;
Var
myPath: TPointArray;
begin
myPath := [Point(443, 4996), Point(442, 4993), Point(440, 4992), Point(435, 4990), Point(432, 4987), Point(429, 4985), Point(426, 4984), Point(425, 4982), Point(421, 4977), Point(419, 4976), Point(417, 4975), Point(415, 4973), Point(413, 4972), Point(410, 4970), Point(408, 4968), Point(406, 4966), Point(403, 4965), Point(400, 4964), Point(395, 4962), Point(390, 4962), Point(389, 4962), Point(384, 4962), Point(382, 4962), Point(379, 4962), Point(375, 4962), Point(372, 4962), Point(369, 4963), Point(366, 4965), Point(364, 4966), Point(363, 4969), Point(362, 4971), Point(360, 4973), Point(356, 4975), Point(356, 4978), Point(355, 4981), Point(355, 4985), Point(354, 4986), Point(353, 4989), Point(353, 4991), Point(352, 4993)];
SPS_WalkPath(myPath);
end;
Procedure RH2;
Var
myPath: TPointArray;
begin
myPath := [Point(869, 5036), Point(870, 5039), Point(871, 5040), Point(872, 5042), Point(872, 5043), Point(875, 5046), Point(875, 5046), Point(878, 5049), Point(879, 5049), Point(880, 5051), Point(882, 5055), Point(883, 5055), Point(884, 5057), Point(885, 5058), Point(887, 5059), Point(889, 5062), Point(891, 5063), Point(891, 5063), Point(894, 5065), Point(895, 5065), Point(897, 5066), Point(899, 5067), Point(901, 5068), Point(902, 5069), Point(904, 5071), Point(905, 5072), Point(906, 5074), Point(908, 5074), Point(909, 5075), Point(911, 5078), Point(912, 5078), Point(915, 5079), Point(916, 5081), Point(919, 5081), Point(920, 5082)];
SPS_WalkPath(myPath);
end;
Procedure RH3;
Var
myPath: TPointArray;
begin
myPath := [Point(350, 4995), Point(350, 4997), Point(350, 4999), Point(349, 5000), Point(349, 5003), Point(349, 5004), Point(349, 5006), Point(349, 5008), Point(349, 5009), Point(349, 5011), Point(349, 5014), Point(349, 5016), Point(348, 5018), Point(348, 5022), Point(347, 5024), Point(348, 5027), Point(349, 5028), Point(349, 5031), Point(348, 5033), Point(348, 5035), Point(348, 5039), Point(349, 5045), Point(349, 5046), Point(349, 5048), Point(349, 5052), Point(348, 5055), Point(348, 5057), Point(348, 5059), Point(347, 5063), Point(347, 5067), Point(347, 5068), Point(346, 5071), Point(346, 5074), Point(346, 5079), Point(346, 5081), Point(347, 5084), Point(347, 5088), Point(347, 5095), Point(348, 5094), Point(348, 5092), Point(348, 5091), Point(348, 5091), Point(347, 5085), Point(347, 5083), Point(347, 5096), Point(347, 5096), Point(345, 5092), Point(345, 5092), Point(345, 5092), Point(344, 5092)];
SPS_WalkPath(myPath);
end;
Procedure RG1;
Var
myPath: TPointArray;
begin
myPath := [Point(774, 5031), Point(769, 5032), Point(766, 5030), Point(763, 5028), Point(757, 5029), Point(753, 5028), Point(747, 5028), Point(744, 5031), Point(739, 5031), Point(736, 5030), Point(732, 5029), Point(723, 5029), Point(715, 5029), Point(710, 5029), Point(704, 5030), Point(700, 5030), Point(692, 5033), Point(687, 5034), Point(683, 5037), Point(675, 5038), Point(668, 5039), Point(650, 5033), Point(646, 5029), Point(630, 5022), Point(619, 5023), Point(603, 5021), Point(598, 5021), Point(595, 5020), Point(592, 5020), Point(587, 5020), Point(583, 5021), Point(580, 5021), Point(574, 5021), Point(570, 5020), Point(568, 5021), Point(565, 5021), Point(563, 5021), Point(560, 5021), Point(558, 5022), Point(555, 5023), Point(554, 5024), Point(551, 5024), Point(547, 5024)];
SPS_WalkPath(myPath);
end;
Procedure RG2;
Var
myPath: TPointArray;
begin
myPath := [Point(539, 5020), Point(536, 5020), Point(535, 5021), Point(528, 5023), Point(530, 5023), Point(524, 5024), Point(520, 5026), Point(517, 5027), Point(514, 5030), Point(511, 5031), Point(508, 5033), Point(504, 5035), Point(503, 5037), Point(500, 5038), Point(499, 5040), Point(497, 5041), Point(494, 5044)];
SPS_WalkPath(myPath);
end;
Procedure RG3;
Var
myPath: TPointArray;
begin
myPath := [Point(492, 5042), Point(490, 5044), Point(489, 5045), Point(488, 5048), Point(487, 5050), Point(487, 5052), Point(487, 5054), Point(487, 5056), Point(487, 5058), Point(486, 5061), Point(486, 5062), Point(486, 5063), Point(486, 5064), Point(487, 5066), Point(487, 5066), Point(487, 5067), Point(487, 5068), Point(487, 5070), Point(488, 5070), Point(492, 5071), Point(490, 5071), Point(488, 5069), Point(488, 5069), Point(490, 5068), Point(490, 5067), Point(486, 5067), Point(487, 5068), Point(491, 5071), Point(491, 5071)];
SPS_WalkPath(myPath);
end;
Procedure RHG1;
Var
myPath: TPointArray;
begin
myPath := [Point(958, 4994), Point(962, 4995), Point(967, 4995), Point(971, 4996), Point(973, 4996), Point(974, 4997), Point(975, 4999), Point(976, 4999), Point(978, 5002), Point(978, 5003), Point(981, 5005), Point(981, 5006), Point(984, 5011), Point(985, 5013), Point(985, 5013), Point(987, 5015), Point(986, 5020), Point(987, 5022), Point(988, 5025), Point(988, 5028), Point(988, 5030), Point(989, 5033), Point(989, 5034), Point(989, 5036), Point(989, 5039), Point(989, 5041), Point(989, 5042), Point(989, 5044), Point(989, 5046), Point(987, 5049), Point(986, 5050), Point(986, 5052), Point(985, 5056), Point(984, 5060), Point(984, 5061), Point(984, 5063), Point(984, 5065), Point(984, 5067), Point(983, 5069), Point(983, 5071), Point(982, 5072), Point(982, 5076), Point(981, 5079), Point(980, 5081), Point(979, 5083), Point(979, 5085), Point(977, 5088), Point(975, 5088), Point(974, 5090), Point(972, 5091), Point(970, 5094), Point(968, 5095), Point(967, 5095), Point(965, 5097), Point(964, 5098), Point(961, 5098), Point(960, 5099), Point(958, 5099), Point(957, 5099), Point(954, 5099)];
SPS_WalkPath(myPath);
end;
Procedure RHG2;
Var
myPath: TPointArray;
begin
myPath := [Point(952, 5102), Point(947, 5102), Point(945, 5101), Point(943, 5099), Point(939, 5096), Point(938, 5095), Point(936, 5094), Point(934, 5092), Point(933, 5092), Point(932, 5090), Point(929, 5088), Point(928, 5087), Point(926, 5085), Point(925, 5084), Point(922, 5083), Point(921, 5081), Point(918, 5080), Point(914, 5078), Point(913, 5077), Point(910, 5076), Point(907, 5074), Point(904, 5072), Point(897, 5067), Point(903, 5070), Point(898, 5066), Point(895, 5063), Point(893, 5061), Point(890, 5060), Point(887, 5058), Point(885, 5057), Point(883, 5055), Point(880, 5053), Point(877, 5051), Point(876, 5051), Point(873, 5048), Point(872, 5046), Point(870, 5044), Point(868, 5042)];
SPS_WalkPath(myPath);
end;
Procedure RHG3;
Var
myPath: TPointArray;
begin
myPath := [Point(864, 5039), Point(863, 5037), Point(860, 5034), Point(860, 5034), Point(858, 5029), Point(857, 5028), Point(856, 5026), Point(856, 5024), Point(856, 5023), Point(856, 5022), Point(855, 5015), Point(854, 5013), Point(854, 5013), Point(852, 5006), Point(854, 5011), Point(852, 5003), Point(851, 5001), Point(851, 4999), Point(851, 4994), Point(850, 4994), Point(850, 4990), Point(851, 4989), Point(851, 4987), Point(852, 4984), Point(852, 4984)];
SPS_WalkPath(myPath);
end;
Function AtLGrave: Variant;
var
LG: TBox;
Begin
LG := PointToBox(Point(463, 5011), Point(511, 5105));
If PointInBox(SPS_GetMyPos, LG) then
Begin
Result := True;
Exit;
end else
Result := False;
end;
Function AtRGrave: Variant;
var
RG: TBox;
Begin
RG := PointToBox(Point(822, 4946), Point(879, 4997));
If PointInBox(SPS_GetMyPos, RG) then
Begin
Result := True;
Exit;
end else
Result := False;
end;
Function AtLHome: Variant;
var
LH: TBox;
Begin
LH := PointToBox(Point(308, 4971), Point(381, 5145));
If PointInBox(SPS_GetMyPos, LH) then
Begin
Result := True;
Exit;
end else
Result := False;
end;
Function AtObe: Variant;
var
OBE: TBox;
Begin
OBE := PointToBox(Point(528, 4975), Point(784, 5083));
If PointInBox(SPS_GetMyPos, OBE) then
Begin
Result := True;
Exit;
end else
Result := False;
end;
Function AtRHome: Variant;
var
OBE: TBox;
Begin
OBE := PointToBox(Point(928, 4911), Point(1034, 5119));
If PointInBox(SPS_GetMyPos, OBE) then
Begin
Result := True;
Exit;
end else
Result := False;
end;
{Function ToWhitedots: Variant;
Begin
If GetMinimapDots('White') then
Begin
Result := True;
Exit;
end;
If (Not GetMinimapDots('White')) then
Begin
Result := False;
Exit;
end;
end;}
Procedure BlueWalk;
Var
MyPath : TPointArray;
A,B,C,D:TPoint;
Begin
Proggy;
If AtLGrave = True then
Begin
Wait(500);
A := Sps_GetMyPos;
WriteLN('Going to Obelisk!');
If CGame = True then Exit;
SPS_WalkToPos(Point(502, 5035));
If InFight or BlueDead = True then exit;
B := Sps_GetMyPos;
if (Distance(A.X, A.Y, B.X, B.Y) < 6) then Exit;
BO1;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BO2;
If CGame = True then Exit;
If InFight then exit;
BO3;
If CGame = True then Exit;
If InFight then exit;
BO4;
If CGame = True then Exit;
If InFight then exit;
Exit;
end;
If AtObe = True then
Begin
Wait(500);
WriteLN('Going to Grave!');
If CGame = True then Exit;
If InFight then exit;
BG1;
If CGame = True then Exit;
If InFight then exit;
BG2;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BG3;
If CGame = True then Exit;
If InFight then exit;
Exit;
end;
If AtRGrave = True then
Begin
Wait(500);
WriteLN('Going to Home!');
C := Sps_GetMyPos;
If CGame = True then Exit;
SPS_WalkToPos(Point(869, 5030));
If InFight or BlueDead = True then exit;
D := Sps_GetMyPos;
If (Distance(C.X, C.Y, D.X, D.Y) < 6) then Exit;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BH1;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BH2;
If CGame = True then Exit;
If InFight then exit;
BH3;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BH4;
If CGame = True then Exit;
If InFight then exit;
Exit;
end;
If AtLHome = True then
Begin
Wait(500);
WriteLN('Going to home Grave!');
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
SPS_WalkToPos(Point(350, 5043));
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BHG1;
SPS_WalkToPos(Point(401, 4969));
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BHG2;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
BHG3;
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
Exit;
end;
If AtRHome = True then
Begin
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
SPS_WalkToPos(Point(988, 5036));
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
SPS_WalkToPos(Point(988, 5002));
If CGame = True then Exit;
If InFight or BlueDead = True then exit;
SPS_WalkToPos(Point(989, 4968));
end;
If BlueDead = True then exit;
If CGame = True then exit;
Writeln('Dont know where we are, going to home Grave');
myPath := [Point(353, 4969), Point(386, 4957), Point(403, 4968), Point(418, 4980), Point(437, 4992), Point(457, 5018), Point(483, 5051), Point(494, 5063), Point(521, 5023), Point(541, 5023), Point(570, 5021), Point(597, 5023), Point(635, 5024), Point(653, 5028), Point(669, 5024), Point(691, 5031), Point(701, 5032), Point(714, 5031), Point(730, 5030), Point(745, 5030), Point(763, 5034), Point(781, 5032), Point(803, 5039), Point(818, 5053), Point(842, 5060), Point(871, 5062), Point(879, 5057), Point(875, 5039), Point(866, 5029), Point(855, 5000), Point(854, 4989)];
SPS_WalkPath(myPath);
End;
Procedure AttackRed;
Begin
Repeat
If (Not FindObjOnScreen(['Walk here','(level','laa','ker','ules','evel','vel','level'],['Attack'],1183790,2,false,0.21,3.83)) then Exit;
Repeat
Proggy;
Wait(250 + Random(5000));
FindObjOnScreen(['Walk here','(level','laa','ker','ules','evel','vel','level'],['Attack'],1183790,2,false,0.21,3.83);
If CGame = true then Exit;
Until InFight or (Not FindObjOnScreen(['Walk here','(level','laa','ker','ules','evel','vel','level'],['Attack'],1183790,2,false,0.21,3.83)) or BlueDead = True;
If InFight then
Proggy;
Repeat
WriteLN('Killing');
Wait(5);
Until (Not InFight);
If CGame = true then Exit;
Until (Not FindObjOnScreen(['Walk here','(level','laa','ker','ules','evel','vel','level'],['Attack'],1183790,2,false,0.21,3.83)) or BlueDead = True;
end;
Procedure AttackBlue;
Begin
Repeat
If (Not FindObjOnScreen(['Walk here','(level','evel','laa','ker','ules','vel','level'],['Attack'],3547923,5,false,0.14,1.87)) then Exit;
Repeat
Wait(250 + Random(5000));
FindObjOnScreen(['Walk here','(level','evel','laa','ker','ules','vel','level'],['Attack'],3547923,5,false,0.14,1.87);
Until UInFight or InFight or (Not FindObjOnScreen(['Walk here','(level','evel','laa','ker','ules','vel','level'],['Attack'],3547923,5,false,0.14,1.87)) or RedDead = True;
If UInFight or InFight then
Proggy;
Repeat
WriteLN('Killing');
Wait(5);
Until (Not UInFight) or (Not InFight) or (Not OthersInFight);
Until (Not FindObjOnScreen(['Walk here','(level','evel','laa','ker','ules','vel','level'],['Attack'],3547923,5,false,0.14,1.87)) or (BlueDead = True);
end;
Procedure BluePlayers;
Var
K:integer;
Begin
Repeat
Proggy;
Writeln('Doing the walking procedure!');
BlueWalk;
Writeln('Checking if dead!');
BlueDead;
Writeln('Going to kill!');
AttackRed;
Until (CGame = True);
end;
Procedure RedPlayers;
Begin
Repeat
AttackBlue;
If CGame = True then Exit;
Until (Dead = True);
end;
Procedure MainRed;
var
i,x,y: integer;
P:TPoint;
Angle: extended;
MyPath: TPointArray;
Begin
WaitPath := [Point(733, 5316), Point(728, 5319), Point(741, 5322), Point(748, 5309), Point(726, 5306), Point(737, 5314), Point(738, 5304), Point(748, 5299), Point(746, 5315), Point(741, 5317), Point(730, 5314), Point(727, 5304), Point(732, 5298), Point(737, 5307), Point(734, 5308), Point(742, 5305), Point(742, 5312), Point(738, 5299)];
Repeat
Wait(750);
ToRPortal;
Repeat
FindBarrier(['Pass Red barrier','ass','ed','arier','rier','Red'],['Red barrier'],4277360,9,False,0.03,0.72);
Wait(1750);
Mouse(260,470,2,2,True);
Wait(1000);
Mouse(260,405,2,2,True);
Wait(1000);
Until (GetText2 = 'in game') or (GetText2 = 'needed');
Repeat
Waiting;
Writeln('Havent Gotten in game yet!');
Until (GetText = 'Avatar deaths');
Wait(RandomRange(747,1000));
myPath := [Point(932, 4983), Point(931, 4993), Point(930, 5000), Point(932, 5008), Point(937, 5012), Point(945, 5011), Point(936, 5005), Point(934, 4998), Point(934, 4994), Point(936, 4989), Point(937, 4983), Point(943, 4983), Point(943, 4990), Point(941, 4995), Point(945, 5004), Point(942, 5000), Point(946, 4997), Point(950, 4997)];
SPS_WalkPath(myPath);
SetAngle(100);
MakeCompass('E');
Repeat
Wait(500);
FindBarrier(['Pass Red barrier','ass','ed','arier','rier','Red'],['Red barrier'],4277360,9,false,0.03,0.72);
Until DidRedClick;
MakeCompass('N');
Repeat
RedPlayers;
Until CGame = True;
Until (Not LoggedIn);
end;
Procedure MainBlue;
var
i,x,y: integer;
P:Tpoint;
Angle: extended;
myPath: TPointArray;
Begin
WaitPath := [Point(618, 5311), Point(622, 5308), Point(615, 5304), Point(612, 5312), Point(616, 5314), Point(621, 5313), Point(616, 5307), Point(618, 5301), Point(614, 5312), Point(623, 5312), Point(623, 5306), Point(620, 5306)];
Repeat
Repeat
ToBPortal;
FindBarrier(['Pass Blue barrier','ass','lue','arier','rier','Blue'],['Blue barrier'],9464669,3,False,0.33,1.35);
Wait(1750);
Mouse(260,470,2,2,True);
Wait(1000);
Mouse(260,405,2,2,True);
Wait(1000);
Until (GetText2 = 'in game') or (GetText2 = 'needed');
Repeat
Waiting;
Writeln('Havent Gotten in game yet!');
Until (GetText = 'Avatar deaths');
Wait(RandomRange(747,1000));
myPath := [Point(403, 5045), Point(403, 5058), Point(401, 5070), Point(404, 5065), Point(403, 5056), Point(403, 5052), Point(395, 5043), Point(395, 5043), Point(391, 5038), Point(398, 5039), Point(397, 5045), Point(395, 5047), Point(390, 5049), Point(392, 5058), Point(396, 5067), Point(398, 5059), Point(391, 5054), Point(384, 5054)];
SPS_WalkPath(myPath);
MakeCompass('W');
SetAngle(100);
Repeat
Wait(750);
FindBarrier(['Pass Blue barrier','ass','lue','arier','rier','Blue'],['Blue barrier'],12287846,10,False,0.26,1.56);
Until DidRedClick or CGame = True;
MakeCompass('N');
Repeat
Dead := False;
BluePlayers;
Until CGame = True;
Until (Not LoggedIn);
end;
Begin
Startup;
SetupChar;
Repeat
If Team = 'Blue' then MainBlue;
If Team = 'Red' then MainRed;
Until Not(LoggedIn);
end.