Advertisement
Guest User

Egg bot

a guest
Apr 1st, 2015
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function () {
  2.     var warnings = [0,0,0,0];
  3.     var lastquaq = [0,0,0,0,0];
  4.     var last = -1;
  5.     var counter = 0;
  6.     var countdown = 0;
  7.     function vote() {
  8.         //get health values of questions, answers, users, quality; -1 means hearts are red
  9.         var quaq = [];
  10.         var names = ['questions', 'answers', 'users', 'quality', 'traffic'];
  11.         names.forEach(function(s) {
  12.             s = $('#egg-stat-' + s);
  13.             if (s.length > 0) {
  14.                 s = parseInt(s.attr('title')[0]);
  15.                 quaq.push(isNaN(s) ? -1 : s);
  16.             }
  17.         });
  18.         var lastwarnings = warnings;
  19.         var ignorelast = false;
  20.         var notfull = 0;
  21.         var decay = 0;
  22.         for(var i = 0; i < Math.max(quaq.length, 4); i++) {
  23.             if(quaq[i] == -1)
  24.                 warnings[i] ++;
  25.             else
  26.                 warnings[i] = 0;
  27.             if(quaq[i] > lastquaq[i])
  28.                 last = i;
  29.             if(quaq[i] < 4 && lastquaq[i] < 4)
  30.                 ignorelast = true;
  31.             if(quaq[i] < lastquaq[i])
  32.                 decay ++;
  33.             if(quaq[i] <= 3)
  34.                 notfull ++;
  35.         }
  36.         var index = -1;
  37.         for(var i = 0; i < Math.max(quaq.length, 4); i++)
  38.             if(warnings[i] >= 3){
  39.                 index = i;
  40.                 break;
  41.             }
  42.         console.log(index);
  43.         if(index == -1)
  44.         for(var i = 0; i < Math.max(quaq.length, 4); i++){
  45.             var j = i >= 2 ? i^1 : i;
  46.             if((quaq[j] >= lastquaq[j] || (notfull >= 2 && notfull == decay))
  47.                 && ((ignorelast && quaq[j] <= 3) || j != last || (j == 3 && quaq.length >= 5 && quaq[4]>=3))
  48.                 && quaq[j] < 4){
  49.                 index = j;
  50.                 break;
  51.             }
  52.         }
  53.         console.log(index);
  54.         if(index == -1)
  55.             if(last == 0)
  56.                 index = 1;
  57.             else
  58.                 index = 0;
  59.         console.log(index);
  60.        
  61.         //determine what button to press
  62.         btn = ['Ask','Answer','Upvote','Downvote'][index];
  63.         console.log(index)
  64.         //click the button selected, or click Continue then Restart if button not found
  65.         var clickPriority = [btn, 'Continue', 'Restart'], b = $('button')
  66.         for(var i = 0; i < clickPriority.length; i++) {
  67.             b.each(function() {
  68.                 var t = $(this)
  69.                 if (i != clickPriority.length && t.text() == clickPriority[i]) {
  70.                     t.click()
  71.                     console.log('Voted for ' + clickPriority[i] + ' at ' + (counter * 20).toString() + ' seconds in.')
  72.                     if(i == 0){
  73.                         last = index;
  74.                         lastquaq = quaq;
  75.                     }
  76.                     else
  77.                         warnings = lastwarnings;
  78.                     i = clickPriority.length
  79.                 }
  80.             })
  81.         }
  82.         console.log(last)
  83.         ++counter
  84.     }
  85.     $("#egg-clock-text").bind("DOMSubtreeModified",function(){
  86.         console.log("Change!");
  87.         var t = parseInt($("#egg-clock-text").text());
  88.         if( t < 17 ){
  89.             if( t > countdown)
  90.                 vote();
  91.             countdown = t;
  92.         }
  93.     });
  94. })()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement