NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name WFEasyCargo
// @namespace sk.seko
// @description One-click to load predefined cargo
// @include http://*.war-facts.com/cargo_fleet.php*
// @version 1.1
// @grant none
// ==/UserScript==
var CARGO = {
'iron' : 5000,
'copper' : 3000,
'silver' : 3000,
'titanium' : 3000,
'gold' : 1000,
'uranium' : 3000,
'platinum' : 1000,
'diamonds' : 1000,
'oil' : 3000,
'water' : 5000
};
// compute and display targeting score for existing design
window.doLoad = function (num) {
function sumCargo() {
sum = 0
for (i in CARGO)
sum += CARGO[i]
return sum
}
function loadCargo(itemname, colonists = false) {
prefix = colonists ? 'load' : 'lo'
loadradio = document.getElementById(prefix + itemname);
if (loadradio) {
cargo = document.getElementById(itemname);
if (cargo) {
full = parseFloat(loadradio.parentNode.previousSibling.previousSibling.previousSibling.previousSibling.textContent);
if (colonists)
cargo.value = full;
else if (num == 0)
cargo.value = Math.floor(Math.min(full, realtransport * CARGO[itemname] / wholesum))
else
cargo.value = Math.floor(Math.min(num * CARGO[itemname], full / 2));
loadradio.checked = true;
}
}
}
realtransport = parseFloat(document.getElementById('realtransport').value);
wholesum = sumCargo();
loadCargo('colonists', colonists = true);
loadCargo('iron');
loadCargo('copper');
loadCargo('silver');
loadCargo('titanium');
loadCargo('gold');
loadCargo('uranium');
loadCargo('platinum');
loadCargo('diamonds');
loadCargo('oil');
loadCargo('water');
}
// compute and display targeting score for existing design
window.easy_cargo_listener = function () {
var proceed = document.evaluate("//input[@value='Proceed']",
document, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null).iterateNext();
if (proceed) {
vals = {
'Full' : 0,
'One' : 1,
};
for (var i in vals) {
// create button
var btn = document.createElement('input');
btn.setAttribute('type', 'button');
btn.setAttribute('value', 'Load' + i);
btn.setAttribute('id', 'loadcolonizer');
btn.setAttribute('onClick', 'doLoad(' + vals[i] + ')');
proceed.parentNode.insertBefore(btn, proceed);
}
}
}
window.addEventListener("load", easy_cargo_listener, false);