Advertisement
Guest User

Untitled

a guest
Jun 14th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.42 KB | None | 0 0
  1. (function(_newNpc, _heroRun, _consoleParse, _parseInput) {
  2. g.loadQueue.push({
  3. fun: () => hero.sp = hero.searchPath
  4. });
  5. const mob = localStorage.getItem('mob') || 'Władca rzek';
  6. const mobs = {
  7. 'Shae Phu':'obrazki/npc/pot/demonszef.gif',
  8. 'Władca rzek':'obrazki/npc/hum/gobmag2.gif',
  9. 'Gobbos':'obrazki/npc/hum/gobsamurai.gif',
  10. 'Razuglag Oklash':'obrazki/npc/hum/praork_mag.gif',
  11. 'Szczęt alias Gładki':'obrazki/npc/woj/rozb04.gif',
  12. 'Tarmus Wuden':'obrazki/npc/hum/klan_tarmus.gif',
  13. 'Foverk Turrim':'obrazki/npc/hum/kobold07.gif',
  14. 'Vari Kruger':'obrazki/npc/hum/gnoll11.gif',
  15. 'Furruk Kozug':'obrazki/npc/hum/gnoll12.gif',
  16. 'Tollok Atamatu':'obrazki/npc/hum/tollok-c-boss.gif',
  17. 'Tollok Utumutu':'obrazki/npc/hum/tollok-c-boss.gif',
  18. 'Goplana':'obrazki/npc/hum/rusalka.gif',
  19. 'Wyznawca ciemnych mocy ':'obrazki/npc/hum/mnich04.gif',
  20. 'Mazurnik Przybrzeżny':'obrazki/npc/hum/wodnik03.gif',
  21. 'Łowca czaszek':'obrazki/npc/hum/umarlak4.gif',
  22. 'Grabarz świątynny':'obrazki/npc/hum/magaz-grabarz.gif',
  23. 'Podły zbrojmistrz':'obrazki/npc/hum/magaz-zbrojmistrz.gif',
  24. 'Szkielet władcy żywiołów':'obrazki/npc/pot/szkiel05.gif',
  25. 'Nieumarły krzyżowiec':'obrazki/npc/pot/el_szkielet.gif',
  26. 'Morthen':'obrazki/npc/hum/krasnolud_boss.gif',
  27. 'Żelazoręki Ohydziarz':'obrazki/npc/pot/ugrape2.gif',
  28. 'Miłośnik łowców':'obrazki/npc/hum/ogr3.gif',
  29. 'Miłośnik rycerzy':'obrazki/npc/hum/ogr2.gif',
  30. 'Miłośnik magii':'obrazki/npc/hum/ogr1.gif',
  31. 'Młody Jack Truciciel':'obrazki/npc/hum/rusalka.gif',
  32. 'Wójt Fistuła':'obrazki/npc/woj/goral05.gif',
  33. 'Młody Jack Truciciel':'obrazki/npc/woj/pirat01.gif',
  34. 'Krab pustelnik':'obrazki/npc/pot/krab_big3.gif',
  35. 'Królowa śniegu':'obrazki/npc/hum/ice_queen.gif',
  36. 'Teściowa Rumcajsa':'obrazki/npc/woj/goral08.gif',
  37. 'Poskramiacz hydr':'obrazki/npc/hum/zagajnik02.gif',
  38. 'Pogromczyni Mantikor':'obrazki/npc/hum/zagajnik03.gif',
  39. 'Pogromca gryfów':'obrazki/npc/hum/zagajnik01.gif',
  40. 'Burkog Lorulk':'obrazki/npc/hum/orkczd.gif',
  41. 'Jertek Moxos':'obrazki/npc/hum/molochelita02n.gif',
  42. 'Berserker Amuno':'obrazki/npc/hum/amuno.gif',
  43. 'Stworzyciel':'obrazki/npc/pot/stworzyciel.gif',
  44. 'Fodug Zolash':'obrazki/npc/hum/fodug_zolash.gif',
  45. 'Mistrz Worundriel':'obrazki/npc/hum/worundriel02.gif',
  46. 'Goons Asterus':'obrazki/npc/hum/mechgoblin4.gif',
  47. 'Adariel':'obrazki/npc/kob/tri-adariel.gif',
  48. 'Duch władcy klanów':'obrazki/npc/hum/praork_duch1.gif',
  49. 'Ogr Stalowy Pazur':'obrazki/npc/pot/ogr_drapak.gif',
  50. 'Bragarth myśliwy dusz':'obrazki/npc/hum/praork_low_elita.gif',
  51. 'Fursharag pożeracz umysłów':'obrazki/npc/hum/praork_mag_elita.gif',
  52. 'Ziuggrael strażnik królowej':'obrazki/npc/hum/praork_woj_elita.gif',
  53. 'Lusgrathera królowa pramatka':'obrazki/npc/hum/prakrolowa.gif',
  54. 'Borgoros Garamir III':'obrazki/npc/hum/minotaur-elita.gif',
  55. 'Chryzoprenia':'obrazki/npc/hum/driada04.gif',
  56. 'Czempion Furboli':'obrazki/npc/hum/forbol03.gif',
  57. 'Torunia Ankelwald':'obrazki/npc/hum/thuz-patr01.gif',
  58. 'Breheret żelazny łeb':'obrazki/npc/hum/barbarzynca06.gif',
  59. 'Mysiur myświórowy król':'obrazki/npc/hum/krolszczur.gif',
  60. 'Sadolia nadzorczyni Hurys':'obrazki/npc/hum/dziewica_nadzor.gif',
  61. 'Bergermona krwawa hrabina':'obrazki/npc/hum/sekta_m_tortur_e2.gif',
  62. 'Sataniel skrytobójca':'obrazki/npc/hum/sekta_zabojca_e2.gif',
  63. 'Annaniel wysysacz marzeń':'obrazki/npc/hum/sekta_mag_e2.gif',
  64. 'Gothardus kolekcjoner głów':'obrazki/npc/hum/sekta_pal_e2.gif',
  65. 'Zufulus smakosz serc':'obrazki/npc/hum/sekta_wyr_serc.gif',
  66. 'Marlloth Malignitas':'obrazki/npc/pot/marlloth.gif',
  67. 'Arachniregina Colosseus':'obrazki/npc/pot/regina-e2.gif',
  68. 'Mocny Maddoks':'obrazki/npc/hum/maddok5.gif',
  69. 'Pancerny Maddok':'obrazki/npc/pot/maddok_roz.gif',
  70. 'Silvanasus':'obrazki/npc/pot/silvanasus.gif',
  71. 'Dendroculus':'obrazki/npc/pot/dendroculus.gif',
  72. 'Cuaitl Citlalin':'obrazki/npc/hum/mahop04.gif',
  73. 'Quetzalcoatl':'obrazki/npc/pot/quetzalcoatl.gif',
  74. 'Neferkar Set':'obrazki/npc/pot/szkiel_set.gif',
  75. 'Chaegd Agnrakh':'obrazki/npc/hum/bar_smokoszef.gif',
  76. 'Vaenra Charkhaam':'obrazki/npc/hum/bar_smoczyca.gif',
  77. 'Nymphemonia':'obrazki/npc/hum/driada5.gif',
  78. 'Zorin':'obrazki/npc/pot/wl-mrozu01.gif',
  79. 'Furion':'obrazki/npc/pot/wl-mrozu02.gif',
  80. 'Artenius':'obrazki/npc/pot/wl-mrozu03.gif'
  81. }
  82. const originalMobImage = new Image;
  83. originalMobImage.src = mobs[mob];
  84.  
  85. const target = {
  86. x: -1,
  87. y: -1
  88. };
  89.  
  90. function hasTarget() {
  91. return !(target.x === -1 && target.y === -1);
  92. }
  93.  
  94. function getBase64Image(img) {
  95. var canvas = document.createElement("canvas");
  96. canvas.width = img.width;
  97. canvas.height = img.height;
  98.  
  99. var ctx = canvas.getContext("2d");
  100. ctx.drawImage(img, 0, 0);
  101. var dataURL = canvas.toDataURL("image/gif");
  102.  
  103. return dataURL.replace(/^data:image\/(png|jpg|gif);base64,/, "");
  104. }
  105.  
  106. function compareImages(image1, image2, callbackIfTrue) {
  107. console.log('here');
  108. const baseOriginal = getBase64Image(image1);
  109. const baseCopy = getBase64Image(image2);
  110. if(baseOriginal === baseCopy) callbackIfTrue();
  111. else console.log('Shit');
  112. }
  113.  
  114. function onNewNpc(npc) {
  115. if(npc.hasOwnProperty('fake')) return;
  116. console.log(hasTarget());
  117. if(npc.nick === mob && !hasTarget() && !isset(npc.del)) {
  118. const cloneImage = new Image;
  119. cloneImage.src = window.location + "/obrazki/npc/" + npc.icon;
  120. cloneImage.onload = function() {
  121. compareImages(originalMobImage, cloneImage, function() {
  122. target.x = npc.x;
  123. target.y = npc.y;
  124. setTimeout(() => hero.sp(target.x, target.y), 3000 + Math.random() * 1000);
  125. message('Target found!');
  126. });
  127.  
  128. };
  129. }
  130. };
  131.  
  132. function inRange(x1, y1, x2, y2) {
  133. return Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2)) < 2;
  134. }
  135.  
  136. function attackNpc(nick) {
  137. Object.keys(g.npc).forEach(key => {
  138. const npc = g.npc[key];
  139. if(npc.nick === nick && inRange(hero.x, hero.y, npc.x, npc.y)) {
  140. message(`Attacking: ${npc.nick}`);
  141. setTimeout(() => _g(`fight&a=attack&id=-${npc.id}&ff=1`), 1000 + Math.random() * 1000);
  142. }
  143. })
  144. };
  145.  
  146. function onTargetReached() {
  147. target.x = -1;
  148. target.y = -1;
  149. attackNpc(mob);
  150. };
  151.  
  152. consoleParse = function(cmd) {
  153. if(cmd.indexOf('setMob') > -1) {
  154. message('Success');
  155. const arr = cmd.split(' ');
  156. arr.splice(0, 1);
  157. const mob = arr.join(' ');
  158. localStorage.setItem('mob', mob);
  159. setTimeout(() => window.location.reload(), 200);
  160. } else {
  161. _consoleParse(cmd);
  162. }
  163. }
  164.  
  165. newNpc = function(npcs) {
  166. if(arguments.length !== 0 && npcs !== undefined) {
  167. Object.keys(npcs).forEach(elem => onNewNpc(npcs[elem]));
  168. }
  169. _newNpc.apply(this, arguments);
  170. }
  171.  
  172. hero.run = function() {
  173. if(inRange(hero.x, hero.y, target.x, target.y)) {
  174. onTargetReached();
  175. }
  176. _heroRun.apply(this, arguments);
  177. }
  178.  
  179. g.loadQueue.push({
  180. fun: () => $('#nick').text(mob)
  181. });
  182. setTimeout(() => window.location.reload(), 60000 + Math.random() * 10000);
  183. setTimeout(function(){
  184. for(var i in g.npc){
  185. if ((Math.abs(hero.rx - g.npc[i].x) <= 1 && Math.abs(hero.ry - g.npc[i].y) <= 1) && (g.npc[i].type == 2 || g.npc[i].type == 3)){
  186. _g("fight&a=attack&ff=1&id=-"+i);
  187. break;
  188. }
  189. }
  190. },5000);
  191. })(newNpc, hero.run, consoleParse, parseInput);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement