Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.53 KB | None | 0 0
  1. // ==UserScript==
  2. // @name Fifa BINbot
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.6
  5. // @description Implements the strategy to obtain sick kids through robotic methods
  6. // @author Brennan Adler & Nathan Ioriatti
  7. // @include http://*.easports.com/fifa/*
  8. // @include https://*.easports.com/fifa/*
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12. (function() {
  13. 'use strict';
  14.  
  15. //--- Get the first link that has "stackoverflow" in its URL.
  16.  
  17.  
  18. //HOW TO START PROGRAM
  19.  
  20. $(document).keyup(function(e) {
  21. if (e.keyCode === 71)
  22. {
  23. increment(1);
  24. }
  25. if (e.keyCode === 220)
  26. {
  27. increment(2);
  28. }
  29. });
  30.  
  31. var x = 0;
  32. var minBid = false;
  33. var cycle=3;
  34. var cycleDecreasing = true;
  35. var lowEnd = true;
  36. function increment(num){
  37. if(x===0){
  38. x = num;
  39. if(x===1){
  40. minBid = false;
  41. cycle = 3;
  42. cycleDecreasing = true;
  43. search();
  44. }
  45. else if(x===2){
  46. askPrice();
  47. }
  48. }else{
  49. x=0;
  50. }
  51. }
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. //SELL FUNCTIONS
  62. /*
  63. function askPrice(){
  64. var price = prompt("Please enter desired sell price", "10,000");
  65. if(price !== null &&price!==""){
  66. setTimeout(sell(price),500);
  67. }
  68. }
  69.  
  70. function sell(price){
  71. if(x===2){
  72. var targetNode = document.querySelector (".list");
  73. if(targetNode){
  74. click(targetNode);
  75. setTimeout(setPrice(price),800);
  76. }else{
  77. alert("NO ITEMS TO SELL");
  78. }
  79. }
  80. }
  81.  
  82. function setPrice(price){
  83. var targetNode = document.querySelectorAll(".inputBox");
  84. targetNode[0].innerHTML = "<input type='tel' pattern='[0-9]*' class='numericInput filled' placeholder='None' value='500'>";
  85. targetNode[1].innerHTML = "<input type='tel' pattern='[0-9]*' class='numericInput filled' placeholder='None' value='500'>";
  86. //var targetNode2 = document.querySelector (".list").innerHTML;
  87. // setTimeout(function() { alert(targetNode2); }, 1000);
  88. setTimeout(function() { alert(d1); }, 1000);
  89. setTimeout(function() { alert(d2); }, 1000);
  90. //
  91. }
  92.  
  93. */
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107. //AUTO BIN
  108. function search(){
  109. if(x===1){
  110.  
  111. var targetNode2 = document.querySelector (".call-to-action");
  112. if (targetNode2) {
  113. click(targetNode2);
  114. setTimeout(buy,800);
  115. }
  116. else{
  117. alert("search not found");
  118. }
  119. }
  120. }
  121. function buy(){
  122. var targetNode = document.querySelector(".buyButton.coins");
  123. /*var targetNode2 = document.querySelector(".call-to-action");
  124. while (!(targetNode||targetNode2)) {
  125. wait(10);
  126. targetNode = document.querySelector(".buyButton");
  127. targetNode2 = document.querySelector(".call-to-action");
  128. }*/
  129.  
  130. if (targetNode) {
  131. click(targetNode);
  132. setTimeout(confirm,100);
  133. }else{
  134. setTimeout(back,100);
  135. }
  136. }
  137. function confirm(){
  138. var targetNode2 = document.querySelectorAll(".flat");
  139. var targetNode = targetNode2[1];
  140. if (targetNode) {
  141. click(targetNode);
  142. setTimeout(succeed,600);
  143. }
  144. }
  145.  
  146. function succeed(){
  147. var targetNode = document.querySelector(".btn-flat");
  148. if (targetNode.innerHTML === "Ok") {
  149. click(targetNode);
  150. setTimeout(back,100); //check for pop-up failure
  151. }else{
  152. setTimeout(transfer,400);
  153. }
  154. }
  155. function transfer(){
  156. var targetNode = document.querySelectorAll(".btn-text")[7];
  157. if (targetNode) {
  158. click(targetNode);
  159. setTimeout(back,300);
  160. }
  161. else{
  162. setTimeout(back,300); //check for non-pop-up failure
  163. }
  164. }
  165.  
  166. function back(){
  167. var targetNode = document.querySelector(".btn-navigation");
  168. if (targetNode) {
  169. click(targetNode);
  170. setTimeout(inc,1500);
  171. }
  172. else{
  173. alert("* Target node3 not found!");}
  174. }
  175.  
  176. function inc(){
  177. var targetNode;
  178. if(cycleDecreasing){
  179. targetNode = document.querySelectorAll(".btn-standard.decrement-value")[3];
  180. cycle--;
  181. }else{
  182. targetNode = document.querySelectorAll(".btn-standard.increment-value")[3];
  183. cycle++;
  184. }
  185. if(targetNode){
  186. click(targetNode);
  187. }
  188. if(cycle===0 ||cycle===3){
  189. if(cycleDecreasing){
  190. if(lowEnd){
  191. targetNode = document.querySelector(".btn-standard.increment-value"); //make min bid = 150
  192. }
  193. else{
  194. targetNode = document.querySelectorAll(".btn-standard.decrement-value")[2]; //clear BIN
  195. }
  196. }
  197. else{
  198. if(lowEnd){
  199. targetNode = document.querySelectorAll(".btn-standard.increment-value")[2]; //make min BIN = 200
  200. }
  201. else{
  202. targetNode = document.querySelector(".flat.camel-case"); //clear bid values
  203. }
  204. lowEnd = !lowEnd;
  205. }
  206. cycleDecreasing = !cycleDecreasing;
  207. if(targetNode){
  208. click(targetNode);
  209. }
  210. }
  211. setTimeout(search,50);
  212. }
  213.  
  214.  
  215. //HELPER FUNCTIONS
  216. function triggerMouseEvent (node, eventType) {
  217. var clickEvent = document.createEvent ('MouseEvents');
  218. clickEvent.initEvent (eventType, true, true);
  219. node.dispatchEvent (clickEvent);
  220. }
  221. function sleep(ms) {
  222. return new Promise(resolve => setTimeout(resolve, ms));
  223. }
  224. function isHidden(el) {
  225. return (el.offsetParent !== null);
  226. }
  227. function click(targetNode){
  228. //--- Simulate a natural mouse-click sequence.
  229. triggerMouseEvent (targetNode, "mouseover");
  230. triggerMouseEvent (targetNode, "mousedown");
  231. triggerMouseEvent (targetNode, "mouseup");
  232. triggerMouseEvent (targetNode, "click");
  233. }
  234. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement