Nyan-Cat

autoAD (Everything pre-break)

May 12th, 2018
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name         autoAD
  3. // @version      0.1
  4. // @description  Automaticly play AD
  5. // @author       You
  6. // @match        http*://ivark.github.io/
  7. // @grant        none
  8. // ==/UserScript==
  9.  
  10. (function() {
  11.     'use strict';
  12.     function buyDim(tier,grade) {
  13.       name = TIER_NAMES[tier]
  14.       switch (grade) {
  15.         case 1:
  16.           return document.getElementById(name).click()
  17.           break
  18.         case 2:
  19.           if (player.currentChallenge != "challenge8") document.getElementById(name).click()
  20.           return document.getElementById(name + "Max").click()
  21.           break
  22.       }
  23.       return 0;
  24.     }
  25.  
  26.     var node=document.createElement("span")
  27.     node.style.display="inline-block"
  28.     $("#infinityPoints2")[0].parentNode.appendChild(node)
  29.     $("#infinityPoints2")[0].setAttribute("class","")
  30.     node.parentNode.setAttribute("class","IP")
  31.     node.parentNode.style.position="absolute"
  32.     node.parentNode.style.left="65%"
  33.     node.innerHTML="Just a Nyan Cat's attempt at making a automatic AD player"
  34.     var toggle=document.createElement("button")
  35.     var toggled = false
  36.     toggle.innerHTML="Start"
  37.     $("#infinityPoints2")[0].parentNode.appendChild(toggle)
  38.  
  39.     toggle.onclick=function() {
  40.       toggled = !toggled
  41.       if (toggled) toggle.innerHTML="Stop";
  42.       else toggle.innerHTML="Start";
  43.     };
  44.  
  45.     var bestippm = 0
  46.     var bestip = 0
  47.     var galaxyTarget = 4
  48.     var idk = false
  49.  
  50.     setInterval(function(){
  51.       if (player.thisInfinityTime>1 && gainedInfinityPoints()/player.thisInfinityTime > bestippm) {
  52.         bestippm=gainedInfinityPoints()/player.thisInfinityTime;
  53.         bestip=gainedInfinityPoints();
  54.       }
  55.     },100);
  56.  
  57.     setInterval(function() {
  58.       if (toggled) {
  59.         document.getElementById("confirmation").checked = true
  60.         var IUOrder = [11,21,22,23,24,12,13,14,31,32,33,34,41,42,43,44]
  61.         var IUPrize = [1,1,1,1,2,1,1,1,3,5,7,10,20,40,80,500]
  62.         for (i=0;i<IUOrder.length;i++) {
  63.           if ((!player.infinityUpgrades.includes("unspentBonus")) || player.infinityPoints-IUPrize[i]>=10) document.getElementById("infi" + IUOrder[i].toString()).click();
  64.           if (!player.infinityUpgrades.includes("galaxyBoost") && i==4) i=16;
  65.         }
  66.  
  67.         if (player.infinityUpgrades.includes("skipResetGalaxy")) {
  68.           document.getElementById("infiMult").click();
  69.         }
  70.  
  71.         if (player.money.gte(Number.MAX_VALUE) && !player.break) {
  72.           document.getElementById("bigcrunch").click()
  73.           player.options.challConf = true
  74.           if (player.infinitied < 6) {
  75.             document.getElementById("challenge11").click()
  76.           } else if (player.infMult != 1) {
  77.             var challOrder = [12,9,3,11,8,6,10,4,7,2,5]
  78.             for (i=0;i<challOrder.length;i++) {
  79.               if (!player.challenges.includes("challenge"+challOrder[i].toString())) {
  80.                 document.getElementById("challenge"+challOrder[i].toString()).click()
  81.                 i = 100
  82.               }
  83.             }
  84.           }
  85.         }
  86.  
  87.         while (player.options.notation != (player.achievements.includes(allAchievementNums["Spreading Cancer"])?"Scientific":"Emojis")) {
  88.           document.getElementById("notation").click()
  89.         }
  90.  
  91.         if (player.infMult >= 16 && (player.challenges.length == 12)) {
  92.           for (i=1;i<=8;i++) {
  93.             if (document.getElementById("buyerBtn" + i.toString()).textContent.includes("interval")) document.getElementById("buyerBtn" + i.toString()).click()
  94.           }
  95.           ["TickSpeed","DimBoost","Galaxies","Inf"].forEach(function(n) {
  96.             var AB = document.getElementById("buyerBtn" + n)
  97.             if (AB.style.display != "none") AB.click()
  98.           })
  99.         }
  100.  
  101.         if (document.getElementById("buyerBtnInf").style.display == "none" && player.currentChallenge == "" && !player.break) document.getElementById("break").click()
  102.  
  103.         Object.keys(player.options.animations).forEach(function(foo) {
  104.           player.options.animations[foo] = false
  105.         })
  106.  
  107.         var temp = ["eternityconfirm","newsHidden","retryChallenge","sacrificeConfirmation"]
  108.         temp.forEach(function(foo) {
  109.           player.options[foo] = false
  110.         })
  111.  
  112.         var strat = "prebreak"
  113.         var toughChalls = ["challenge6","challenge4","challenge7"]
  114.         if (player.break) strat = "break"
  115.         if (player.currentChallenge == "challenge11") strat = "c11";
  116.         if (player.currentChallenge == "challenge2") strat = "c2";
  117.         if (player.currentChallenge == "challenge5") strat = "c5";
  118.         switch (strat) {
  119.           case "prebreak":
  120.             var doIt = false
  121.             for (i=8;i>=1;i--) {
  122.               name = TIER_NAMES[i]
  123.               var buyGrade = 1 // 0: not buying, 1: buying single, 2: buy 10
  124.               if (player[name + "Bought"] >= 10) buyGrade = 2;
  125.               if (i == 8 && !player.achievements.includes(allAchievementNums["The 9th Dimension is a lie"])) buyGrade = 1;
  126.               if (i == 1 && player.firstAmount.gte(1e150) && !player.achievements.includes(allAchievementNums["There's no point in doing that"])) buyGrade = 1;
  127.               if (i == 8 && player.infinityUpgrades.includes("galaxyBoost") && player.galaxies >= 2 && !player.achievements.includes(allAchievementNums["You didn't need it anyway"])) {
  128.                   if (player.resets > 13) buyGrade = 0
  129.                   else document.getElementById("softReset").click()
  130.               }
  131.               if (player.sacrificed != 0 && calcSacrificeBoost().gte(2)) doIt = true;
  132.               if (calcSacrificeBoost().gte(5)) doIt = true;
  133.               if (player.money.gte(1e300) && !player.achievements.includes(allAchievementNums["The Gods are pleased"])) {
  134.                 buyGrade = 0
  135.                 doIt = true;
  136.               }
  137.               if (player.infinityUpgrades.includes("galaxyBoost") && !player.achievements.includes(allAchievementNums["I don't believe in Gods"]) && player.galaxies == 1) doIt = false
  138.               buyDim(i,buyGrade)
  139.             }
  140.             buyMaxTickSpeed()
  141.             if (!(player.infinityUpgrades.includes("galaxyBoost") && player.galaxies != 0) || toughChalls.includes(player.currentChallenge) || !player.achievements.includes(allAchievementNums["Spreading Cancer"]) || !player.achievements.includes(allAchievementNums["You didn't need it anyway"])) document.getElementById("secondSoftReset").click();
  142.             if (player.resets < (player.currentChallenge == ""?player.infinityUpgrades.includes("skipResetGalaxy")?5:8:10) || !player.infinityUpgrades.includes("galaxyBoost") || toughChalls.includes(player.currentChallenge)) document.getElementById("softReset").click() ;
  143.             if (player.resets >= 5 && doIt) {
  144.               document.getElementById("sacrifice").click()
  145.             }
  146.             break;
  147.           case "c11":
  148.             if (getDimensionFinalMultiplier(8).gte(1e100) && !player.achievements.includes(allAchievementNums["How the antitables have turned"])) {
  149.               if (player.eightAmount == 0) {
  150.                 for (i=1;i<=8;i++) {
  151.                   document.getElementById(TIER_NAMES[i]).click()
  152.                 }
  153.               } else {
  154.                 for (i=2;i<=8;i++) {
  155.                   if (getDimensionFinalMultiplier(i-1).gte(getDimensionFinalMultiplier(i))) {
  156.                     document.getElementById(TIER_NAMES[i] + "Max").click()
  157.                   }
  158.                 }
  159.               }
  160.               break
  161.             } else {
  162.               for (i=8;i>=1;i--) {
  163.                 name = TIER_NAMES[i]
  164.                 var buyGrade = 1 // 0: not buying, 1: buying single, 2: buy 10
  165.                 if (player[name + "Bought"] >= 10) buyGrade = 2;
  166.                 if (i == Math.min(player.resets,4)+4) buyGrade = 1;
  167.                 buyDim(i,buyGrade)
  168.               }
  169.               buyMaxTickSpeed()
  170.               if (player.resets >= 5 && calcSacrificeBoost().gte(3) && getDimensionFinalMultiplier(8).lt(1e100)) {
  171.                 document.getElementById("sacrifice").click()
  172.               } else if (player.resets < 5) {
  173.                 document.getElementById("softReset").click()
  174.               }
  175.             }
  176.             break
  177.           case "c2":
  178.             if (player.secondBought < 10) {
  179.               buyDim(1,1)
  180.               buyDim(2,1)
  181.             } else if (player.money.div(player.tickSpeedCost) >= 1e5) {
  182.               document.getElementById("maxall").click()
  183.             }
  184.             var doIt = false
  185.             if (player.sacrificed != 0 && calcSacrificeBoost().gte(2)) doIt = true;
  186.             if (calcSacrificeBoost().gte(5)) doIt = true;
  187.             if (player.resets < 8) document.getElementById("softReset").click() ;
  188.             if (player.resets >= 5 && doIt) {
  189.               document.getElementById("sacrifice").click()
  190.             }
  191.             if (player.galaxies == 0) document.getElementById("secondSoftReset").click();
  192.             break
  193.           case "c5":
  194.             // TIME TO DIE
  195.             var bought = []
  196.             var buyIt = true
  197.             var growRate = [null,3,4,5,6,8,10,12,15,1]
  198.             for (i=9;i>=1;i--) {
  199.               if (i==9) var name = "tickSpeed";
  200.               else var name = TIER_NAMES[i];
  201.               var nextPrize = player[name+"Cost"].mul(Math.pow(10,growRate[i]))
  202.               for (var i2=9;i2>=1;i2--) {
  203.                 if (i!=i2) {
  204.                   if (i2==9) var name2 = "tickSpeed";
  205.                   else var name2 = TIER_NAMES[i2];
  206.                   var nextPrize2 = player[name2+"Cost"].mul(Math.pow(10,growRate[i2]))
  207.                   if (nextPrize.equals(nextPrize2) || nextPrize.equals(player[name2+"Cost"])) buyIt = false
  208.                 }
  209.               }
  210.               if (i != 9 && player[name + "Bought"] == 0) buyIt = true
  211.               if (i == Math.min(player.resets,4)+4) buyIt = true
  212.               if (buyIt) {
  213.                 if (name == "tickSpeed") document.getElementById("tickSpeed").click();
  214.                 else if (buyDim(i,2)) bought.push(name)
  215.               }
  216.             }
  217.             if (bought.length == 0) {
  218.               for (i=8;i>=1;i--) {
  219.                 if (player[TIER_NAMES[Math.min(player.resets,4)+4]+"Cost"] != player[TIER_NAMES[i]+"Cost"].mul(Math.pow(10,growRate[i])) && buyDim(i,1)) i = 0
  220.               }
  221.             }
  222.             var doIt = false
  223.             if (player.sacrificed != 0 && calcSacrificeBoost().gte(2)) doIt = true;
  224.             if (calcSacrificeBoost().gte(5)) doIt = true;
  225.             if (player.galaxies == 0) document.getElementById("secondSoftReset").click();
  226.             if (player.resets < 12) document.getElementById("softReset").click() ;
  227.             if (player.resets >= 5 && doIt) {
  228.               document.getElementById("sacrifice").click()
  229.             }
  230.             break
  231.           case "break":
  232.             for (i=1;i<=12;i++) {
  233.               document.getElementById(i.toString() + "ison").checked = true
  234.               if (i<9 && document.getElementById("toggleBtn" + i).innerHTML == "Buy singles") document.getElementById("toggleBtn" + i).click()
  235.               if (i==9 && document.getElementById("toggleBtnTickSpeed").innerHTML == "Buy singles") document.getElementById("toggleBtnTickSpeed").click()
  236.             }
  237.             var prios = [null,1,3,3,3,3,3,3,2,2]
  238.             for (i=1;i<=12;i++) {
  239.               var inp = 0
  240.               switch (i) {
  241.                 case 10:
  242.                   inp = 0
  243.                   break
  244.                 case 11:
  245.                   galaxyTarget = Math.max(galaxyTarget,player.galaxies)
  246.                   inp = galaxyTarget
  247.                   break
  248.                 case 12:
  249.                   if (idk) inp = "same"
  250.                   else if (player.thisInfinityTime > 100) {
  251.                     inp = bestip
  252.                     idk = true
  253.                   } else inp = "9e999999"
  254.                   break
  255.                 default:
  256.                   inp = prios[i].toString()
  257.                   break
  258.               }
  259.               if (inp != "same") document.getElementById("priority"+i.toString()).value = inp
  260.             }
  261.             break
  262.         }
  263.       }
  264.     },10)
  265. })();
Add Comment
Please, Sign In to add comment