daily pastebin goal
56%
SHARE
TWEET

Untitled

a guest Jun 13th, 2018 51 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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 getDir(heroX, heroY, mobX, mobY) {
  91.       const x = mobX - heroX,
  92.          y = heroY - mobY;
  93.       if(x >= 0 && y >= 0) return 1;
  94.       if(x <= 0 && y >= 0) return 2;
  95.       if(x <= 0 && y <= 0) return 3;
  96.       if(x >= 0 && y <= 0) return 4;
  97.    }
  98.  
  99.    function hasTarget() {
  100.       return !(target.x === -1 && target.y === -1);
  101.    }
  102.  
  103.    function getBase64Image(img) {
  104.       var canvas = document.createElement("canvas");
  105.       canvas.width = img.width;
  106.       canvas.height = img.height;
  107.  
  108.       var ctx = canvas.getContext("2d");
  109.       ctx.drawImage(img, 0, 0);
  110.       var dataURL = canvas.toDataURL("image/gif");
  111.  
  112.       return dataURL.replace(/^data:image\/(png|jpg|gif);base64,/, "");
  113.    }
  114.  
  115.    function compareImages(image1, image2, callbackIfTrue) {
  116.       console.log('here');
  117.       const baseOriginal = getBase64Image(image1);
  118.       const baseCopy = getBase64Image(image2);
  119.       if(baseOriginal === baseCopy) callbackIfTrue();
  120.       else console.log('Shit');
  121.    }
  122.  
  123.    function onNewNpc(npc) {
  124.       if(npc.hasOwnProperty('fake')) return;
  125.       console.log(hasTarget());
  126.       if(npc.nick === mob && !hasTarget()) {
  127.          console.log('comparing');
  128.          const cloneImage = new Image;
  129.          cloneImage.src = window.location + "/obrazki/npc/" + npc.icon;
  130.          cloneImage.onload = function() {
  131.             compareImages(originalMobImage, cloneImage, function() {
  132.                target.x = npc.x;
  133.                target.y = npc.y;
  134.                setTimeout(() => hero.sp(target.x, target.y), 3000 + Math.random() * 1000);
  135.                message('Target found!');
  136.             });
  137.  
  138.          };
  139.       }
  140.    };
  141.  
  142.    function inRange(x1, y1, x2, y2) {
  143.       return Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2)) < 2;
  144.    }
  145.  
  146.    function attackNpc(nick) {
  147.       Object.keys(g.npc).forEach(key => {
  148.          const npc = g.npc[key];
  149.          if(npc.nick === nick && inRange(hero.x, hero.y, npc.x, npc.y)) {
  150.             message(`Attacking: ${npc.nick}`);
  151.             setTimeout(() => _g(`fight&a=attack&id=-${npc.id}&ff=1`), 1000 + Math.random() * 1000);
  152.          }
  153.       })
  154.    };
  155.  
  156.    function onTargetReached() {
  157.       target.x = -1;
  158.       target.y = -1;
  159.       attackNpc(mob);
  160.    };
  161.  
  162.    consoleParse = function(cmd) {
  163.       if(cmd.indexOf('setMob') > -1) {
  164.          message('Success');
  165.          const arr = cmd.split(' ');
  166.          arr.splice(0, 1);
  167.          const mob = arr.join(' ');
  168.          localStorage.setItem('mob', mob);
  169.          setTimeout(() => window.location.reload(), 200);
  170.       } else {
  171.          _consoleParse(cmd);
  172.       }
  173.    }
  174.  
  175.    newNpc = function(npcs) {
  176.       if(arguments.length !== 0 && npcs !== undefined) {
  177.          console.log('mapped');
  178.          Object.keys(npcs).forEach(elem => onNewNpc(npcs[elem]));
  179.       }
  180.       _newNpc.apply(this, arguments);
  181.    }
  182.  
  183.    hero.run = function() {
  184.       if(inRange(hero.x, hero.y, target.x, target.y)) {
  185.          onTargetReached();
  186.       }
  187.       _heroRun.apply(this, arguments);
  188.    }
  189.  
  190.    g.loadQueue.push({
  191.       fun: () => $('#nick').text(mob)
  192.    });
  193.     setTimeout(() => window.location.reload(), 60000 + Math.random() * 10000);
  194.     setTimeout(function(){
  195.     for(var i in g.npc){
  196.       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)){
  197.         _g("fight&a=attack&ff=1&id=-"+i);
  198.         break;
  199.       }
  200.     }
  201. },5000);
  202. })(newNpc, hero.run, consoleParse, parseInput);
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top