Cookie clicker tools (visual)
目前為
// ==UserScript==
// @name Cookie clicker tools
// @namespace orteil.dashnet.org
// @version 1.995
// @description Cookie clicker tools (visual)
// @author Anton
// @match http://orteil.dashnet.org/cookieclicker/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
// ==/UserScript==
(function() {
'use strict';
if (console) console.log('Cookies?');
var getInvertExpence = function($tooltip) {
var price = $tooltip.find('span.price').text();
if (price) {
price = price.replace(',', '');
var priceNum = parseFloat(price);
var mult = 1;
if (price.indexOf('billion') > -1) mult = 1E9;
else if (price.indexOf('million') > -1) mult = 1E6;
var totalPrice = priceNum * mult;
var data = $tooltip.find('div.data b');
var eachIncome = jQuery(data[0]).text().replace(',', '');
var eachIncomeNum = parseFloat(eachIncome);
mult = 1;
if (eachIncome.indexOf('billion') > -1) mult = 1E9;
else if (eachIncome.indexOf('million') > -1) mult = 1E6;
var totalIncome = eachIncomeNum * mult;
var needed = totalPrice > 0 ? totalIncome / totalPrice : 0;
var needInvert = totalIncome > 0 ? totalPrice / totalIncome : 0;
return needInvert;
}
return null;
}
var t = setInterval(function() {
var icons = document.querySelectorAll('.icon:not([id^=product])');
var x = icons && icons.length > 0 ? icons[0].offsetParent : null;
if (x !== null) {
var $tooltip = jQuery(x);
var needInvert = getInvertExpence($tooltip);
if (needInvert !== null) {
var $name = $tooltip.find('div.name span');
if ($name.length === 0) {
$tooltip.find('div.name').append(jQuery('<span />'));
$name = $tooltip.find('div.name span');
}
$name.text(' (' + Beautify(needInvert) + ')');
}
}
}, 100);
var t2 = setInterval(function() {
var minInvert = null, minObj = null;
for (var i in Game.ObjectsById) {
if (typeof i !== 'undefined' && i != 'undefined' && Game.ObjectsById.hasOwnProperty(i)) {
if (Game.ObjectsById[i].locked === 0) {
var interest = Game.ObjectsById[i].price / Game.ObjectsById[i].storedCps;
if (minInvert == null) {
minInvert = interest;
minObj = i;
} else if (interest < minInvert) {
minInvert = interest;
minObj = i;
}
}
}
}
console.log('min', minInvert, 'obj', minObj);
}, 1000);
})();