11 macro's for Agar.io :)

11 macro's for feeding, linesplits, tricksplits, etc. And enables show mass and skip stats by default :)

  1. // ==UserScript==
  2. // @name 11 macro's for Agar.io :)
  3. // @version 0.3
  4. // @description 11 macro's for feeding, linesplits, tricksplits, etc. And enables show mass and skip stats by default :)
  5. // @author Megabyte918
  6. // @match http://truefxserver.ga/
  7. // @match http://old.ogarul.io/*
  8. // @namespace https://greasyfork.org/users/90941
  9. // ==/UserScript==
  10. window.addEventListener('keydown', keydown);
  11. window.addEventListener('keyup', keyup);
  12. document.getElementById("nick").maxLength = "100";
  13.  
  14. //List instructions
  15. var i = document.getElementById("instructions");
  16. i.innerHTML += "<center>Press & hold <b>W</b> for macro feed</center>";
  17. i.innerHTML += "<center>Press <b>Shift</b> to split 4x</center>";
  18. i.innerHTML += "<center>Press <b>A</b> or <b>3</b> to split 3x</center>";
  19. i.innerHTML += "<center>Press <b>D</b> or <b>2</b> to split 2x</center>";
  20. i.innerHTML += "<center>Press <b>S</b> or <b>1</b> to split 1x</center>";
  21. i.innerHTML += "<center>Press <b>H</b> for horizontal linesplit position</center>";
  22. i.innerHTML += "<center>Press <b>V</b> for vertical linesplit position</center>";
  23.  
  24. //Auto-enable show mass/skip stats
  25. //IMPORTANT: You must uncheck showmass/skip stats first then recheck them for it to auto save every time
  26. function autoSet() {
  27. var m = document.getElementById('showMass'), s = document.getElementById('skipStats');
  28. if (document.getElementById("overlays").style.display!= "none") {
  29. document.getElementById("settings").style.display = "block";
  30. if (m.checked) {m.click();} m.click(); //Show mass
  31. if (s.checked) {s.click();} s.click(); //Skip stats
  32. } else setTimeout(autoSet, 100);
  33. }
  34.  
  35. //Load macros
  36. var canFeed = false;
  37. function keydown(event) {
  38. switch (event.keyCode) {
  39. case 87: //Feeding Macro (w)
  40. canFeed = true;
  41. feed();
  42. break;
  43. case 16: //Tricksplit Macro (shift)
  44. var e = 35;
  45. for (var e2 = 0; e2 < 4; e2++) {
  46. setTimeout(split, e);
  47. e *= 2;
  48. }
  49. break;
  50. case 52: //Tricksplit Macro (4)
  51. var four = 35;
  52. for (var four2 = 0; four2 < 4; four2++) {
  53. setTimeout(split, four);
  54. four *= 2;
  55. }
  56. break;
  57. case 65: //Triplesplit Macro (a)
  58. var a = 35;
  59. for (var a2 = 0; a2 < 3; a2++) {
  60. setTimeout(split, a);
  61. a *= 2;
  62. }
  63. break;
  64. case 51: //Triplesplit Macro (3)
  65. var three = 35;
  66. for (var three2 = 0; three2 < 3; three2++) {
  67. setTimeout(split, three);
  68. three *= 2;
  69. }
  70. break;
  71. case 68: //Doublesplit Macro (d)
  72. split();
  73. setTimeout(split, 50);
  74. break;
  75. case 50: //Doublesplit Macro (2)
  76. split();
  77. setTimeout(split, 50);
  78. break;
  79. case 83: //Space Macro (s)
  80. split();
  81. break;
  82. case 49: //Space Macro (1)
  83. split();
  84. break;
  85. case 72: //Horizontal linesplit (h)
  86. X = window.innerWidth / 2;
  87. Y = window.innerHeight / 2;
  88. $("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
  89. break;
  90. case 86: //Vertical linesplit (v)
  91. X = window.innerWidth / 2;
  92. Y = window.innerHeight / 2.006;
  93. $("canvas").trigger($.Event("mousemove", {clientX: X, clientY: Y}));
  94. break;
  95. }
  96. }
  97.  
  98. //When a player lets go of W stop feeding
  99. function keyup(event) {
  100. if (event.keyCode == 87)
  101. canFeed = false;
  102. }
  103.  
  104. //Alias for W key
  105. function feed() {
  106. if (canFeed) {
  107. window.onkeydown({keyCode: 87});
  108. window.onkeyup({keyCode: 87});
  109. setTimeout(feed, 0);
  110. }
  111. }
  112.  
  113. //Alias for space
  114. function split() {
  115. $("body").trigger($.Event("keydown", { keyCode: 32}));
  116. $("body").trigger($.Event("keyup", { keyCode: 32}));
  117. }