|
!function() { |
|
"use strict"; |
|
|
|
// 設定 |
|
var FPS = 500, // 1秒に何回処理を行うか |
|
DONT_BUY_ELDER = true; // Elder Pledge, Elder Covenantを買わない |
|
|
|
// 汎用関数群 |
|
var each = function(arr, fn) { |
|
for(var i = 0; i < arr.length; i++) { |
|
fn.call(arr[i], arr[i], i); |
|
} |
|
}, |
|
q = function(selector) { |
|
return document.querySelectorAll(selector); |
|
}, |
|
hasClass = function(el, className) { |
|
return el.classList.contains(className); |
|
}, |
|
getOwnedCnt = function(el) { |
|
var cnt = el.childNodes[1].childNodes[2]; |
|
return cnt ? +cnt.textContent : 0; |
|
}, |
|
parseItemId = function(el) { |
|
var onclickStr = el.attributes.getNamedItem("onclick").textContent; |
|
return +onclickStr.match(/\[(\d+)\]/)[1]; |
|
}, |
|
getCookieCnt = function(el) { |
|
return +el.textContent.match(/[\d\,]+/); |
|
}, |
|
enableThenClick = function(el, i) { |
|
var itemId = parseItemId(el); |
|
|
|
// アポカリプスハマり解除 |
|
if(DONT_BUY_ELDER && itemId === 84 || itemId === 74) return; |
|
|
|
if(hasClass(el, 'enabled')) { |
|
el.onclick(); |
|
} |
|
}; |
|
|
|
// oneMind等の購入確認アラートを上書き |
|
window.confirm = function() { return true; }; |
|
|
|
var FILL128 = false, |
|
NEVER_CLICK = true, |
|
BUY_STEPS = [10, 50, 100, 128, Number.MAX_VALUE], // n個ずつアイテムの数を買い揃えてく |
|
cookieCnt = q("#cookies")[0], |
|
cookie = q("#bigCookie")[0], |
|
golden = q("#goldenCookie")[0], |
|
upgrades = q("#upgrades .upgrade"), |
|
products = q("#products .product"), |
|
news = q("#commentsText")[0], |
|
newses = []; |
|
|
|
// クッキー連打, 商品を買う, アップグレードする, ゴールデンを押す |
|
setInterval(function() { |
|
var buyElement, |
|
nextStep = true; |
|
|
|
if(!NEVER_CLICK) cookie.onclick(); // 通常クッキー |
|
if(NEVER_CLICK || getCookieCnt(cookieCnt) > 1000000) NEVER_CLICK = false; |
|
|
|
golden.onclick(); // ゴールデン |
|
|
|
// 128個までは実績に必要、あとはBBAを増やす |
|
if(FILL128) { |
|
buyElement = products[1]; |
|
} else { |
|
each(products, function(el, i) { |
|
var buyCnt = el.childNodes[1].childNodes[2]; |
|
if(hasClass(el, 'enabled') && (!buyCnt || +buyCnt.textContent < BUY_STEPS[0])) { |
|
buyElement = el; |
|
} |
|
nextStep = nextStep && !!buyCnt && +buyCnt.textContent >= BUY_STEPS[0]; |
|
}); |
|
if(nextStep && BUY_STEPS.length > 1) { |
|
BUY_STEPS.shift(); |
|
if(BUY_STEPS.length === 1) FILL128 = true; |
|
} |
|
} |
|
if(buyElement) buyElement.onclick(); |
|
|
|
// 余った金でアップグレード |
|
each(upgrades, enableThenClick); |
|
|
|
// ニュース収集(重複は除外) |
|
var newsTxt = news.textContent; |
|
if(newses.indexOf(newsTxt) < 0) { |
|
console.log(newsTxt); // コンソールにニュースを出力 |
|
newses.push(newsTxt); |
|
} |
|
}, 1000 / FPS); |
|
}(); |