Guest User

Untitled

a guest
Jun 23rd, 2018
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.83 KB | None | 0 0
  1. program BloodPact;
  2.  
  3. {$DEFINE SMART}
  4. {$i SRL/srl.simba}
  5. {$i SRL/SRL/skill/fighting.simba}
  6.  
  7. var
  8. kw1,kw2,cw1:Integer;
  9. aFound: Extended;
  10.  
  11.  
  12.  
  13. procedure DeclarePlayers;
  14. Begin
  15. HowManyPlayers := 1;
  16. NumberOfPlayers(HowManyPlayers);
  17. CurrentPlayer := 0;
  18.  
  19. With Players[0] Do
  20. Begin
  21. Name := ''; //Player username.
  22. Pass := ''; //Player password.
  23. Nick := ''; //Player nickname - 3-4 letters of Player username.
  24. Active := True;
  25. End;
  26.  
  27. End;
  28. Procedure SetDTMs;
  29. begin
  30. kw1 := DTMFromString('mggAAAHicY2NgYEhjYmAIBeIKIM4F4joo3xoo5w3EfkAcAsS2QGwDxE11+Qy9nRUME/qqGWbPbGVobihgaG8pZuAHymHDjDgwBAAANyQNxw==');
  31. kw2 := DTMFromString('mlwAAAHicY2dgYLjNwsBwDojfAvEdIH4BxFeA+C4QTwLKL4TixVC8AojPAHFnWylDU10+Q0NNLkN7SzFDWXEqQ0FuPMPM6c0MkkB5XJgRD4YCAF6pFYo=');
  32. cw1 := DTMFromString('mrAAAAHic42BgYFjNwsCwB4gvAfEVID4MxOeg9AEgPgZUsxyIVwHxISA+C8TXgHgvSC8QN9Xlg3FZcSoY52XHMbS3FDMU5MYz1FRmMSgD1fDjwYwEMAwAAHrnF4w=');
  33.  
  34. end;
  35. procedure SetupChar;
  36.  
  37. begin
  38.  
  39. SetupSRL();
  40. SetAngle(0);
  41. ClickNorth(0);
  42. end;
  43. procedure Startup;
  44. begin
  45. Smart_Server := 69;
  46. Smart_Members:= true;
  47. Smart_Signed := true;
  48. SetupSRL;
  49. DeclarePlayers;
  50. LogInPlayer;
  51. MouseSpeed := 500;
  52. wait(100+random(100));
  53. end;
  54. Function FindObjOnScreen(Up,Option:Array of String;Color,Tolerance:Integer;MC2:Variant;Hmod,Smod:Extended): Boolean;
  55. var
  56. X,Y:Integer;
  57. CTS,I,T: Integer;
  58. TPA: TPointArray;
  59. begin
  60. repeat
  61. Result := False;
  62. CTS := GetColorToleranceSpeed;
  63.  
  64. ColorToleranceSpeed(2);
  65.  
  66. SetColorSpeed2Modifiers(Hmod,Smod);
  67.  
  68. FindColorsSpiralTolerance(MSCX, MSCY, TPA,(Color), MSX1, MSY1, MSX2, MSY2, Tolerance);
  69. ColorToleranceSpeed(CTS);
  70.  
  71. if (Length(TPA) < 1) then
  72. Exit;
  73.  
  74. MMouse(TPA[0].X, TPA[0].Y, 5, 5);
  75. if WaitUpTextMulti(Up, 400) then
  76. begin
  77. GetMousePos(X, Y);
  78. ClickMouse2(MC2);
  79. ChooseOptionMulti(Option);
  80. Result := True;
  81. Exit;
  82. end;
  83.  
  84. Until(Result)
  85. end;
  86. Procedure TalkXenia;
  87. begin
  88. Repeat
  89. Wait(1000 + Random(500));
  90. FindObjOnScreen(['lk','Talk','alk','lk'],['Talk','alk'],5521738,8,True,0.11,0.17);
  91. Until DidRedClick;
  92. Wait(1000 + Random(500));
  93. Mouse(260, 471, 1, 1, True);
  94. Wait(1000 + Random(500));
  95. Mouse(260, 390, 1, 1, True);
  96. Wait(1000 + Random(500));
  97. Mouse(260, 470, 1, 1, True);
  98. Wait(1000 + Random(500));
  99. Mouse(260, 470, 1, 1, True);
  100. Wait(1000 + Random(500));
  101. Mouse(260, 385, 1, 1, True);
  102. Wait(1000 + Random(500));
  103. Mouse(326, 287, 1, 1, True);
  104. Wait(1000 + Random(500));
  105. Mouse(260, 470, 1, 1, True);
  106. Wait(500 + Random(500));
  107. Mouse(260, 470, 1, 1, True);
  108. end;
  109. Procedure FirstScene;
  110. var
  111. L:Integer;
  112. begin
  113. Repeat
  114. Wait(1000 + Random(500));
  115. Mouse(260, 470, 1, 1, True);
  116. Inc(L);
  117. Until (L = 10);
  118. end;
  119.  
  120. Procedure Kayle;
  121. Var
  122. X,Y,Bank:Integer;
  123. begin
  124. Wait(1000 + Random(500));
  125. Mouse(260, 470, 1, 1, True);
  126.  
  127. begin
  128. if FindDTMRotated(kw1, x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
  129. begin
  130. Mouse(x, y, 5, 5, True);
  131. FFlag(6);
  132. repeat
  133. Wait(50 + Random(25));
  134. until(Not IsMoving);
  135. FreeDtm(kw1);
  136. end;
  137. end;
  138. Wait(1000);
  139. begin
  140. if FindDTMRotated(kw2, x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
  141. begin
  142. Mouse(x, y, 5, 5, True);
  143. FFlag(6);
  144. repeat
  145. Wait(50 + Random(25));
  146. until(Not IsMoving);
  147. FreeDtm(kw2);
  148. end;
  149. end;
  150. Wait(1000);
  151. If InFight then Repeat
  152. Wait(50);
  153. Until (Not InFight);
  154. end;
  155.  
  156. Procedure KayleTalk;
  157. begin
  158. FindObjOnScreen(['alk', '-to'],['ayle'],4413109,1,True,0.23,7.45);
  159. Wait(1000 + Random(500));
  160. Mouse(260, 470, 1, 1, True);
  161. Wait(1000 + Random(500));
  162. Mouse(265, 450, 1, 1, True);
  163. Wait(1500 + Random(500));
  164. FindObjOnScreen(['ake', 'ayle', 'ling'],['ayle'],3690903,9,True,0.20,0.84);
  165. if DidRedClick then
  166. begin
  167. Wait(1000 + Random(1000));
  168. InvMouse(1, 3);
  169. if IsUpText('ield') then
  170. begin
  171. ClickMouse2(True);
  172. end;
  173. end;
  174. end;
  175. Procedure Caitlin;
  176. Var
  177. X,Y,Bank:Integer;
  178. Begin
  179. if FindDTMRotated(cw1, x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
  180. begin
  181. Mouse(x, y, 5, 5, True);
  182. FFlag(6);
  183. repeat
  184. Wait(50 + Random(25));
  185. until(Not IsMoving);
  186. FreeDtm(cw1);
  187. end;
  188. Wait(2000);
  189. If infight then
  190. repeat
  191. Wait(50);
  192. until (not InFight);
  193. Exit;
  194. end;
  195.  
  196. Begin
  197. Startup;
  198. SetupChar;
  199. Repeat
  200. TalkXenia;
  201. Wait(1000);
  202. FindObjOnScreen(['limb','own','ataco','rance'],['limb'],4738387,3,True,0.81,0.02);
  203. Wait(1000);
  204. FirstScene;
  205. SetDTMs;
  206. Wait(1000);
  207. Kayle;
  208. Wait(500);
  209. KayleTalk;
  210. Wait(500);
  211. Caitlin;
  212. Until (Not LoggedIn);
  213. end.
Add Comment
Please, Sign In to add comment