// ==UserScript==
// @name Jz Warlight
// @namespace https://greasyfork.org/en/users/44200-jz
// @version 1.4.0
// @grant none
// @match https://www.warlight.net/*
// @match https://www.warzone.com/*
// @description Warzone/Warlight script that allows note-taking in games. It also includes statistics-like features for Warzone Idle.
// @downloadURL none
// ==/UserScript==
var idleObject = {}
var scannedSpan;
var idleSelected = null;
var idleObjectArchive = null;
var artifact_rarity = "Owned";
// Change the below to true to show some potentially
// confusing and less user-friendly features
var showDevelopmentFeatures = false;
var drafts = [];
main();
function main() {
try{
setupSettings();
//var filter_setting = localStorage.getItem('setting_extra_filters');
//if(pageIsDashboard()) {
// if(filter_setting == 'true') {
// //$("#MyGamesFilter").append('');
// $("#MyGamesFilter").append('');
// $("#MyGamesFilter").append('');
// }
//}
if(pageIsTournaments()) {
var muli_setting = localStorage.getItem('setting_enhance_muli');
if(muli_setting == 'true') {
// Add filters for tournaments, to expand the functionality Muli provided
var filter = $('');
filter.append($(''));
filter.append($(''));
filter.append($(''));
filter.append($(''));
filter.append($(''));
filter.append($(''));
filter.on("change", function () {
var selected = $( this ).val();
var tds = $("td .tournamentData");
for(var i = 0; i < tds.length; i++) {
var td = tds[i];
var parentTr = $(td).parent('tr');
if(selected == "showAll") {
parentTr.show();
} else if(selected == "showGamesLeft") {
if(td.innerHTML.indexOf('Games left: None
') > 0) {
parentTr.hide();
} else {
parentTr.show();
}
} else if(selected == "showInProgress") {
if(td.innerHTML.indexOf('Playing: 0
') > 0) {
parentTr.hide();
} else if(td.innerHTML.indexOf('Playing:') > 0) {
parentTr.show();
} else {
parentTr.hide();
}
} else if(selected == "showNotEliminated") {
// Show round robins, tournaments with games in progress, and tournaments with games left
if(parentTr.html().indexOf('Round robin tournament') >= 0) {
parentTr.show();
} else if(td.innerHTML.indexOf('Playing:') > 0
&& td.innerHTML.indexOf('Playing: 0
') == -1) {
parentTr.show();
} else if(td.innerHTML.indexOf('Games left: None
') == -1) {
parentTr.show();
} else {
parentTr.hide();
}
} else if(selected == "showAlmostDone") {
if(td.innerHTML.indexOf('Almost done') > 0) {
parentTr.show();
} else {
parentTr.hide();
}
} else if(selected == "showCoin") {
if(parentTr.html().indexOf('SmallCoins.png') != -1) {
parentTr.show();
} else {
parentTr.hide();
}
}
}
});
$("#MyTournamentsTable h2").after(filter);
}
}
if(pageIsPastTournaments()) {
if(filter_setting == 'true') {
//$("#Filter").append('');
$("#Filter").append('');
//$("#Filter").append('');
//$("#Filter").append('');
}
}
if(pageIsGame()) {
var note_setting = localStorage.getItem('setting_enable_notes');
if(note_setting == 'true') {
setupNotes();
}
}
// Reimplement Alt tagging
/*// Tag alts (alts retrieved from the library)
for(var main_count = 0; main_count < mains.length; main_count++) {
var main = mains[main_count];
for(var alt_count = 0; alt_count < main.alts.length; alt_count++) {
var alt = main.alts[alt_count];
if(poster_id == alt) {
var username = poster_cell.html();
poster_cell.html(username + " (" + main.name + ")");
}
}
}*/
if(pageIsIdle()) {
var idle_setting = localStorage.getItem('setting_idle_features');
if(idle_setting == 'true') {
setupIdleFeatures();
}
}
} catch(err) {
console.log(err);
}
}
function setupSettings() {
$("#AccountDropDown").parent().find("div .dropdown-divider").before('
Money Category Name | % of All | ' for(idx = 2; idx < moneyhover.length; idx++) { var percentage = Math.round(moneyhover[idx].value/moneyhover[2].value*10000)/100; output += '
---|---|
' + moneyhover[idx].name + ' | ' output += '' + percentage + '% | ' output += '
Army Category Name | % of Earned | % of All | ' for(idx = 2; idx < armyhover.length; idx++) { if(armyhover[idx].name.indexOf("Started") == 0) { break; } var percentage1 = Math.round(armyhover[idx].value/armyhover[2].value*10000)/100; var percentage2 = Math.round(armyhover[idx].value/total2*10000)/100; output += '
---|---|---|
' if(idx > 6) { output += '*' } output += armyhover[idx].name + ' | ' output += '' + percentage1 + '% | ' output += '' + percentage2 + '% | ' output += '
Recipe | ' output += 'Market | ' if(showDevelopmentFeatures) { output += 'Item Ingredient Adjusted | '
}
output += ''
var successful = false;
var best_market_val = 0;
var best_market_name = "";
for(var recipe_idx = 0; recipe_idx < recipes.length; recipe_idx++) {
var recipe = recipes[recipe_idx];
var calcs = getRecipeCalculations(idleObject, recipe);
if(calcs == null) {
continue;
}
if(calcs.m_pps > best_market_val) {
best_market_val = calcs.m_pps;
best_market_name = recipe.name;
}
var found = false;
var row = '|||
---|---|---|---|---|---|
' + recipe.name + ' | ' if(calcs.m_pps == -1) { row += 'N/A | ' } else { row += '' + formatOutputNumber(calcs.m_pps) + ' | ' found = true; } if(showDevelopmentFeatures) { if(calcs.craft_pps && calcs.craft_pps != -1) { row += '' + formatOutputNumber(calcs.craft_pps) + ' | ' found = true; } else if(calcs.craft_desc != null && calcs.craft_desc == "Missing") { row += '??? | ' found = true; } else { row += 'N/A |
Armies/sec | Total Earned | Draft | Drafted | Multiplier | " var start = 0; if(drafts.length > 8) { start = drafts.length - 8; } for(var d_count = start; d_count < drafts.length; d_count++) { output += '
' + formatOutputNumber(drafts[d_count].aps,2)+ ' | ' + formatOutputNumber(drafts[d_count].tot,2) + ' | ' + formatOutputNumber(drafts[d_count].dft,2) + ' | ' + formatOutputNumber(drafts[d_count].dftd,2) + ' | ' + formatOutputNumber(drafts[d_count].dft/drafts[d_count].aps,1) + ' |