fix the postbuild script

This commit is contained in:
Dawid Wysokiński 2021-10-17 13:02:02 +02:00
parent f09232345b
commit 3d0694b537
Signed by: Kichiyaki
GPG Key ID: EF14026D247EB867
34 changed files with 7440 additions and 6531 deletions

View File

@ -1,27 +1,90 @@
(function () {
const $3af05e958b2a20a26445518aba292c50$export$API_URI = 'https://api.tribalwarshelp.com/graphql';
var $3af05e958b2a20a26445518aba292c50$export$default = function () {
let {query, variables = {}} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return fetch($3af05e958b2a20a26445518aba292c50$export$API_URI, {
function $6a49e4c969cec444$export$2e2bcd8739ae039(obj, key, value) {
if (key in obj) Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
else obj[key] = value;
return obj;
}
function $f1e9793517c51c58$export$2e2bcd8739ae039(target) {
for(var i = 1; i < arguments.length; i++){
var source = arguments[i] != null ? arguments[i] : {
};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
ownKeys.forEach(function(key) {
$6a49e4c969cec444$export$2e2bcd8739ae039(target, key, source[key]);
});
}
return target;
}
function $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = {
};
var sourceKeys = Object.keys(source);
var key, i;
for(i = 0; i < sourceKeys.length; i++){
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function $f26b272b176e5476$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for(i = 0; i < sourceSymbolKeys.length; i++){
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
const $902f167bfdc7b30b$export$fb18762d0c18fa09 = 'https://api.tribalwarshelp.com/graphql';
var $902f167bfdc7b30b$export$2e2bcd8739ae039 = ({ query: query , variables: variables = {
} } = {
})=>{
return fetch($902f167bfdc7b30b$export$fb18762d0c18fa09, {
method: 'POST',
body: JSON.stringify({
query,
variables
query: query,
variables: variables
}),
headers: {
'Content-Type': 'application/json'
}
}).then(res => {
}).then((res)=>{
return res.json();
}).then(_ref => {
let {data, errors} = _ref;
if (errors && Array.isArray(errors) && errors.length > 0) {
throw new Error(errors[0].message);
}
return new Promise(resolve => resolve(data));
}).then(({ data: data , errors: errors })=>{
if (errors && Array.isArray(errors) && errors.length > 0) throw new Error(errors[0].message);
return new Promise((resolve)=>resolve(data)
);
});
};
const $3b197ddc404523dce25bd8470f854619$var$translations = {
};
const $71f792443ec67043$var$translations = {
pl_PL: {
actualCoords: 'Aktualne koordynaty',
searchBonusBarbarianVillages: 'Wyszukaj koczownicze',
@ -46,169 +109,193 @@
action: 'Aktion',
center: 'Center'
}
};
var $3b197ddc404523dce25bd8470f854619$export$default = () => $3b197ddc404523dce25bd8470f854619$var$translations[window.game_data.locale] || $3b197ddc404523dce25bd8470f854619$var$translations.en_DK;
var $075335fbc46b1a64d60d11b353f74662$export$default = () => window.location.host.split('.')[0];
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildTribeURL = id => {
};
var $71f792443ec67043$export$2e2bcd8739ae039 = ()=>$71f792443ec67043$var$translations[window.game_data.locale] || $71f792443ec67043$var$translations.en_DK
;
var $9412d55e353d4b8b$export$2e2bcd8739ae039 = ()=>window.location.host.split('.')[0]
;
const $db1dd60e5389e0c9$export$7345792e21cfc457 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_ally',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildPlayerURL = id => {
};
const $db1dd60e5389e0c9$export$3df7b9b48f38839e = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_player',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageURL = id => {
};
const $db1dd60e5389e0c9$export$e537a41a0fc85cc5 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_village',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageName = function buildVillageName() {
let n = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let x = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
let y = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
};
const $db1dd60e5389e0c9$export$c6f77ec2633c38b1 = (n = '', x = 500, y = 500)=>{
const continent = 'K' + String(y)[0] + String(x)[0];
return ("").concat(n, " (").concat(x, "|").concat(y, ") ").concat(continent);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$calcAttackDuration = (distance, baseSpeed) => {
return `${n} (${x}|${y}) ${continent}`;
};
const $db1dd60e5389e0c9$export$893530ca1c0f63a2 = (distance, baseSpeed)=>{
return Math.round(distance * baseSpeed);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildImgURL = img => {
};
const $db1dd60e5389e0c9$export$8b4b6650247854da = (img)=>{
return image_base + img;
};
const $3d57ea338a09b23ca4b283dff4f79ebd$export$calcDistanceBetweenTwoPoints = (x1, y1, x2, y2) => {
};
const $8f952366ce71d0fe$export$6e378131ceaf17af = (x1, y1, x2, y2)=>{
const a = x1 - x2;
const b = y1 - y2;
return Math.sqrt(a * a + b * b);
};
function $61671ab24a4170eb0a1c7d9e6ffb22e6$var$ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function $61671ab24a4170eb0a1c7d9e6ffb22e6$var$_objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$ownKeys(Object(source), true).forEach(function (key) {
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
};
// ==UserScript==
// @name Bonus barbarian village finder
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @version 0.4.7
// @description Bonus barbarian village finder
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $0e40ff93e5ed20a5$var$SERVER = $9412d55e353d4b8b$export$2e2bcd8739ae039();
const $0e40ff93e5ed20a5$var$QUERY = `
query villages($server: String!, $filter: VillageFilter, $sort: [String!], $offset: Int) {
villages(server: $server, filter: $filter, offset: $offset, sort: $sort) {
total
items {
id
name
bonus
x
y
}
}
return target;
}
function $61671ab24a4170eb0a1c7d9e6ffb22e6$var$_defineProperty(obj, key, value) {
if ((key in obj)) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
// ==UserScript==
// @name Bonus barbarian village finder
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @version 0.4.7
// @description Bonus barbarian village finder
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$SERVER = $075335fbc46b1a64d60d11b353f74662$export$default();
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$QUERY = "\n query villages($server: String!, $filter: VillageFilter, $sort: [String!], $offset: Int) {\n villages(server: $server, filter: $filter, offset: $offset, sort: $sort) {\n total\n items {\n id\n name\n bonus\n x\n y\n }\n }\n }\n";
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$TABLE_ID = 'bonusBarbarianVillageFinderTable';
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$ACTUAL_COORDS_ID = 'actualCoords';
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations = $3b197ddc404523dce25bd8470f854619$export$default();
let $61671ab24a4170eb0a1c7d9e6ffb22e6$var$container = undefined;
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildReqOptions = (bonus, offset) => {
`;
const $0e40ff93e5ed20a5$var$TABLE_ID = 'bonusBarbarianVillageFinderTable';
const $0e40ff93e5ed20a5$var$ACTUAL_COORDS_ID = 'actualCoords';
const $0e40ff93e5ed20a5$var$translations = $71f792443ec67043$export$2e2bcd8739ae039();
let $0e40ff93e5ed20a5$var$container = undefined;
const $0e40ff93e5ed20a5$var$buildReqOptions = (bonus, offset)=>{
return {
query: $61671ab24a4170eb0a1c7d9e6ffb22e6$var$QUERY,
query: $0e40ff93e5ed20a5$var$QUERY,
variables: {
server: $61671ab24a4170eb0a1c7d9e6ffb22e6$var$SERVER,
sort: ['id DESC'],
server: $0e40ff93e5ed20a5$var$SERVER,
sort: [
'id DESC'
],
filter: {
bonus,
playerID: [0]
bonus: bonus,
playerID: [
0
]
},
offset
offset: offset
}
};
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$loadBonusVillages = async bonus => {
const {villages} = await $3af05e958b2a20a26445518aba292c50$export$default($61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildReqOptions(bonus, 0));
for (let i = villages.length; i < villages.total; i += 1000) {
const data = await $3af05e958b2a20a26445518aba292c50$export$default($61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildReqOptions(bonus, 0));
villages.items = [...villages.items, ...data.villages.items];
};
const $0e40ff93e5ed20a5$var$loadBonusVillages = async (bonus)=>{
const { villages: villages } = await $902f167bfdc7b30b$export$2e2bcd8739ae039($0e40ff93e5ed20a5$var$buildReqOptions(bonus, 0));
for(let i = villages.length; i < villages.total; i += 1000){
const data = await $902f167bfdc7b30b$export$2e2bcd8739ae039($0e40ff93e5ed20a5$var$buildReqOptions(bonus, 0));
villages.items = [
...villages.items,
...data.villages.items
];
}
return villages;
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$searchBonusBarbarianVillages = async e => {
};
const $0e40ff93e5ed20a5$var$searchBonusBarbarianVillages = async (e)=>{
e.preventDefault();
const villages = await $61671ab24a4170eb0a1c7d9e6ffb22e6$var$loadBonusVillages(parseInt(e.target[0].value));
const villages = await $0e40ff93e5ed20a5$var$loadBonusVillages(parseInt(e.target[0].value));
const coords = TWMap.pos;
villages.items = villages.items.map(item => {
return $61671ab24a4170eb0a1c7d9e6ffb22e6$var$_objectSpread($61671ab24a4170eb0a1c7d9e6ffb22e6$var$_objectSpread({}, item), {}, {
distance: $3d57ea338a09b23ca4b283dff4f79ebd$export$calcDistanceBetweenTwoPoints(coords[0], coords[1], item.x, item.y)
villages.items = villages.items.map((item)=>{
return $f1e9793517c51c58$export$2e2bcd8739ae039({
}, item, {
distance: $8f952366ce71d0fe$export$6e378131ceaf17af(coords[0], coords[1], item.x, item.y)
});
}).sort((a, b) => a.distance - b.distance);
document.querySelector('#' + $61671ab24a4170eb0a1c7d9e6ffb22e6$var$TABLE_ID).innerHTML = $61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildTableBodyHTML(villages.items);
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$getBonuses = () => {
}).sort((a, b)=>a.distance - b.distance
);
document.querySelector('#' + $0e40ff93e5ed20a5$var$TABLE_ID).innerHTML = $0e40ff93e5ed20a5$var$buildTableBodyHTML(villages.items);
};
const $0e40ff93e5ed20a5$var$getBonuses = ()=>{
let bonuses = [];
for (let i in TWMap.bonus_data) {
bonuses.push({
for(let i in TWMap.bonus_data)bonuses.push({
value: i,
text: TWMap.bonus_data[i].text
});
}
return bonuses;
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildTableBodyHTML = villages => {
return ("\n <tbody>\n <tr>\n <th>\n ").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.village, "\n </th>\n <th>\n ").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.distance, "\n </th>\n <th>\n ").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.action, "\n </th>\n </tr>\n ").concat(Array.isArray(villages) ? villages.map(village => ("<tr>\n <td>\n <a href=\"").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageURL(village.id), "\">\n ").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageName(village.name, village.x, village.y), "\n </a>\n </td>\n <td>\n ").concat(village.distance.toFixed(1), "\n </td>\n <td>\n <a href=\"#\" onclick=\"return TWMap.focusUserSpecified(").concat(village.x, ", ").concat(village.y, ")\">").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.center, "</a>\n </td>\n </tr>")).join('') : '', "\n </tbody>\n ");
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$updateActualCoords = () => {
document.querySelector('#' + $61671ab24a4170eb0a1c7d9e6ffb22e6$var$ACTUAL_COORDS_ID).innerHTML = ("").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.actualCoords, ": <strong>").concat(TWMap.pos.join('|'), "</strong>");
};
const $61671ab24a4170eb0a1c7d9e6ffb22e6$var$renderUI = () => {
const html = ("\n <p id=\"").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$ACTUAL_COORDS_ID, "\"></p>\n <form>\n <select>\n ").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$getBonuses().map(bonus => ("<option value=\"").concat(bonus.value, "\">").concat(bonus.text, "</option>")).join(''), "\n </select>\n <button type=\"submit\">").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$translations.searchBonusBarbarianVillages, "</button>\n </form>\n <table class=\"vis\" style=\"width: 100%;\" id=\"").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$TABLE_ID, "\">\n ").concat($61671ab24a4170eb0a1c7d9e6ffb22e6$var$buildTableBodyHTML(), "\n </table>\n ");
if (!$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container) {
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container = document.createElement('div');
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container.classList.add('containerBorder');
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container.style.clear = 'both';
document.querySelector('#map_big').appendChild($61671ab24a4170eb0a1c7d9e6ffb22e6$var$container);
};
const $0e40ff93e5ed20a5$var$buildTableBodyHTML = (villages)=>{
return `
<tbody>
<tr>
<th>
${$0e40ff93e5ed20a5$var$translations.village}
</th>
<th>
${$0e40ff93e5ed20a5$var$translations.distance}
</th>
<th>
${$0e40ff93e5ed20a5$var$translations.action}
</th>
</tr>
${Array.isArray(villages) ? villages.map((village)=>`<tr>
<td>
<a href="${$db1dd60e5389e0c9$export$e537a41a0fc85cc5(village.id)}">
${$db1dd60e5389e0c9$export$c6f77ec2633c38b1(village.name, village.x, village.y)}
</a>
</td>
<td>
${village.distance.toFixed(1)}
</td>
<td>
<a href="#" onclick="return TWMap.focusUserSpecified(${village.x}, ${village.y})">${$0e40ff93e5ed20a5$var$translations.center}</a>
</td>
</tr>`
).join('') : ''}
</tbody>
`;
};
const $0e40ff93e5ed20a5$var$updateActualCoords = ()=>{
document.querySelector('#' + $0e40ff93e5ed20a5$var$ACTUAL_COORDS_ID).innerHTML = `${$0e40ff93e5ed20a5$var$translations.actualCoords}: <strong>${TWMap.pos.join('|')}</strong>`;
};
const $0e40ff93e5ed20a5$var$renderUI = ()=>{
const html = `
<p id="${$0e40ff93e5ed20a5$var$ACTUAL_COORDS_ID}"></p>
<form>
<select>
${$0e40ff93e5ed20a5$var$getBonuses().map((bonus)=>`<option value="${bonus.value}">${bonus.text}</option>`
).join('')}
</select>
<button type="submit">${$0e40ff93e5ed20a5$var$translations.searchBonusBarbarianVillages}</button>
</form>
<table class="vis" style="width: 100%;" id="${$0e40ff93e5ed20a5$var$TABLE_ID}">
${$0e40ff93e5ed20a5$var$buildTableBodyHTML()}
</table>
`;
if (!$0e40ff93e5ed20a5$var$container) {
$0e40ff93e5ed20a5$var$container = document.createElement('div');
$0e40ff93e5ed20a5$var$container.classList.add('containerBorder');
$0e40ff93e5ed20a5$var$container.style.clear = 'both';
document.querySelector('#map_big').appendChild($0e40ff93e5ed20a5$var$container);
}
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container.innerHTML = html;
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$container.querySelector('form').addEventListener('submit', $61671ab24a4170eb0a1c7d9e6ffb22e6$var$searchBonusBarbarianVillages);
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$updateActualCoords();
setInterval($61671ab24a4170eb0a1c7d9e6ffb22e6$var$updateActualCoords, 1000);
};
(function () {
$61671ab24a4170eb0a1c7d9e6ffb22e6$var$renderUI();
})();
$0e40ff93e5ed20a5$var$container.innerHTML = html;
$0e40ff93e5ed20a5$var$container.querySelector('form').addEventListener('submit', $0e40ff93e5ed20a5$var$searchBonusBarbarianVillages);
$0e40ff93e5ed20a5$var$updateActualCoords();
setInterval($0e40ff93e5ed20a5$var$updateActualCoords, 1000);
};
(function() {
$0e40ff93e5ed20a5$var$renderUI();
})();
})();

View File

@ -1,5 +1,5 @@
(function () {
const $f9de81cfe3f8a296e0e5a7ba4108bc8c$var$translations = {
const $76945efd441c6f3e$var$translations = {
pl_PL: {
rename: 'Zmień',
name: 'Nazwa'
@ -12,53 +12,63 @@
rename: 'Umbenennen',
name: 'Name'
}
};
var $f9de81cfe3f8a296e0e5a7ba4108bc8c$export$default = () => $f9de81cfe3f8a296e0e5a7ba4108bc8c$var$translations[window.game_data.locale] || $f9de81cfe3f8a296e0e5a7ba4108bc8c$var$translations.en_DK;
var $393a22f746cd1f6e45eff96c71b28370$export$default = t => new Promise(resolve => setTimeout(resolve, t));
// ==UserScript==
// @name Command renamer
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @version 0.2.5
// @description Command renamer
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*mode=incomings*
// @grant none
// ==/UserScript==
const $a00f5166aafbcf4ccffe3cfb8f4b9923$var$translations = $f9de81cfe3f8a296e0e5a7ba4108bc8c$export$default();
const $a00f5166aafbcf4ccffe3cfb8f4b9923$var$handleSubmit = async e => {
};
var $76945efd441c6f3e$export$2e2bcd8739ae039 = ()=>$76945efd441c6f3e$var$translations[window.game_data.locale] || $76945efd441c6f3e$var$translations.en_DK
;
var $fc029eaf0e980c2d$export$2e2bcd8739ae039 = (t)=>new Promise((resolve)=>setTimeout(resolve, t)
)
;
// ==UserScript==
// @name Command renamer
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @version 0.2.5
// @description Command renamer
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*mode=incomings*
// @grant none
// ==/UserScript==
const $1e4faa846c4448db$var$translations = $76945efd441c6f3e$export$2e2bcd8739ae039();
const $1e4faa846c4448db$var$handleSubmit = async (e)=>{
e.preventDefault();
const name = e.target[0].value;
if (!name) return;
const checkboxes = document.querySelectorAll('#incomings_table input:checked');
e.target[1].disabled = true;
for (let i = 0; i < checkboxes.length; i++) {
for(let i = 0; i < checkboxes.length; i++){
const checkbox = checkboxes[i];
if (checkbox.id === 'select_all') continue;
const icon = checkbox.parentElement.querySelector('.rename-icon');
icon.click();
await $393a22f746cd1f6e45eff96c71b28370$export$default(20);
await $fc029eaf0e980c2d$export$2e2bcd8739ae039(20);
const quickeditForm = checkbox.parentElement.querySelector('.quickedit-edit');
quickeditForm.querySelector('input').value = name;
quickeditForm.querySelector('input[type="button"]').click();
await $393a22f746cd1f6e45eff96c71b28370$export$default(350);
await $fc029eaf0e980c2d$export$2e2bcd8739ae039(350);
}
e.target[1].disabled = false;
};
const $a00f5166aafbcf4ccffe3cfb8f4b9923$var$renderUI = () => {
const html = ("\n <input type=\"text\" placeholder=\"").concat($a00f5166aafbcf4ccffe3cfb8f4b9923$var$translations.name, "\" />\n <button type=\"submit\">").concat($a00f5166aafbcf4ccffe3cfb8f4b9923$var$translations.rename, "</button>\n ");
};
const $1e4faa846c4448db$var$renderUI = ()=>{
const html = `
<input type="text" placeholder="${$1e4faa846c4448db$var$translations.name}" />
<button type="submit">${$1e4faa846c4448db$var$translations.rename}</button>
`;
const form = document.createElement('form');
form.innerHTML = html;
form.addEventListener('submit', $a00f5166aafbcf4ccffe3cfb8f4b9923$var$handleSubmit);
form.addEventListener('submit', $1e4faa846c4448db$var$handleSubmit);
document.querySelector('#paged_view_content').insertBefore(form, document.querySelector('#incomings_form'));
};
(async function () {
};
(async function() {
try {
$a00f5166aafbcf4ccffe3cfb8f4b9923$var$renderUI();
$1e4faa846c4448db$var$renderUI();
} catch (error) {
console.log('command renamer', error);
}
})();
})();
})();

File diff suppressed because it is too large Load Diff

View File

@ -1,125 +1,116 @@
(function () {
function $76d20ec5245457ba4d0be92324e15d11$export$default(dirtyNumber) {
if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
return NaN;
function $6a49e4c969cec444$export$2e2bcd8739ae039(obj, key, value) {
if (key in obj) Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
else obj[key] = value;
return obj;
}
function $f1e9793517c51c58$export$2e2bcd8739ae039(target) {
for(var i = 1; i < arguments.length; i++){
var source = arguments[i] != null ? arguments[i] : {
};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
ownKeys.forEach(function(key) {
$6a49e4c969cec444$export$2e2bcd8739ae039(target, key, source[key]);
});
}
return target;
}
function $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = {
};
var sourceKeys = Object.keys(source);
var key, i;
for(i = 0; i < sourceKeys.length; i++){
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function $f26b272b176e5476$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for(i = 0; i < sourceSymbolKeys.length; i++){
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
function $70df79293cae00de$export$2e2bcd8739ae039(dirtyNumber) {
if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) return NaN;
var number = Number(dirtyNumber);
if (isNaN(number)) {
return number;
}
if (isNaN(number)) return number;
return number < 0 ? Math.ceil(number) : Math.floor(number);
}
function $5a91e85e34da2364b77064ee2dfe41c1$export$default(required, args) {
if (args.length < required) {
throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');
}
}
/**
* @name toDate
* @category Common Helpers
* @summary Convert the given argument to an instance of Date.
*
* @description
* Convert the given argument to an instance of Date.
*
* If the argument is an instance of Date, the function returns its clone.
*
* If the argument is a number, it is treated as a timestamp.
*
* If the argument is none of the above, the function returns Invalid Date.
*
* **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.
*
* @param {Date|Number} argument - the value to convert
* @returns {Date} the parsed date in the local time zone
* @throws {TypeError} 1 argument required
*
* @example
* // Clone the date:
* const result = toDate(new Date(2014, 1, 11, 11, 30, 30))
* //=> Tue Feb 11 2014 11:30:30
*
* @example
* // Convert the timestamp to date:
* const result = toDate(1392098430000)
* //=> Tue Feb 11 2014 11:30:30
*/
function $4b4a7c205fd87731c6d8e6277d9b5d99$export$default(argument) {
$5a91e85e34da2364b77064ee2dfe41c1$export$default(1, arguments);
var argStr = Object.prototype.toString.call(argument);
// Clone the date
if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {
// Prevent the date to lose the milliseconds when passed to new Date() in IE10
}
function $14473fdd7558f621$export$2e2bcd8739ae039(required, args) {
if (args.length < required) throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');
}
function $cef0ab118a15bdd4$export$2e2bcd8739ae039(argument) {
$14473fdd7558f621$export$2e2bcd8739ae039(1, arguments);
var argStr = Object.prototype.toString.call(argument); // Clone the date
if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') // Prevent the date to lose the milliseconds when passed to new Date() in IE10
return new Date(argument.getTime());
} else if (typeof argument === 'number' || argStr === '[object Number]') {
return new Date(argument);
} else {
else if (typeof argument === 'number' || argStr === '[object Number]') return new Date(argument);
else {
if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {
// eslint-disable-next-line no-console
console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule");
// eslint-disable-next-line no-console
console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"); // eslint-disable-next-line no-console
console.warn(new Error().stack);
}
return new Date(NaN);
}
}
/**
* @name addMilliseconds
* @category Millisecond Helpers
* @summary Add the specified number of milliseconds to the given date.
*
* @description
* Add the specified number of milliseconds to the given date.
*
* ### v2.0.0 breaking changes:
*
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
*
* @param {Date|Number} date - the date to be changed
* @param {Number} amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
* @returns {Date} the new date with the milliseconds added
* @throws {TypeError} 2 arguments required
*
* @example
* // Add 750 milliseconds to 10 July 2014 12:45:30.000:
* const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)
* //=> Thu Jul 10 2014 12:45:30.750
*/
function $11f02e6f39aa1698d361463648fba3d0$export$default(dirtyDate, dirtyAmount) {
$5a91e85e34da2364b77064ee2dfe41c1$export$default(2, arguments);
var timestamp = $4b4a7c205fd87731c6d8e6277d9b5d99$export$default(dirtyDate).getTime();
var amount = $76d20ec5245457ba4d0be92324e15d11$export$default(dirtyAmount);
}
function $b214e0d241adf6d7$export$2e2bcd8739ae039(dirtyDate, dirtyAmount) {
$14473fdd7558f621$export$2e2bcd8739ae039(2, arguments);
var timestamp = $cef0ab118a15bdd4$export$2e2bcd8739ae039(dirtyDate).getTime();
var amount = $70df79293cae00de$export$2e2bcd8739ae039(dirtyAmount);
return new Date(timestamp + amount);
}
var $85f39b52d00a89d06a6562a7df398249$var$MILLISECONDS_IN_MINUTE = 60000;
/**
* @name addMinutes
* @category Minute Helpers
* @summary Add the specified number of minutes to the given date.
*
* @description
* Add the specified number of minutes to the given date.
*
* ### v2.0.0 breaking changes:
*
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
*
* @param {Date|Number} date - the date to be changed
* @param {Number} amount - the amount of minutes to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
* @returns {Date} the new date with the minutes added
* @throws {TypeError} 2 arguments required
*
* @example
* // Add 30 minutes to 10 July 2014 12:00:00:
* const result = addMinutes(new Date(2014, 6, 10, 12, 0), 30)
* //=> Thu Jul 10 2014 12:30:00
*/
function $85f39b52d00a89d06a6562a7df398249$export$default(dirtyDate, dirtyAmount) {
$5a91e85e34da2364b77064ee2dfe41c1$export$default(2, arguments);
var amount = $76d20ec5245457ba4d0be92324e15d11$export$default(dirtyAmount);
return $11f02e6f39aa1698d361463648fba3d0$export$default(dirtyDate, amount * $85f39b52d00a89d06a6562a7df398249$var$MILLISECONDS_IN_MINUTE);
}
const $b77e52fe2469092ef0c13094c9dc19c1$var$translations = {
}
var $76d93d3ec05eed83$var$MILLISECONDS_IN_MINUTE = 60000;
function $76d93d3ec05eed83$export$2e2bcd8739ae039(dirtyDate, dirtyAmount) {
$14473fdd7558f621$export$2e2bcd8739ae039(2, arguments);
var amount = $70df79293cae00de$export$2e2bcd8739ae039(dirtyAmount);
return $b214e0d241adf6d7$export$2e2bcd8739ae039(dirtyDate, amount * $76d93d3ec05eed83$var$MILLISECONDS_IN_MINUTE);
}
const $f2fe9362d0defd49$var$translations = {
pl_PL: {
ennobledAt: 'Podbita o',
never: 'Nigdy',
@ -144,38 +135,43 @@
yes: 'Ja',
no: 'Nein'
}
};
var $b77e52fe2469092ef0c13094c9dc19c1$export$default = () => $b77e52fe2469092ef0c13094c9dc19c1$var$translations[window.game_data.locale] || $b77e52fe2469092ef0c13094c9dc19c1$var$translations.en_DK;
const $3af05e958b2a20a26445518aba292c50$export$API_URI = 'https://api.tribalwarshelp.com/graphql';
var $3af05e958b2a20a26445518aba292c50$export$default = function () {
let {query, variables = {}} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return fetch($3af05e958b2a20a26445518aba292c50$export$API_URI, {
};
var $f2fe9362d0defd49$export$2e2bcd8739ae039 = ()=>$f2fe9362d0defd49$var$translations[window.game_data.locale] || $f2fe9362d0defd49$var$translations.en_DK
;
const $902f167bfdc7b30b$export$fb18762d0c18fa09 = 'https://api.tribalwarshelp.com/graphql';
var $902f167bfdc7b30b$export$2e2bcd8739ae039 = ({ query: query , variables: variables = {
} } = {
})=>{
return fetch($902f167bfdc7b30b$export$fb18762d0c18fa09, {
method: 'POST',
body: JSON.stringify({
query,
variables
query: query,
variables: variables
}),
headers: {
'Content-Type': 'application/json'
}
}).then(res => {
}).then((res)=>{
return res.json();
}).then(_ref => {
let {data, errors} = _ref;
if (errors && Array.isArray(errors) && errors.length > 0) {
throw new Error(errors[0].message);
}
return new Promise(resolve => resolve(data));
}).then(({ data: data , errors: errors })=>{
if (errors && Array.isArray(errors) && errors.length > 0) throw new Error(errors[0].message);
return new Promise((resolve)=>resolve(data)
);
});
};
const $87a1b3fb6327eb299adebba75fcb33c5$export$inTZ = function inTZ() {
let d = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Date();
let tz = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'UTC';
};
const $ca7593443ca49f96$export$17201263355d526a = (d = new Date(), tz = 'UTC')=>{
return new Date(new Date(d).toLocaleString('en-US', {
timeZone: tz
}));
};
const $87a1b3fb6327eb299adebba75fcb33c5$export$formatDate = (date, options) => {
};
const $ca7593443ca49f96$export$6a20e8f386d90a85 = (d = new Date())=>{
return $ca7593443ca49f96$export$17201263355d526a(d);
};
const $ca7593443ca49f96$export$3ae94a2503e890a1 = (date, options)=>{
return new Date(date).toLocaleDateString(undefined, options ? options : {
year: 'numeric',
month: '2-digit',
@ -184,239 +180,216 @@
minute: '2-digit',
second: '2-digit'
});
};
var $075335fbc46b1a64d60d11b353f74662$export$default = () => window.location.host.split('.')[0];
const $3d57ea338a09b23ca4b283dff4f79ebd$export$calcDistanceBetweenTwoPoints = (x1, y1, x2, y2) => {
};
var $9412d55e353d4b8b$export$2e2bcd8739ae039 = ()=>window.location.host.split('.')[0]
;
const $8f952366ce71d0fe$export$6e378131ceaf17af = (x1, y1, x2, y2)=>{
const a = x1 - x2;
const b = y1 - y2;
return Math.sqrt(a * a + b * b);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildTribeURL = id => {
};
const $db1dd60e5389e0c9$export$7345792e21cfc457 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_ally',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildPlayerURL = id => {
};
const $db1dd60e5389e0c9$export$3df7b9b48f38839e = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_player',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageURL = id => {
};
const $db1dd60e5389e0c9$export$e537a41a0fc85cc5 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_village',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageName = function buildVillageName() {
let n = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let x = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
let y = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
};
const $db1dd60e5389e0c9$export$c6f77ec2633c38b1 = (n = '', x = 500, y = 500)=>{
const continent = 'K' + String(y)[0] + String(x)[0];
return ("").concat(n, " (").concat(x, "|").concat(y, ") ").concat(continent);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$calcAttackDuration = (distance, baseSpeed) => {
return `${n} (${x}|${y}) ${continent}`;
};
const $db1dd60e5389e0c9$export$893530ca1c0f63a2 = (distance, baseSpeed)=>{
return Math.round(distance * baseSpeed);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildImgURL = img => {
};
const $db1dd60e5389e0c9$export$8b4b6650247854da = (img)=>{
return image_base + img;
};
var $a2d6afca3e99a4c1d795f97cc5f14c0b$export$default = unit => {
return $6a639e352c067a7850a9fa8cdc59ffca$export$buildImgURL(("unit/unit_").concat(unit, ".png"));
};
const $3d935538f644f492fe681e00121114a4$export$getItem = function getItem(key) {
let d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
};
var $3cc0f054d48dddd4$export$2e2bcd8739ae039 = (unit)=>{
return $db1dd60e5389e0c9$export$8b4b6650247854da(`unit/unit_${unit}.png`);
};
const $362bcac9fa8968ec$export$f92dfeb71e9bb569 = (key, d = {
})=>{
const json = localStorage.getItem(key);
let obj = d;
if (json) {
obj = JSON.parse(json);
}
if (json) obj = JSON.parse(json);
return obj;
};
const $3d935538f644f492fe681e00121114a4$export$setItem = (key, payload) => {
};
const $362bcac9fa8968ec$export$8a8216c44337cd5 = (key, payload)=>{
localStorage.setItem(key, JSON.stringify(payload));
};
/**
* @name differenceInMilliseconds
* @category Millisecond Helpers
* @summary Get the number of milliseconds between the given dates.
*
* @description
* Get the number of milliseconds between the given dates.
*
* ### v2.0.0 breaking changes:
*
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
*
* @param {Date|Number} dateLeft - the later date
* @param {Date|Number} dateRight - the earlier date
* @returns {Number} the number of milliseconds
* @throws {TypeError} 2 arguments required
*
* @example
* // How many milliseconds are between
* // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?
* const result = differenceInMilliseconds(
* new Date(2014, 6, 2, 12, 30, 21, 700),
* new Date(2014, 6, 2, 12, 30, 20, 600)
* )
* //=> 1100
*/
function $987dc0dc027c0d4aafb08ca79b0ecd15$export$default(dirtyDateLeft, dirtyDateRight) {
$5a91e85e34da2364b77064ee2dfe41c1$export$default(2, arguments);
var dateLeft = $4b4a7c205fd87731c6d8e6277d9b5d99$export$default(dirtyDateLeft);
var dateRight = $4b4a7c205fd87731c6d8e6277d9b5d99$export$default(dirtyDateRight);
};
function $0efd46ae48a1111f$export$2e2bcd8739ae039(dirtyDateLeft, dirtyDateRight) {
$14473fdd7558f621$export$2e2bcd8739ae039(2, arguments);
var dateLeft = $cef0ab118a15bdd4$export$2e2bcd8739ae039(dirtyDateLeft);
var dateRight = $cef0ab118a15bdd4$export$2e2bcd8739ae039(dirtyDateRight);
return dateLeft.getTime() - dateRight.getTime();
}
var $8a55ab13e50cc25510a86f88055567af$var$MILLISECONDS_IN_MINUTE = 60000;
/**
* @name differenceInMinutes
* @category Minute Helpers
* @summary Get the number of minutes between the given dates.
*
* @description
* Get the signed number of full (rounded towards 0) minutes between the given dates.
*
* ### v2.0.0 breaking changes:
*
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
*
* @param {Date|Number} dateLeft - the later date
* @param {Date|Number} dateRight - the earlier date
* @returns {Number} the number of minutes
* @throws {TypeError} 2 arguments required
*
* @example
* // How many minutes are between 2 July 2014 12:07:59 and 2 July 2014 12:20:00?
* var result = differenceInMinutes(
* new Date(2014, 6, 2, 12, 20, 0),
* new Date(2014, 6, 2, 12, 7, 59)
* )
* //=> 12
*
* @example
* // How many minutes are from 10:01:59 to 10:00:00
* var result = differenceInMinutes(
* new Date(2000, 0, 1, 10, 0, 0),
* new Date(2000, 0, 1, 10, 1, 59)
* )
* //=> -1
*/
function $8a55ab13e50cc25510a86f88055567af$export$default(dirtyDateLeft, dirtyDateRight) {
$5a91e85e34da2364b77064ee2dfe41c1$export$default(2, arguments);
var diff = $987dc0dc027c0d4aafb08ca79b0ecd15$export$default(dirtyDateLeft, dirtyDateRight) / $8a55ab13e50cc25510a86f88055567af$var$MILLISECONDS_IN_MINUTE;
}
var $d8d089e636d25180$var$MILLISECONDS_IN_MINUTE = 60000;
function $d8d089e636d25180$export$2e2bcd8739ae039(dirtyDateLeft, dirtyDateRight) {
$14473fdd7558f621$export$2e2bcd8739ae039(2, arguments);
var diff = $0efd46ae48a1111f$export$2e2bcd8739ae039(dirtyDateLeft, dirtyDateRight) / $d8d089e636d25180$var$MILLISECONDS_IN_MINUTE;
return diff > 0 ? Math.floor(diff) : Math.ceil(diff);
}
const $497794f7ecdac1fd2ccb9495447c64f0$export$default = (ennobledAt, speed) => {
let loyalty = 25 + Math.abs($8a55ab13e50cc25510a86f88055567af$export$default(ennobledAt, new Date())) * (speed / 60);
if (loyalty > 100) {
loyalty = 100;
}
}
const $8e88e9cb6c51e781$var$calcLoyalty = (ennobledAt, speed)=>{
let loyalty = 25 + Math.abs($d8d089e636d25180$export$2e2bcd8739ae039(ennobledAt, new Date())) * (speed / 60);
if (loyalty > 100) loyalty = 100;
return Math.floor(loyalty);
};
function $dd5d786daadd6a3858722303ff53be21$var$ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function $dd5d786daadd6a3858722303ff53be21$var$_objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
$dd5d786daadd6a3858722303ff53be21$var$ownKeys(Object(source), true).forEach(function (key) {
$dd5d786daadd6a3858722303ff53be21$var$_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
$dd5d786daadd6a3858722303ff53be21$var$ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
};
var $8e88e9cb6c51e781$export$2e2bcd8739ae039 = $8e88e9cb6c51e781$var$calcLoyalty;
// ==UserScript==
// @name Extended map popup
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @version 0.7.0
// @description Extended map popup
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $0037f5ff61114eb0$var$SERVER = $9412d55e353d4b8b$export$2e2bcd8739ae039();
const $0037f5ff61114eb0$var$CURR_SERVER_CONFIG = `
query server($key: String!) {
server(key: $key) {
config {
speed
unitSpeed
snob {
maxDist
}
}
return target;
unitConfig {
spear {
speed
}
function $dd5d786daadd6a3858722303ff53be21$var$_defineProperty(obj, key, value) {
if ((key in obj)) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
sword {
speed
}
return obj;
axe {
speed
}
// ==UserScript==
// @name Extended map popup
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @version 0.7.0
// @description Extended map popup
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $dd5d786daadd6a3858722303ff53be21$var$SERVER = $075335fbc46b1a64d60d11b353f74662$export$default();
const $dd5d786daadd6a3858722303ff53be21$var$CURR_SERVER_CONFIG = "\n query server($key: String!) {\n server(key: $key) {\n config {\n speed\n unitSpeed\n snob {\n maxDist\n }\n }\n unitConfig {\n spear {\n speed\n }\n sword {\n speed\n }\n axe {\n speed\n }\n archer {\n speed\n }\n spy {\n speed\n }\n light {\n speed\n }\n marcher {\n speed\n }\n heavy {\n speed\n }\n ram {\n speed\n }\n catapult {\n speed\n }\n knight {\n speed\n }\n snob {\n speed\n }\n }\n }\n }\n";
const $dd5d786daadd6a3858722303ff53be21$var$LAST_CONQUER_QUERY = "\n query ennoblements($server: String!, $filter: EnnoblementFilter!, $sort: [String!], $limit: Int) {\n ennoblements(server: $server, filter: $filter, sort: $sort, limit: $limit) {\n items {\n ennobledAt\n village {\n id\n }\n }\n }\n }\n";
const $dd5d786daadd6a3858722303ff53be21$var$SERVER_CONFIG_LOCAL_STORAGE_KEY = 'kiszkowaty_extended_map_popup_server_cfg';
const $dd5d786daadd6a3858722303ff53be21$var$translations = $b77e52fe2469092ef0c13094c9dc19c1$export$default();
const $dd5d786daadd6a3858722303ff53be21$var$loadConfigFromLocalStorage = () => {
return $3d935538f644f492fe681e00121114a4$export$getItem($dd5d786daadd6a3858722303ff53be21$var$SERVER_CONFIG_LOCAL_STORAGE_KEY);
};
const $dd5d786daadd6a3858722303ff53be21$var$cacheServerConfig = function cacheServerConfig() {
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
$3d935538f644f492fe681e00121114a4$export$setItem($dd5d786daadd6a3858722303ff53be21$var$SERVER_CONFIG_LOCAL_STORAGE_KEY, data);
};
const $dd5d786daadd6a3858722303ff53be21$var$isConfigExpired = date => {
return Math.abs(date.getTime() - new Date().getTime()) > 1000 * 60 * 60 * 24;
};
const $dd5d786daadd6a3858722303ff53be21$var$loadConfig = async () => {
let data = $dd5d786daadd6a3858722303ff53be21$var$loadConfigFromLocalStorage();
if (!data || !data.server || $dd5d786daadd6a3858722303ff53be21$var$isConfigExpired(new Date(data.loadedAt)) || !data.server.config || !data.server.config.speed || !data.server.config.snob || !data.server.config.snob.maxDist || !data.server.config.unitSpeed || !data.server.unitConfig) {
data = await $3af05e958b2a20a26445518aba292c50$export$default({
query: $dd5d786daadd6a3858722303ff53be21$var$CURR_SERVER_CONFIG,
archer {
speed
}
spy {
speed
}
light {
speed
}
marcher {
speed
}
heavy {
speed
}
ram {
speed
}
catapult {
speed
}
knight {
speed
}
snob {
speed
}
}
}
}
`;
const $0037f5ff61114eb0$var$LAST_CONQUER_QUERY = `
query ennoblements($server: String!, $filter: EnnoblementFilter!, $sort: [String!], $limit: Int) {
ennoblements(server: $server, filter: $filter, sort: $sort, limit: $limit) {
items {
ennobledAt
village {
id
}
}
}
}
`;
const $0037f5ff61114eb0$var$SERVER_CONFIG_LOCAL_STORAGE_KEY = 'kiszkowaty_extended_map_popup_server_cfg';
const $0037f5ff61114eb0$var$translations = $f2fe9362d0defd49$export$2e2bcd8739ae039();
const $0037f5ff61114eb0$var$loadConfigFromLocalStorage = ()=>{
return $362bcac9fa8968ec$export$f92dfeb71e9bb569($0037f5ff61114eb0$var$SERVER_CONFIG_LOCAL_STORAGE_KEY);
};
const $0037f5ff61114eb0$var$cacheServerConfig = (data = {
})=>{
$362bcac9fa8968ec$export$8a8216c44337cd5($0037f5ff61114eb0$var$SERVER_CONFIG_LOCAL_STORAGE_KEY, data);
};
const $0037f5ff61114eb0$var$isConfigExpired = (date)=>{
return Math.abs(date.getTime() - new Date().getTime()) > 86400000;
};
const $0037f5ff61114eb0$var$loadConfig = async ()=>{
let data = $0037f5ff61114eb0$var$loadConfigFromLocalStorage();
if (!data || !data.server || $0037f5ff61114eb0$var$isConfigExpired(new Date(data.loadedAt)) || !data.server.config || !data.server.config.speed || !data.server.config.snob || !data.server.config.snob.maxDist || !data.server.config.unitSpeed || !data.server.unitConfig) {
data = await $902f167bfdc7b30b$export$2e2bcd8739ae039({
query: $0037f5ff61114eb0$var$CURR_SERVER_CONFIG,
variables: {
key: $dd5d786daadd6a3858722303ff53be21$var$SERVER
key: $0037f5ff61114eb0$var$SERVER
}
});
data.loadedAt = new Date();
$dd5d786daadd6a3858722303ff53be21$var$cacheServerConfig(data);
$0037f5ff61114eb0$var$cacheServerConfig(data);
}
return data && data.server && data.server.config ? {
config: data.server.config,
unitConfig: data.server.unitConfig
} : {};
} : {
};
const $dd5d786daadd6a3858722303ff53be21$var$loadVillageData = async function loadVillageData(id) {
let {cacheOnly = false} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
if (!id) {
return;
}
if (cacheOnly || TWMap.popup.extendedMapPopupCache[id]) {
return TWMap.popup.extendedMapPopupCache[id];
}
};
const $0037f5ff61114eb0$var$loadVillageData = async (id, { cacheOnly: cacheOnly = false } = {
})=>{
if (!id) return;
if (cacheOnly || TWMap.popup.extendedMapPopupCache[id]) return TWMap.popup.extendedMapPopupCache[id];
try {
const data = await $3af05e958b2a20a26445518aba292c50$export$default({
query: $dd5d786daadd6a3858722303ff53be21$var$LAST_CONQUER_QUERY,
const data = await $902f167bfdc7b30b$export$2e2bcd8739ae039({
query: $0037f5ff61114eb0$var$LAST_CONQUER_QUERY,
variables: {
server: $dd5d786daadd6a3858722303ff53be21$var$SERVER,
sort: ['ennobledAt DESC'],
server: $0037f5ff61114eb0$var$SERVER,
sort: [
'ennobledAt DESC'
],
filter: {
villageID: [id]
villageID: [
id
]
},
limit: 1
}
@ -426,31 +399,40 @@
} catch (error) {
console.log('loadVillageData', error);
}
};
const $dd5d786daadd6a3858722303ff53be21$var$getAvailableUnits = function getAvailableUnits() {
let unitCfg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
};
const $0037f5ff61114eb0$var$getAvailableUnits = (unitCfg = {
})=>{
const units = [];
for (let unit in unitCfg) {
if (unitCfg[unit].speed !== 0) {
units.push($dd5d786daadd6a3858722303ff53be21$var$_objectSpread($dd5d786daadd6a3858722303ff53be21$var$_objectSpread({}, unitCfg[unit]), {}, {
for(let unit in unitCfg)if (unitCfg[unit].speed !== 0) units.push($f1e9793517c51c58$export$2e2bcd8739ae039({
}, unitCfg[unit], {
name: unit,
img: $a2d6afca3e99a4c1d795f97cc5f14c0b$export$default(unit)
img: $3cc0f054d48dddd4$export$2e2bcd8739ae039(unit)
}));
}
}
return units;
};
const $dd5d786daadd6a3858722303ff53be21$var$getUnitTdBgColor = index => index % 2 === 0 ? '#f8f4e8' : '#ded3b9;';
const $dd5d786daadd6a3858722303ff53be21$var$buildUnitHeader = (unit, index) => {
return ("\n <td style=\"padding: 2px; background-color: ").concat($dd5d786daadd6a3858722303ff53be21$var$getUnitTdBgColor(index), ";\">\n <img\n src=\"").concat(unit.img, "\"\n title=\"").concat(unit.name, "\"\n alt=\"").concat(unit.name, "\"\n />\n </td>\n ");
};
const $dd5d786daadd6a3858722303ff53be21$var$buildUnitArrivalInfo = (t, index) => {
return ("\n <td style=\"padding: 2px; background-color: ").concat($dd5d786daadd6a3858722303ff53be21$var$getUnitTdBgColor(index), ";\">\n ").concat($87a1b3fb6327eb299adebba75fcb33c5$export$formatDate($85f39b52d00a89d06a6562a7df398249$export$default(Timing.getCurrentServerTime(), t)), "\n </td>\n ");
};
const $dd5d786daadd6a3858722303ff53be21$var$renderAdditionalInfo = (id, data, _ref) => {
let {config, unitConfig} = _ref;
};
const $0037f5ff61114eb0$var$getUnitTdBgColor = (index)=>index % 2 === 0 ? '#f8f4e8' : '#ded3b9;'
;
const $0037f5ff61114eb0$var$buildUnitHeader = (unit, index)=>{
return `
<td style="padding: 2px; background-color: ${$0037f5ff61114eb0$var$getUnitTdBgColor(index)};">
<img
src="${unit.img}"
title="${unit.name}"
alt="${unit.name}"
/>
</td>
`;
};
const $0037f5ff61114eb0$var$buildUnitArrivalInfo = (t, index)=>{
return `
<td style="padding: 2px; background-color: ${$0037f5ff61114eb0$var$getUnitTdBgColor(index)};">
${$ca7593443ca49f96$export$3ae94a2503e890a1($76d93d3ec05eed83$export$2e2bcd8739ae039(Timing.getCurrentServerTime(), t))}
</td>
`;
};
const $0037f5ff61114eb0$var$renderAdditionalInfo = (id, data, { config: config , unitConfig: unitConfig })=>{
const coords = TWMap.CoordByXY(TWMap.villageKey[id]);
const distance = $3d57ea338a09b23ca4b283dff4f79ebd$export$calcDistanceBetweenTwoPoints(coords[0], coords[1], window.game_data.village.x, window.game_data.village.y);
const distance = $8f952366ce71d0fe$export$6e378131ceaf17af(coords[0], coords[1], window.game_data.village.x, window.game_data.village.y);
const ennoblement = data && data.ennoblements && data.ennoblements.items && data.ennoblements.items.length > 0 ? data.ennoblements.items[0] : undefined;
const parent = document.querySelector('#map_popup #info_content tbody');
let unitsEl = parent.querySelector('#units');
@ -459,59 +441,95 @@
unitsEl.id = 'units';
parent.appendChild(unitsEl);
}
const units = $dd5d786daadd6a3858722303ff53be21$var$getAvailableUnits(unitConfig);
unitsEl.innerHTML = ("\n <td colspan=\"2\">\n <table style=\"border: 1px solid #ded3b9; max-width: 450px;\"\n width=\"100%\"\n cellpadding=\"0\"\n cellspacing=\"0\">\n <tbody>\n <tr class=\"center\">\n ").concat(units.map($dd5d786daadd6a3858722303ff53be21$var$buildUnitHeader).join(''), "\n </tr>\n <tr class=\"center\">\n ").concat(units.map((unit, index) => {
return $dd5d786daadd6a3858722303ff53be21$var$buildUnitArrivalInfo($6a639e352c067a7850a9fa8cdc59ffca$export$calcAttackDuration(distance, unit.speed), index);
}).join(''), "\n </tr>\n </tbody>\n </table>\n </td>\n ");
const units = $0037f5ff61114eb0$var$getAvailableUnits(unitConfig);
unitsEl.innerHTML = `
<td colspan="2">
<table style="border: 1px solid #ded3b9; max-width: 450px;"
width="100%"
cellpadding="0"
cellspacing="0">
<tbody>
<tr class="center">
${units.map($0037f5ff61114eb0$var$buildUnitHeader).join('')}
</tr>
<tr class="center">
${units.map((unit, index)=>{
return $0037f5ff61114eb0$var$buildUnitArrivalInfo($db1dd60e5389e0c9$export$893530ca1c0f63a2(distance, unit.speed), index);
}).join('')}
</tr>
</tbody>
</table>
</td>
`;
let lastEnnobledAt = parent.querySelector('#lastEnnobledAt');
if (!lastEnnobledAt) {
lastEnnobledAt = document.createElement('tr');
lastEnnobledAt.id = 'lastEnnobledAt';
parent.appendChild(lastEnnobledAt);
}
lastEnnobledAt.innerHTML = ("\n <td>\n ").concat($dd5d786daadd6a3858722303ff53be21$var$translations.ennobledAt, ":\n </td>\n <td>\n ").concat(ennoblement ? $87a1b3fb6327eb299adebba75fcb33c5$export$formatDate(ennoblement.ennobledAt) : $dd5d786daadd6a3858722303ff53be21$var$translations.never, "\n </td>\n ");
lastEnnobledAt.innerHTML = `
<td>
${$0037f5ff61114eb0$var$translations.ennobledAt}:
</td>
<td>
${ennoblement ? $ca7593443ca49f96$export$3ae94a2503e890a1(ennoblement.ennobledAt) : $0037f5ff61114eb0$var$translations.never}
</td>
`;
let loyalty = parent.querySelector('#loyalty');
if (!loyalty) {
loyalty = document.createElement('tr');
loyalty.id = 'loyalty';
parent.appendChild(loyalty);
}
loyalty.innerHTML = ("\n <td>\n ").concat($dd5d786daadd6a3858722303ff53be21$var$translations.possibleLoyalty, ":\n </td>\n <td>\n ").concat(ennoblement ? $497794f7ecdac1fd2ccb9495447c64f0$export$default(new Date(ennoblement.ennobledAt), config.speed) : 100, "\n </td>\n ");
loyalty.innerHTML = `
<td>
${$0037f5ff61114eb0$var$translations.possibleLoyalty}:
</td>
<td>
${ennoblement ? $8e88e9cb6c51e781$export$2e2bcd8739ae039(new Date(ennoblement.ennobledAt), config.speed) : 100}
</td>
`;
let canSendNoble = parent.querySelector('#canSendNoble');
if (!canSendNoble) {
canSendNoble = document.createElement('tr');
canSendNoble.id = 'canSendNoble';
parent.appendChild(canSendNoble);
}
canSendNoble.innerHTML = ("\n <td>\n ").concat($dd5d786daadd6a3858722303ff53be21$var$translations.canSendNoble, ":\n </td>\n <td>\n ").concat(distance < config.snob.maxDist ? $dd5d786daadd6a3858722303ff53be21$var$translations.yes : $dd5d786daadd6a3858722303ff53be21$var$translations.no, "\n </td>\n ");
};
const $dd5d786daadd6a3858722303ff53be21$var$createLoadVillageHandler = cfg => async e => {
canSendNoble.innerHTML = `
<td>
${$0037f5ff61114eb0$var$translations.canSendNoble}:
</td>
<td>
${distance < config.snob.maxDist ? $0037f5ff61114eb0$var$translations.yes : $0037f5ff61114eb0$var$translations.no}
</td>
`;
};
const $0037f5ff61114eb0$var$createLoadVillageHandler = (cfg)=>async (e)=>{
TWMap.popup._loadVillage(e);
const data = await $dd5d786daadd6a3858722303ff53be21$var$loadVillageData(parseInt(e));
if (data) {
$dd5d786daadd6a3858722303ff53be21$var$renderAdditionalInfo(parseInt(e), data, cfg);
const data = await $0037f5ff61114eb0$var$loadVillageData(parseInt(e));
if (data) $0037f5ff61114eb0$var$renderAdditionalInfo(parseInt(e), data, cfg);
}
};
const $dd5d786daadd6a3858722303ff53be21$var$createDisplayForVillageHandler = cfg => async (e, a, t) => {
;
const $0037f5ff61114eb0$var$createDisplayForVillageHandler = (cfg)=>async (e, a, t)=>{
TWMap.popup._displayForVillage(e, a, t);
const data = await $dd5d786daadd6a3858722303ff53be21$var$loadVillageData(parseInt(e.id), {
const data = await $0037f5ff61114eb0$var$loadVillageData(parseInt(e.id), {
cacheOnly: window.game_data.features.Premium.active
});
if (data) {
$dd5d786daadd6a3858722303ff53be21$var$renderAdditionalInfo(parseInt(e.id), data, cfg);
if (data) $0037f5ff61114eb0$var$renderAdditionalInfo(parseInt(e.id), data, cfg);
}
};
(async function () {
;
(async function() {
try {
const configs = await $dd5d786daadd6a3858722303ff53be21$var$loadConfig();
TWMap.popup.extendedMapPopupCache = {};
const configs = await $0037f5ff61114eb0$var$loadConfig();
TWMap.popup.extendedMapPopupCache = {
};
TWMap.popup._loadVillage = TWMap.popup.loadVillage;
TWMap.popup.loadVillage = $dd5d786daadd6a3858722303ff53be21$var$createLoadVillageHandler(configs);
TWMap.popup.loadVillage = $0037f5ff61114eb0$var$createLoadVillageHandler(configs);
TWMap.popup._displayForVillage = TWMap.popup.displayForVillage;
TWMap.popup.displayForVillage = $dd5d786daadd6a3858722303ff53be21$var$createDisplayForVillageHandler(configs);
TWMap.popup.displayForVillage = $0037f5ff61114eb0$var$createDisplayForVillageHandler(configs);
} catch (error) {
console.log('extended map popup', error);
}
})();
})();
})();

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,55 +1,49 @@
(function () {
var $39c4220bac5e8e55ae13cc7489410b3e$export$default = url => parseInt(new URLSearchParams(url).get('id'));
class $eb13db7801b83919c60cd8b3e0a8a6d8$export$default {
constructor() {
let html = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let filters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
this.dom = new DOMParser().parseFromString(html, 'text/html');
this.trs = this.dom.querySelectorAll('#in_a_day_ranking_table tbody tr');
this.filters = filters;
}
var $c1259165cf39ac5b$export$2e2bcd8739ae039 = (url)=>parseInt(new URLSearchParams(url).get('id'))
;
class $417def0de2fa2238$export$2e2bcd8739ae039 {
isValidRow(row) {
if (!row) {
return false;
}
if (this.filters.playerID && row.playerID !== this.filters.playerID) {
return false;
}
if (this.filters.tribes && Array.isArray(this.filters.tribes) && !this.filters.tribes.some(tribe => tribe === row.tribe)) {
return false;
}
if (!row) return false;
if (this.filters.playerID && row.playerID !== this.filters.playerID) return false;
if (this.filters.tribes && Array.isArray(this.filters.tribes) && !this.filters.tribes.some((tribe)=>tribe === row.tribe
)) return false;
return true;
}
parseRow(row) {
if (!row || !row instanceof HTMLTableRowElement) {
return undefined;
}
let obj = {};
if (!row || !row instanceof HTMLTableRowElement) return undefined;
let obj = {
};
obj.rank = parseInt(row.children[0].innerText.trim());
obj.name = row.children[1].innerText.trim();
obj.playerID = $39c4220bac5e8e55ae13cc7489410b3e$export$default(row.children[1].querySelector('a').getAttribute('href'));
obj.playerID = $c1259165cf39ac5b$export$2e2bcd8739ae039(row.children[1].querySelector('a').getAttribute('href'));
obj.tribe = row.children[2].innerText.trim();
obj.tribeID = 0;
if (obj.tribe) {
obj.tribeID = $39c4220bac5e8e55ae13cc7489410b3e$export$default(row.children[2].querySelector('a').getAttribute('href'));
}
if (obj.tribe) obj.tribeID = $c1259165cf39ac5b$export$2e2bcd8739ae039(row.children[2].querySelector('a').getAttribute('href'));
obj.score = parseInt(row.children[3].innerText.trim().replace(/\./g, ''));
obj.date = row.children[4].innerText.trim();
return obj;
}
parse() {
const result = [];
for (let i = 1; i < this.trs.length; i++) {
for(let i = 1; i < this.trs.length; i++){
const row = this.trs[i];
const parsed = this.parseRow(row);
if (this.isValidRow(parsed)) {
result.push(parsed);
}
if (this.isValidRow(parsed)) result.push(parsed);
}
return result;
}
constructor(html = '', filters = {
}){
this.dom = new DOMParser().parseFromString(html, 'text/html');
this.trs = this.dom.querySelectorAll('#in_a_day_ranking_table tbody tr');
this.filters = filters;
}
const $1ff13e3fe910eee13bb8940db87b1675$var$translations = {
}
const $90cf6cc573d95758$var$translations = {
pl_PL: {
addTribe: 'Dodaj plemię',
generate: 'Wygeneruj',
@ -83,89 +77,115 @@
date: 'Datum',
loaded: 'Geladen'
}
};
var $1ff13e3fe910eee13bb8940db87b1675$export$default = () => $1ff13e3fe910eee13bb8940db87b1675$var$translations[window.game_data.locale] || $1ff13e3fe910eee13bb8940db87b1675$var$translations.en_DK;
var $393a22f746cd1f6e45eff96c71b28370$export$default = t => new Promise(resolve => setTimeout(resolve, t));
// ==UserScript==
// @name 'In A Day' tribe ranking generator
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @version 0.2.4
// @description 'In A Day' tribe ranking generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=in_a_day*
// @grant none
// @run-at document-end
// ==/UserScript==
const $cfc814bc73bf1f67f8083cc3d02e6787$var$TRIBE_CONTAINER_ID = 'iad_tribes';
const $cfc814bc73bf1f67f8083cc3d02e6787$var$LIMIT_INPUT_ID = 'iad_limit';
const $cfc814bc73bf1f67f8083cc3d02e6787$var$translations = $1ff13e3fe910eee13bb8940db87b1675$export$default();
const $cfc814bc73bf1f67f8083cc3d02e6787$var$addTribe = () => {
const container = document.querySelector('#' + $cfc814bc73bf1f67f8083cc3d02e6787$var$TRIBE_CONTAINER_ID);
};
var $90cf6cc573d95758$export$2e2bcd8739ae039 = ()=>$90cf6cc573d95758$var$translations[window.game_data.locale] || $90cf6cc573d95758$var$translations.en_DK
;
var $fc029eaf0e980c2d$export$2e2bcd8739ae039 = (t)=>new Promise((resolve)=>setTimeout(resolve, t)
)
;
// ==UserScript==
// @name 'In A Day' tribe ranking generator
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @version 0.2.4
// @description 'In A Day' tribe ranking generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=in_a_day*
// @grant none
// @run-at document-end
// ==/UserScript==
const $17703ec1bda5292c$var$TRIBE_CONTAINER_ID = 'iad_tribes';
const $17703ec1bda5292c$var$LIMIT_INPUT_ID = 'iad_limit';
const $17703ec1bda5292c$var$translations = $90cf6cc573d95758$export$2e2bcd8739ae039();
const $17703ec1bda5292c$var$addTribe = ()=>{
const container = document.querySelector('#' + $17703ec1bda5292c$var$TRIBE_CONTAINER_ID);
const div = document.createElement('div');
div.innerHTML = ("\n <label>").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.tribe, ": </label>\n <input type=\"text\" required />\n <button type=\"button\">").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.delete, "</button>\n ");
div.querySelector('button').addEventListener('click', () => {
if (container.children.length > 1) {
div.remove();
}
div.innerHTML = `
<label>${$17703ec1bda5292c$var$translations.tribe}: </label>
<input type="text" required />
<button type="button">${$17703ec1bda5292c$var$translations.delete}</button>
`;
div.querySelector('button').addEventListener('click', ()=>{
if (container.children.length > 1) div.remove();
});
container.appendChild(div);
};
const $cfc814bc73bf1f67f8083cc3d02e6787$var$handleFormSubmit = async e => {
};
const $17703ec1bda5292c$var$handleFormSubmit = async (e)=>{
e.preventDefault();
const limit = parseInt(document.querySelector('#' + $cfc814bc73bf1f67f8083cc3d02e6787$var$LIMIT_INPUT_ID).value);
const limit = parseInt(document.querySelector('#' + $17703ec1bda5292c$var$LIMIT_INPUT_ID).value);
const tribes = [];
const type = new URLSearchParams(window.location.search).get('type') || 'kill_att';
document.querySelectorAll('#' + $cfc814bc73bf1f67f8083cc3d02e6787$var$TRIBE_CONTAINER_ID + ' input').forEach(el => {
document.querySelectorAll('#' + $17703ec1bda5292c$var$TRIBE_CONTAINER_ID + ' input').forEach((el)=>{
if (el.value) tribes.push(el.value.trim());
});
let players = [];
let page = 0;
while (players.length < limit) {
Dialog.show('iad_loading', ("").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.loaded, ": <strong>").concat(players.length, "/").concat(limit, "</strong>"));
while(players.length < limit){
Dialog.show('iad_loading', `${$17703ec1bda5292c$var$translations.loaded}: <strong>${players.length}/${limit}</strong>`);
try {
const response = await fetch(TribalWars.buildURL('', {
screen: 'ranking',
mode: 'in_a_day',
type,
type: type,
offset: page * 25
}));
const html = await response.text();
const parser = new $eb13db7801b83919c60cd8b3e0a8a6d8$export$default(html, {
tribes
const parser = new $417def0de2fa2238$export$2e2bcd8739ae039(html, {
tribes: tribes
});
if (parser.trs.length !== 26) break;
players = [...players, ...parser.parse()];
players = [
...players,
...parser.parse()
];
page++;
await $393a22f746cd1f6e45eff96c71b28370$export$default(200);
await $fc029eaf0e980c2d$export$2e2bcd8739ae039(200);
} catch (error) {
break;
}
}
if (players.length > limit) {
players = players.slice(0, limit);
}
Dialog.show('iad_result', ("\n <textarea cols=30 rows=8 readonly>[table]\n[**][||]").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.player, "[||]").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.tribe, "[||]").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.rank, "[||]").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.score, "[||]").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.date, "[/**]\n").concat(players.map((player, index) => {
return ("[*]").concat(index + 1, ".[|][player]").concat(player.name, "[/player][|][ally]").concat(player.tribe, "[/ally][|]").concat(player.rank, "[|]").concat(player.score.toLocaleString(), "[|]").concat(player.date);
}).join('\n'), "\n[/table]</textarea>\n "));
};
const $cfc814bc73bf1f67f8083cc3d02e6787$var$renderUI = () => {
if (players.length > limit) players = players.slice(0, limit);
Dialog.show('iad_result', `
<textarea cols=30 rows=8 readonly>[table]
[**][||]${$17703ec1bda5292c$var$translations.player}[||]${$17703ec1bda5292c$var$translations.tribe}[||]${$17703ec1bda5292c$var$translations.rank}[||]${$17703ec1bda5292c$var$translations.score}[||]${$17703ec1bda5292c$var$translations.date}[/**]
${players.map((player, index)=>{
return `[*]${index + 1}.[|][player]${player.name}[/player][|][ally]${player.tribe}[/ally][|]${player.rank}[|]${player.score.toLocaleString()}[|]${player.date}`;
}).join('\n')}
[/table]</textarea>
`);
};
const $17703ec1bda5292c$var$renderUI = ()=>{
const addButtonID = 'iad_add';
const div = document.createElement('div');
const html = ("\n <form>\n <div id=\"").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$TRIBE_CONTAINER_ID, "\">\n </div>\n <div>\n <label>Limit: </label>\n <input id=\"").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$LIMIT_INPUT_ID, "\" type=\"number\" min=\"1\" value=\"10\" required />\n </div>\n <button type=\"submit\">").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.generate, "</button>\n <button id=\"").concat(addButtonID, "\" type=\"button\">").concat($cfc814bc73bf1f67f8083cc3d02e6787$var$translations.addTribe, "</button>\n </form>\n ");
const html = `
<form>
<div id="${$17703ec1bda5292c$var$TRIBE_CONTAINER_ID}">
</div>
<div>
<label>Limit: </label>
<input id="${$17703ec1bda5292c$var$LIMIT_INPUT_ID}" type="number" min="1" value="10" required />
</div>
<button type="submit">${$17703ec1bda5292c$var$translations.generate}</button>
<button id="${addButtonID}" type="button">${$17703ec1bda5292c$var$translations.addTribe}</button>
</form>
`;
div.innerHTML = html;
document.querySelector('#content_value > table > tbody > tr > td:nth-child(2)').prepend(div);
div.querySelector('form').addEventListener('submit', $cfc814bc73bf1f67f8083cc3d02e6787$var$handleFormSubmit);
div.querySelector('#' + addButtonID).addEventListener('click', $cfc814bc73bf1f67f8083cc3d02e6787$var$addTribe);
$cfc814bc73bf1f67f8083cc3d02e6787$var$addTribe();
};
(function () {
div.querySelector('form').addEventListener('submit', $17703ec1bda5292c$var$handleFormSubmit);
div.querySelector('#' + addButtonID).addEventListener('click', $17703ec1bda5292c$var$addTribe);
$17703ec1bda5292c$var$addTribe();
};
(function() {
try {
$cfc814bc73bf1f67f8083cc3d02e6787$var$renderUI();
$17703ec1bda5292c$var$renderUI();
} catch (error) {
console.log("'In A Day' Tribe Ranking Generator", error);
console.log(`'In A Day' Tribe Ranking Generator`, error);
}
})();
})();
})();

View File

@ -1,45 +1,115 @@
(function () {
const $3af05e958b2a20a26445518aba292c50$export$API_URI = 'https://api.tribalwarshelp.com/graphql';
var $3af05e958b2a20a26445518aba292c50$export$default = function () {
let {query, variables = {}} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return fetch($3af05e958b2a20a26445518aba292c50$export$API_URI, {
function $6a49e4c969cec444$export$2e2bcd8739ae039(obj, key, value) {
if (key in obj) Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
else obj[key] = value;
return obj;
}
function $f1e9793517c51c58$export$2e2bcd8739ae039(target) {
for(var i = 1; i < arguments.length; i++){
var source = arguments[i] != null ? arguments[i] : {
};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
ownKeys.forEach(function(key) {
$6a49e4c969cec444$export$2e2bcd8739ae039(target, key, source[key]);
});
}
return target;
}
function $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = {
};
var sourceKeys = Object.keys(source);
var key, i;
for(i = 0; i < sourceKeys.length; i++){
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function $f26b272b176e5476$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for(i = 0; i < sourceSymbolKeys.length; i++){
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
const $902f167bfdc7b30b$export$fb18762d0c18fa09 = 'https://api.tribalwarshelp.com/graphql';
var $902f167bfdc7b30b$export$2e2bcd8739ae039 = ({ query: query , variables: variables = {
} } = {
})=>{
return fetch($902f167bfdc7b30b$export$fb18762d0c18fa09, {
method: 'POST',
body: JSON.stringify({
query,
variables
query: query,
variables: variables
}),
headers: {
'Content-Type': 'application/json'
}
}).then(res => {
}).then((res)=>{
return res.json();
}).then(_ref => {
let {data, errors} = _ref;
if (errors && Array.isArray(errors) && errors.length > 0) {
throw new Error(errors[0].message);
}
return new Promise(resolve => resolve(data));
}).then(({ data: data , errors: errors })=>{
if (errors && Array.isArray(errors) && errors.length > 0) throw new Error(errors[0].message);
return new Promise((resolve)=>resolve(data)
);
});
};
const $6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR = '.popup_box';
const $6412e4d8722bc72f55b3c382206290ed$export$default = function showPopup() {
let {html, id, title} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
Dialog.show(id, ("<h3>").concat(title, "</h3>") + html);
const popup = document.querySelector($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR);
};
const $20636c16dad2c11a$export$21d4bed11ae27f0b = '.popup_box';
const $20636c16dad2c11a$var$showPopup = ({ html: html , id: id , title: title } = {
})=>{
Dialog.show(id, `<h3>${title}</h3>` + html);
const popup = document.querySelector($20636c16dad2c11a$export$21d4bed11ae27f0b);
if (popup) {
popup.style.width = 'auto';
popup.style.maxWidth = '1000px';
}
};
var $075335fbc46b1a64d60d11b353f74662$export$default = () => window.location.host.split('.')[0];
const $87a1b3fb6327eb299adebba75fcb33c5$export$inTZ = function inTZ() {
let d = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Date();
let tz = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'UTC';
};
var $20636c16dad2c11a$export$2e2bcd8739ae039 = $20636c16dad2c11a$var$showPopup;
var $9412d55e353d4b8b$export$2e2bcd8739ae039 = ()=>window.location.host.split('.')[0]
;
const $ca7593443ca49f96$export$17201263355d526a = (d = new Date(), tz = 'UTC')=>{
return new Date(new Date(d).toLocaleString('en-US', {
timeZone: tz
}));
};
const $87a1b3fb6327eb299adebba75fcb33c5$export$formatDate = (date, options) => {
};
const $ca7593443ca49f96$export$6a20e8f386d90a85 = (d = new Date())=>{
return $ca7593443ca49f96$export$17201263355d526a(d);
};
const $ca7593443ca49f96$export$3ae94a2503e890a1 = (date, options)=>{
return new Date(date).toLocaleDateString(undefined, options ? options : {
year: 'numeric',
month: '2-digit',
@ -48,86 +118,74 @@
minute: '2-digit',
second: '2-digit'
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildTribeURL = id => {
};
const $db1dd60e5389e0c9$export$7345792e21cfc457 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_ally',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildPlayerURL = id => {
};
const $db1dd60e5389e0c9$export$3df7b9b48f38839e = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_player',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageURL = id => {
};
const $db1dd60e5389e0c9$export$e537a41a0fc85cc5 = (id)=>{
return window.location.origin + TribalWars.buildURL('', {
screen: 'info_village',
id
id: id
});
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageName = function buildVillageName() {
let n = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let x = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 500;
let y = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 500;
};
const $db1dd60e5389e0c9$export$c6f77ec2633c38b1 = (n = '', x = 500, y = 500)=>{
const continent = 'K' + String(y)[0] + String(x)[0];
return ("").concat(n, " (").concat(x, "|").concat(y, ") ").concat(continent);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$calcAttackDuration = (distance, baseSpeed) => {
return `${n} (${x}|${y}) ${continent}`;
};
const $db1dd60e5389e0c9$export$893530ca1c0f63a2 = (distance, baseSpeed)=>{
return Math.round(distance * baseSpeed);
};
const $6a639e352c067a7850a9fa8cdc59ffca$export$buildImgURL = img => {
};
const $db1dd60e5389e0c9$export$8b4b6650247854da = (img)=>{
return image_base + img;
};
const $3d935538f644f492fe681e00121114a4$export$getItem = function getItem(key) {
let d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
};
const $362bcac9fa8968ec$export$f92dfeb71e9bb569 = (key, d = {
})=>{
const json = localStorage.getItem(key);
let obj = d;
if (json) {
obj = JSON.parse(json);
}
if (json) obj = JSON.parse(json);
return obj;
};
const $3d935538f644f492fe681e00121114a4$export$setItem = (key, payload) => {
};
const $362bcac9fa8968ec$export$8a8216c44337cd5 = (key, payload)=>{
localStorage.setItem(key, JSON.stringify(payload));
};
const $d147509fefd1cb8b3b83e8f38f763543$export$BASE_URL = 'tribalwarshelp.com';
const $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage = function buildURLToServerPage() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
return ("https://").concat(version, ".").concat($d147509fefd1cb8b3b83e8f38f763543$export$BASE_URL, "/server/").concat(server);
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile = function buildURLToProfile() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
let entity = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
return ("").concat($d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage(version, server), "/").concat(entity, "/").concat(id);
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildPlayerURL = function buildPlayerURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'player');
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildTribeURL = function buildTribeURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'tribe');
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildVillageURL = function buildVillageURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'village');
};
var $1f14636dcc53402ba1b7661b758ca0aa$export$default = function () {
let server = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
return server.substr(0, 2);
};
const $99c8891cf568d26204a670851b79ae0c$var$translations = {
};
const $f3b273bd698d94bc$export$ca6dda5263526f75 = 'tribalwarshelp.com';
const $f3b273bd698d94bc$export$5d5850cc00079a21 = (version = '', server = '')=>{
return `https://${version}.${$f3b273bd698d94bc$export$ca6dda5263526f75}/server/${server}`;
};
const $f3b273bd698d94bc$export$a4588dcb88e3f9db = (version = '', server = '', id = 0, entity = '')=>{
return `${$f3b273bd698d94bc$export$5d5850cc00079a21(version, server)}/${entity}/${id}`;
};
const $f3b273bd698d94bc$export$3df7b9b48f38839e = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'player');
};
const $f3b273bd698d94bc$export$7345792e21cfc457 = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'tribe');
};
const $f3b273bd698d94bc$export$e537a41a0fc85cc5 = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'village');
};
var $5b3edb3901c8177a$export$2e2bcd8739ae039 = (server = '')=>server.substr(0, 2)
;
const $aa32efa5012345c3$var$translations = {
pl_PL: {
showLatestEnnoblements: 'Pokaż najnowsze przejęcia',
village: 'Wioska',
@ -152,7 +210,7 @@
date: 'Date',
apply: 'Apply',
ennoblements: 'Ennoblements',
devNote: "Information from the author - I've just launched a new stat tracking website, don't forget to check it out :)."
devNote: `Information from the author - I've just launched a new stat tracking website, don't forget to check it out :).`
},
de_DE: {
showLatestEnnoblements: 'Zeige letzten Adelungen',
@ -165,200 +223,215 @@
date: 'Datum',
apply: 'Anwenden',
ennoblements: 'Adelungen',
devNote: "Information vom Entwickler - Ich habe eine neue Statistik-Website gestartet, vergiss nicht diese zu testen :)."
devNote: `Information vom Entwickler - Ich habe eine neue Statistik-Website gestartet, vergiss nicht diese zu testen :).`
}
};
var $99c8891cf568d26204a670851b79ae0c$export$default = () => $99c8891cf568d26204a670851b79ae0c$var$translations[window.game_data.locale] || $99c8891cf568d26204a670851b79ae0c$var$translations.en_DK;
function $4b608a4f8bc414684a9ca9d86149295e$var$ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function $4b608a4f8bc414684a9ca9d86149295e$var$_objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
$4b608a4f8bc414684a9ca9d86149295e$var$ownKeys(Object(source), true).forEach(function (key) {
$4b608a4f8bc414684a9ca9d86149295e$var$_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
$4b608a4f8bc414684a9ca9d86149295e$var$ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
};
var $aa32efa5012345c3$export$2e2bcd8739ae039 = ()=>$aa32efa5012345c3$var$translations[window.game_data.locale] || $aa32efa5012345c3$var$translations.en_DK
;
// ==UserScript==
// @name The latest ennoblements
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @version 1.1.2
// @description Shows the latest ennoblements
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*
// @grant none
// @run-at document-end
// ==/UserScript==
const $bb01b23dae8f6ba6$var$SERVER = $9412d55e353d4b8b$export$2e2bcd8739ae039();
const $bb01b23dae8f6ba6$var$FILTER_FORM_ID = 'le_form';
const $bb01b23dae8f6ba6$var$TABLE_ID = 'le_table';
const $bb01b23dae8f6ba6$var$CACHE_LOCAL_STORAGE_KEY = 'kiszkowaty_show_latest_ennoblements_cache';
const $bb01b23dae8f6ba6$var$FILTERS_LOCAL_STORAGE_KEY = 'kiszkowaty_show_latest_ennoblements_filter';
const $bb01b23dae8f6ba6$var$ICON_URL = 'https://i.imgur.com/4WP4098.png';
const $bb01b23dae8f6ba6$var$query = `
query ennoblements($server: String!, $sort: [String!], $limit: Int) {
ennoblements(server: $server, sort: $sort, limit: $limit) {
items {
newOwner {
id
name
tribe {
id
name
tag
}
}
return target;
oldOwner {
id
name
tribe {
id
name
tag
}
function $4b608a4f8bc414684a9ca9d86149295e$var$_defineProperty(obj, key, value) {
if ((key in obj)) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
ennobledAt
village {
id
name
x
y
}
// ==UserScript==
// @name The latest ennoblements
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @version 1.1.2
// @description Shows the latest ennoblements
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*
// @grant none
// @run-at document-end
// ==/UserScript==
const $4b608a4f8bc414684a9ca9d86149295e$var$SERVER = $075335fbc46b1a64d60d11b353f74662$export$default();
const $4b608a4f8bc414684a9ca9d86149295e$var$FILTER_FORM_ID = 'le_form';
const $4b608a4f8bc414684a9ca9d86149295e$var$TABLE_ID = 'le_table';
const $4b608a4f8bc414684a9ca9d86149295e$var$CACHE_LOCAL_STORAGE_KEY = 'kiszkowaty_show_latest_ennoblements_cache';
const $4b608a4f8bc414684a9ca9d86149295e$var$FILTERS_LOCAL_STORAGE_KEY = 'kiszkowaty_show_latest_ennoblements_filter';
const $4b608a4f8bc414684a9ca9d86149295e$var$ICON_URL = 'https://i.imgur.com/4WP4098.png';
const $4b608a4f8bc414684a9ca9d86149295e$var$query = "\n query ennoblements($server: String!, $sort: [String!], $limit: Int) {\n ennoblements(server: $server, sort: $sort, limit: $limit) {\n items {\n newOwner {\n id\n name\n tribe {\n id\n name\n tag\n }\n }\n oldOwner {\n id\n name\n tribe {\n id\n name\n tag\n }\n }\n ennobledAt\n village {\n id\n name\n x\n y\n }\n }\n }\n }\n ";
const $4b608a4f8bc414684a9ca9d86149295e$var$DEFAULT_FILTER = {
}
}
}
`;
const $bb01b23dae8f6ba6$var$DEFAULT_FILTER = {
newOwner: '',
newOwnerTribe: '',
oldOwner: '',
oldOwnerTribe: ''
};
const $4b608a4f8bc414684a9ca9d86149295e$var$translations = $99c8891cf568d26204a670851b79ae0c$export$default();
const $4b608a4f8bc414684a9ca9d86149295e$var$loadLatestEnnoblementsFromCache = () => {
return $3d935538f644f492fe681e00121114a4$export$getItem($4b608a4f8bc414684a9ca9d86149295e$var$CACHE_LOCAL_STORAGE_KEY);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$loadFilters = () => {
return $3d935538f644f492fe681e00121114a4$export$getItem($4b608a4f8bc414684a9ca9d86149295e$var$FILTERS_LOCAL_STORAGE_KEY);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$cacheEnnoblements = function cacheEnnoblements() {
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
$3d935538f644f492fe681e00121114a4$export$setItem($4b608a4f8bc414684a9ca9d86149295e$var$CACHE_LOCAL_STORAGE_KEY, data);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$cacheFilters = function cacheFilters() {
let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
$3d935538f644f492fe681e00121114a4$export$setItem($4b608a4f8bc414684a9ca9d86149295e$var$FILTERS_LOCAL_STORAGE_KEY, data);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$loadLatestEnnoblements = () => {
return $3af05e958b2a20a26445518aba292c50$export$default({
query: $4b608a4f8bc414684a9ca9d86149295e$var$query,
};
const $bb01b23dae8f6ba6$var$translations = $aa32efa5012345c3$export$2e2bcd8739ae039();
const $bb01b23dae8f6ba6$var$loadLatestEnnoblementsFromCache = ()=>{
return $362bcac9fa8968ec$export$f92dfeb71e9bb569($bb01b23dae8f6ba6$var$CACHE_LOCAL_STORAGE_KEY);
};
const $bb01b23dae8f6ba6$var$loadFilters = ()=>{
return $362bcac9fa8968ec$export$f92dfeb71e9bb569($bb01b23dae8f6ba6$var$FILTERS_LOCAL_STORAGE_KEY);
};
const $bb01b23dae8f6ba6$var$cacheEnnoblements = (data = {
})=>{
$362bcac9fa8968ec$export$8a8216c44337cd5($bb01b23dae8f6ba6$var$CACHE_LOCAL_STORAGE_KEY, data);
};
const $bb01b23dae8f6ba6$var$cacheFilters = (data = {
})=>{
$362bcac9fa8968ec$export$8a8216c44337cd5($bb01b23dae8f6ba6$var$FILTERS_LOCAL_STORAGE_KEY, data);
};
const $bb01b23dae8f6ba6$var$loadLatestEnnoblements = ()=>{
return $902f167bfdc7b30b$export$2e2bcd8739ae039({
query: $bb01b23dae8f6ba6$var$query,
variables: {
server: $4b608a4f8bc414684a9ca9d86149295e$var$SERVER,
server: $bb01b23dae8f6ba6$var$SERVER,
limit: 50,
sort: ['ennobledAt DESC']
sort: [
'ennobledAt DESC'
]
}
}).then(data => {
$4b608a4f8bc414684a9ca9d86149295e$var$cacheEnnoblements(data);
return new Promise(resolve => resolve(data));
}).then((data)=>{
$bb01b23dae8f6ba6$var$cacheEnnoblements(data);
return new Promise((resolve)=>resolve(data)
);
});
};
const $4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayer = (obj, searchValue) => {
};
const $bb01b23dae8f6ba6$var$isValidPlayer = (obj, searchValue)=>{
return obj && obj.name.toLowerCase().includes(searchValue.toLowerCase());
};
const $4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayerTribe = (obj, searchValue) => {
};
const $bb01b23dae8f6ba6$var$isValidPlayerTribe = (obj, searchValue)=>{
return obj && obj.tribe && (obj.tribe.name.toLowerCase().includes(searchValue.toLowerCase()) || obj.tribe.tag.toLowerCase().includes(searchValue.toLowerCase()));
};
const $4b608a4f8bc414684a9ca9d86149295e$var$filterEnnoblements = function filterEnnoblements() {
let ennoblements = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
let {newOwner, newOwnerTribe, oldOwner, oldOwnerTribe} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return ennoblements.filter(ennoblement => {
if (newOwner && !$4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayer(ennoblement.newOwner, newOwner)) {
return false;
}
if (newOwnerTribe && !$4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayerTribe(ennoblement.newOwner, newOwnerTribe)) {
return false;
}
if (oldOwner && !$4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayer(ennoblement.oldOwner, oldOwner)) {
return false;
}
if (oldOwnerTribe && !$4b608a4f8bc414684a9ca9d86149295e$var$isValidPlayerTribe(ennoblement.oldOwner, oldOwnerTribe)) {
return false;
}
};
const $bb01b23dae8f6ba6$var$filterEnnoblements = (ennoblements = [], { newOwner: newOwner , newOwnerTribe: newOwnerTribe , oldOwner: oldOwner , oldOwnerTribe: oldOwnerTribe } = {
})=>{
return ennoblements.filter((ennoblement)=>{
if (newOwner && !$bb01b23dae8f6ba6$var$isValidPlayer(ennoblement.newOwner, newOwner)) return false;
if (newOwnerTribe && !$bb01b23dae8f6ba6$var$isValidPlayerTribe(ennoblement.newOwner, newOwnerTribe)) return false;
if (oldOwner && !$bb01b23dae8f6ba6$var$isValidPlayer(ennoblement.oldOwner, oldOwner)) return false;
if (oldOwnerTribe && !$bb01b23dae8f6ba6$var$isValidPlayerTribe(ennoblement.oldOwner, oldOwnerTribe)) return false;
return true;
});
};
const $4b608a4f8bc414684a9ca9d86149295e$var$applyFilters = (e, ennoblements) => {
};
const $bb01b23dae8f6ba6$var$applyFilters = (e, ennoblements)=>{
e.preventDefault();
const filters = $4b608a4f8bc414684a9ca9d86149295e$var$_objectSpread($4b608a4f8bc414684a9ca9d86149295e$var$_objectSpread({}, $4b608a4f8bc414684a9ca9d86149295e$var$DEFAULT_FILTER), {}, {
const filters = $f1e9793517c51c58$export$2e2bcd8739ae039({
}, $bb01b23dae8f6ba6$var$DEFAULT_FILTER, {
newOwner: e.target[0].value,
newOwnerTribe: e.target[1].value,
oldOwner: e.target[2].value,
oldOwnerTribe: e.target[3].value
});
document.querySelector(("#").concat($4b608a4f8bc414684a9ca9d86149295e$var$TABLE_ID, " tbody")).innerHTML = $4b608a4f8bc414684a9ca9d86149295e$var$buildEnnoblementsRows($4b608a4f8bc414684a9ca9d86149295e$var$filterEnnoblements(ennoblements, filters)).join('');
$4b608a4f8bc414684a9ca9d86149295e$var$cacheFilters(filters);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$addEventListeners = function addEventListeners() {
let ennoblements = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
document.querySelector('#' + $4b608a4f8bc414684a9ca9d86149295e$var$FILTER_FORM_ID).addEventListener('submit', e => {
$4b608a4f8bc414684a9ca9d86149295e$var$applyFilters(e, ennoblements);
document.querySelector(`#${$bb01b23dae8f6ba6$var$TABLE_ID} tbody`).innerHTML = $bb01b23dae8f6ba6$var$buildEnnoblementsRows($bb01b23dae8f6ba6$var$filterEnnoblements(ennoblements, filters)).join('');
$bb01b23dae8f6ba6$var$cacheFilters(filters);
};
const $bb01b23dae8f6ba6$var$addEventListeners = (ennoblements = [])=>{
document.querySelector('#' + $bb01b23dae8f6ba6$var$FILTER_FORM_ID).addEventListener('submit', (e)=>{
$bb01b23dae8f6ba6$var$applyFilters(e, ennoblements);
});
};
const $4b608a4f8bc414684a9ca9d86149295e$var$getPlayerHTML = player => {
return player && player.name ? ("<a href=\"").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildPlayerURL(player.id), "\">").concat(player.name, "</a> (").concat(player.tribe && player.tribe.tag ? ("<a href=\"").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildTribeURL(player.tribe.id), "\">").concat(player.tribe.tag, "</a>") : '-', ")") : '-';
};
const $4b608a4f8bc414684a9ca9d86149295e$var$getVillageHTML = village => {
return ("<a href=\"").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageURL(village.id), "\">").concat($6a639e352c067a7850a9fa8cdc59ffca$export$buildVillageName(village.name, village.x, village.y), "</a>");
};
const $4b608a4f8bc414684a9ca9d86149295e$var$buildEnnoblementsRows = ennoblements => {
return ennoblements.map(ennoblement => {
return ("<tr>\n <td>").concat($4b608a4f8bc414684a9ca9d86149295e$var$getVillageHTML(ennoblement.village), "</td>\n <td>").concat($4b608a4f8bc414684a9ca9d86149295e$var$getPlayerHTML(ennoblement.newOwner), "</td>\n <td>").concat($4b608a4f8bc414684a9ca9d86149295e$var$getPlayerHTML(ennoblement.oldOwner), "</td>\n <td>").concat($87a1b3fb6327eb299adebba75fcb33c5$export$formatDate(ennoblement.ennobledAt), "</td>\n </tr>");
};
const $bb01b23dae8f6ba6$var$getPlayerHTML = (player)=>{
return player && player.name ? `<a href="${$db1dd60e5389e0c9$export$3df7b9b48f38839e(player.id)}">${player.name}</a> (${player.tribe && player.tribe.tag ? `<a href="${$db1dd60e5389e0c9$export$7345792e21cfc457(player.tribe.id)}">${player.tribe.tag}</a>` : '-'})` : '-';
};
const $bb01b23dae8f6ba6$var$getVillageHTML = (village)=>{
return `<a href="${$db1dd60e5389e0c9$export$e537a41a0fc85cc5(village.id)}">${$db1dd60e5389e0c9$export$c6f77ec2633c38b1(village.name, village.x, village.y)}</a>`;
};
const $bb01b23dae8f6ba6$var$buildEnnoblementsRows = (ennoblements)=>{
return ennoblements.map((ennoblement)=>{
return `<tr>
<td>${$bb01b23dae8f6ba6$var$getVillageHTML(ennoblement.village)}</td>
<td>${$bb01b23dae8f6ba6$var$getPlayerHTML(ennoblement.newOwner)}</td>
<td>${$bb01b23dae8f6ba6$var$getPlayerHTML(ennoblement.oldOwner)}</td>
<td>${$ca7593443ca49f96$export$3ae94a2503e890a1(ennoblement.ennobledAt)}</td>
</tr>`;
});
};
const $4b608a4f8bc414684a9ca9d86149295e$var$renderLatestEnnoblements = function renderLatestEnnoblements() {
let ennoblements = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
let filters = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
const prepared = $4b608a4f8bc414684a9ca9d86149295e$var$_objectSpread($4b608a4f8bc414684a9ca9d86149295e$var$_objectSpread({}, $4b608a4f8bc414684a9ca9d86149295e$var$DEFAULT_FILTER), filters);
const html = ("\n <form style=\"margin-bottom: 15px\" id=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$FILTER_FORM_ID, "\">\n <h1 style=\"margin-bottom: 0px; text-align: center;\"><a href=\"").concat($d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage($1f14636dcc53402ba1b7661b758ca0aa$export$default($4b608a4f8bc414684a9ca9d86149295e$var$SERVER), $4b608a4f8bc414684a9ca9d86149295e$var$SERVER), "\">TWHelp</a></h1>\n <h3 style=\"margin-bottom: 10px; margin-top: 0;\">").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.devNote, "</h3>\n <h3 style=\"margin-bottom: 5px\">").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.filters, "</h3>\n <input type=\"text\" placeholder=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.newOwner, "\" value=\"").concat(prepared.newOwner, "\" />\n <input type=\"text\" placeholder=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.newOwnerTribe, "\" value=\"").concat(prepared.newOwnerTribe, "\" />\n <input type=\"text\" placeholder=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.oldOwner, "\" value=\"").concat(prepared.oldOwner, "\" />\n <input type=\"text\" placeholder=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.oldOwnerTribe, "\" value=\"").concat(prepared.oldOwnerTribe, "\" />\n <div>\n <button type=\"submit\">").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.apply, "</button>\n </div>\n </form>\n <table class=\"vis\" id=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$TABLE_ID, "\" style=\"width: 100%\">\n <thead>\n <tr>\n <th>").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.village, "</th>\n <th>").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.newOwner, "</th>\n <th>").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.oldOwner, "</th>\n <th>").concat($4b608a4f8bc414684a9ca9d86149295e$var$translations.date, "</th>\n </tr>\n </thead>\n <tbody>\n ").concat($4b608a4f8bc414684a9ca9d86149295e$var$buildEnnoblementsRows($4b608a4f8bc414684a9ca9d86149295e$var$filterEnnoblements(ennoblements, prepared)).join(''), "\n </tbody>\n </table>\n ");
$6412e4d8722bc72f55b3c382206290ed$export$default({
title: $4b608a4f8bc414684a9ca9d86149295e$var$translations.ennoblements,
};
const $bb01b23dae8f6ba6$var$renderLatestEnnoblements = (ennoblements = [], filters = {
})=>{
const prepared = $f1e9793517c51c58$export$2e2bcd8739ae039({
}, $bb01b23dae8f6ba6$var$DEFAULT_FILTER, filters);
const html = `
<form style="margin-bottom: 15px" id="${$bb01b23dae8f6ba6$var$FILTER_FORM_ID}">
<h1 style="margin-bottom: 0px; text-align: center;"><a href="${$f3b273bd698d94bc$export$5d5850cc00079a21($5b3edb3901c8177a$export$2e2bcd8739ae039($bb01b23dae8f6ba6$var$SERVER), $bb01b23dae8f6ba6$var$SERVER)}">TWHelp</a></h1>
<h3 style="margin-bottom: 10px; margin-top: 0;">${$bb01b23dae8f6ba6$var$translations.devNote}</h3>
<h3 style="margin-bottom: 5px">${$bb01b23dae8f6ba6$var$translations.filters}</h3>
<input type="text" placeholder="${$bb01b23dae8f6ba6$var$translations.newOwner}" value="${prepared.newOwner}" />
<input type="text" placeholder="${$bb01b23dae8f6ba6$var$translations.newOwnerTribe}" value="${prepared.newOwnerTribe}" />
<input type="text" placeholder="${$bb01b23dae8f6ba6$var$translations.oldOwner}" value="${prepared.oldOwner}" />
<input type="text" placeholder="${$bb01b23dae8f6ba6$var$translations.oldOwnerTribe}" value="${prepared.oldOwnerTribe}" />
<div>
<button type="submit">${$bb01b23dae8f6ba6$var$translations.apply}</button>
</div>
</form>
<table class="vis" id="${$bb01b23dae8f6ba6$var$TABLE_ID}" style="width: 100%">
<thead>
<tr>
<th>${$bb01b23dae8f6ba6$var$translations.village}</th>
<th>${$bb01b23dae8f6ba6$var$translations.newOwner}</th>
<th>${$bb01b23dae8f6ba6$var$translations.oldOwner}</th>
<th>${$bb01b23dae8f6ba6$var$translations.date}</th>
</tr>
</thead>
<tbody>
${$bb01b23dae8f6ba6$var$buildEnnoblementsRows($bb01b23dae8f6ba6$var$filterEnnoblements(ennoblements, prepared)).join('')}
</tbody>
</table>
`;
$20636c16dad2c11a$export$2e2bcd8739ae039({
title: $bb01b23dae8f6ba6$var$translations.ennoblements,
id: 'ennoblements',
html
html: html
});
$4b608a4f8bc414684a9ca9d86149295e$var$addEventListeners(ennoblements);
};
const $4b608a4f8bc414684a9ca9d86149295e$var$handleButtonClick = async () => {
$bb01b23dae8f6ba6$var$addEventListeners(ennoblements);
};
const $bb01b23dae8f6ba6$var$handleButtonClick = async ()=>{
try {
const cache = $4b608a4f8bc414684a9ca9d86149295e$var$loadLatestEnnoblementsFromCache();
const filters = $4b608a4f8bc414684a9ca9d86149295e$var$loadFilters();
if (cache.ennoblements && Array.isArray(cache.ennoblements.items) && cache.ennoblements.items.length > 0) {
$4b608a4f8bc414684a9ca9d86149295e$var$renderLatestEnnoblements(cache.ennoblements.items, filters);
}
const {ennoblements} = await $4b608a4f8bc414684a9ca9d86149295e$var$loadLatestEnnoblements();
$4b608a4f8bc414684a9ca9d86149295e$var$renderLatestEnnoblements(ennoblements.items, filters);
const cache = $bb01b23dae8f6ba6$var$loadLatestEnnoblementsFromCache();
const filters = $bb01b23dae8f6ba6$var$loadFilters();
if (cache.ennoblements && Array.isArray(cache.ennoblements.items) && cache.ennoblements.items.length > 0) $bb01b23dae8f6ba6$var$renderLatestEnnoblements(cache.ennoblements.items, filters);
const { ennoblements: ennoblements } = await $bb01b23dae8f6ba6$var$loadLatestEnnoblements();
$bb01b23dae8f6ba6$var$renderLatestEnnoblements(ennoblements.items, filters);
} catch (error) {
console.log('latestEnnoblements', error);
}
};
const $4b608a4f8bc414684a9ca9d86149295e$var$renderButton = () => {
};
const $bb01b23dae8f6ba6$var$renderButton = ()=>{
const container = document.createElement('div');
container.style.position = 'fixed';
container.style.top = '5px';
container.style.left = '4px';
container.style.zIndex = '50000';
const button = document.createElement('a');
button.innerHTML = ("<img src=\"").concat($4b608a4f8bc414684a9ca9d86149295e$var$ICON_URL, "\">");
button.title = $4b608a4f8bc414684a9ca9d86149295e$var$translations.showLatestEnnoblements;
button.innerHTML = `<img src="${$bb01b23dae8f6ba6$var$ICON_URL}">`;
button.title = $bb01b23dae8f6ba6$var$translations.showLatestEnnoblements;
button.style.cursor = 'pointer';
button.addEventListener('click', $4b608a4f8bc414684a9ca9d86149295e$var$handleButtonClick);
button.addEventListener('click', $bb01b23dae8f6ba6$var$handleButtonClick);
container.append(button);
document.body.appendChild(container);
};
(function () {
$4b608a4f8bc414684a9ca9d86149295e$var$renderButton();
})();
};
(function() {
$bb01b23dae8f6ba6$var$renderButton();
})();
})();

View File

@ -1,5 +1,67 @@
(function () {
const $c0d320b9a99b0a41aa9ca0954410051e$var$translations = {
function $6a49e4c969cec444$export$2e2bcd8739ae039(obj, key, value) {
if (key in obj) Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
else obj[key] = value;
return obj;
}
function $f1e9793517c51c58$export$2e2bcd8739ae039(target) {
for(var i = 1; i < arguments.length; i++){
var source = arguments[i] != null ? arguments[i] : {
};
var ownKeys = Object.keys(source);
if (typeof Object.getOwnPropertySymbols === 'function') ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
}));
ownKeys.forEach(function(key) {
$6a49e4c969cec444$export$2e2bcd8739ae039(target, key, source[key]);
});
}
return target;
}
function $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = {
};
var sourceKeys = Object.keys(source);
var key, i;
for(i = 0; i < sourceKeys.length; i++){
key = sourceKeys[i];
if (excluded.indexOf(key) >= 0) continue;
target[key] = source[key];
}
return target;
}
function $f26b272b176e5476$export$2e2bcd8739ae039(source, excluded) {
if (source == null) return {
};
var target = $b1520df0e3a4699c$export$2e2bcd8739ae039(source, excluded);
var key, i;
if (Object.getOwnPropertySymbols) {
var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
for(i = 0; i < sourceSymbolKeys.length; i++){
key = sourceSymbolKeys[i];
if (excluded.indexOf(key) >= 0) continue;
if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
target[key] = source[key];
}
}
return target;
}
const $79a03938b25da972$var$translations = {
pl_PL: {
startCoordsPicker: 'Uruchom zbieracza koordynat',
stopCoordsPicker: 'Zatrzymaj zbieracza koordynat',
@ -36,80 +98,40 @@
groupName: 'Gruppen-Name',
export: 'Exportieren'
}
};
var $c0d320b9a99b0a41aa9ca0954410051e$export$default = () => $c0d320b9a99b0a41aa9ca0954410051e$var$translations[window.game_data.locale] || $c0d320b9a99b0a41aa9ca0954410051e$var$translations.en_DK;
const $3d935538f644f492fe681e00121114a4$export$getItem = function getItem(key) {
let d = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
};
var $79a03938b25da972$export$2e2bcd8739ae039 = ()=>$79a03938b25da972$var$translations[window.game_data.locale] || $79a03938b25da972$var$translations.en_DK
;
const $362bcac9fa8968ec$export$f92dfeb71e9bb569 = (key, d = {
})=>{
const json = localStorage.getItem(key);
let obj = d;
if (json) {
obj = JSON.parse(json);
}
if (json) obj = JSON.parse(json);
return obj;
};
const $3d935538f644f492fe681e00121114a4$export$setItem = (key, payload) => {
};
const $362bcac9fa8968ec$export$8a8216c44337cd5 = (key, payload)=>{
localStorage.setItem(key, JSON.stringify(payload));
};
function $bfe8b11df18d9acc480580699499dd1a$var$ownKeys(object, enumerableOnly) {
var keys = Object.keys(object);
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object);
if (enumerableOnly) {
symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
});
}
keys.push.apply(keys, symbols);
}
return keys;
}
function $bfe8b11df18d9acc480580699499dd1a$var$_objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i] != null ? arguments[i] : {};
if (i % 2) {
$bfe8b11df18d9acc480580699499dd1a$var$ownKeys(Object(source), true).forEach(function (key) {
$bfe8b11df18d9acc480580699499dd1a$var$_defineProperty(target, key, source[key]);
});
} else if (Object.getOwnPropertyDescriptors) {
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
} else {
$bfe8b11df18d9acc480580699499dd1a$var$ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
});
}
}
return target;
}
function $bfe8b11df18d9acc480580699499dd1a$var$_defineProperty(obj, key, value) {
if ((key in obj)) {
Object.defineProperty(obj, key, {
value: value,
enumerable: true,
configurable: true,
writable: true
});
} else {
obj[key] = value;
}
return obj;
}
// ==UserScript==
// @name Map coords picker
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @version 0.7.8
// @description Map coords picker
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $bfe8b11df18d9acc480580699499dd1a$var$LOCAL_STORAGE_KEY = 'kichiyaki_map_coords_picker';
const $bfe8b11df18d9acc480580699499dd1a$var$container = document.querySelector('#content_value > h2');
let $bfe8b11df18d9acc480580699499dd1a$var$button;
let $bfe8b11df18d9acc480580699499dd1a$var$formsContainer;
let $bfe8b11df18d9acc480580699499dd1a$var$actionsContainer;
let $bfe8b11df18d9acc480580699499dd1a$var$config = $3d935538f644f492fe681e00121114a4$export$getItem($bfe8b11df18d9acc480580699499dd1a$var$LOCAL_STORAGE_KEY, {
};
// ==UserScript==
// @name Map coords picker
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @version 0.7.8
// @description Map coords picker
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*
// @grant none
// ==/UserScript==
const $5889b22941d0d214$var$LOCAL_STORAGE_KEY = 'kichiyaki_map_coords_picker';
const $5889b22941d0d214$var$container = document.querySelector('#content_value > h2');
let $5889b22941d0d214$var$button;
let $5889b22941d0d214$var$formsContainer;
let $5889b22941d0d214$var$actionsContainer;
let $5889b22941d0d214$var$config = $362bcac9fa8968ec$export$f92dfeb71e9bb569($5889b22941d0d214$var$LOCAL_STORAGE_KEY, {
started: false,
groups: {
All: {
@ -118,191 +140,179 @@
}
},
selectedGroup: 'All'
});
let $bfe8b11df18d9acc480580699499dd1a$var$intervalID;
const $bfe8b11df18d9acc480580699499dd1a$var$translations = $c0d320b9a99b0a41aa9ca0954410051e$export$default();
const $bfe8b11df18d9acc480580699499dd1a$var$saveConfig = () => {
$3d935538f644f492fe681e00121114a4$export$setItem($bfe8b11df18d9acc480580699499dd1a$var$LOCAL_STORAGE_KEY, $bfe8b11df18d9acc480580699499dd1a$var$config);
};
const $bfe8b11df18d9acc480580699499dd1a$var$getVillageIDByCoords = (x, y) => {
const xy = parseInt(("").concat(x).concat(y), 10);
});
let $5889b22941d0d214$var$intervalID;
const $5889b22941d0d214$var$translations = $79a03938b25da972$export$2e2bcd8739ae039();
const $5889b22941d0d214$var$saveConfig = ()=>{
$362bcac9fa8968ec$export$8a8216c44337cd5($5889b22941d0d214$var$LOCAL_STORAGE_KEY, $5889b22941d0d214$var$config);
};
const $5889b22941d0d214$var$getVillageIDByCoords = (x, y)=>{
const xy = parseInt(`${x}${y}`, 10);
const village = TWMap.villages[xy];
if (!village) {
return NaN;
}
if (!village) return NaN;
return village.id;
};
const $bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillage = function addBorderToVillage(x, y) {
let color = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'transparent';
const village = document.querySelector('#map_village_' + $bfe8b11df18d9acc480580699499dd1a$var$getVillageIDByCoords(x, y));
};
const $5889b22941d0d214$var$addBorderToVillage = (x, y, color = 'transparent')=>{
const village = document.querySelector('#map_village_' + $5889b22941d0d214$var$getVillageIDByCoords(x, y));
if (village) {
village.style.boxSizing = 'border-box';
village.style.border = color !== 'transparent' ? ("5px solid ").concat(color) : 'none';
village.style.border = color !== 'transparent' ? `5px solid ${color}` : 'none';
}
};
const $bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillagesInGroup = function addBorderToVillagesInGroup(name) {
let color = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].villages.forEach(village => {
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillage(village.x, village.y, color ? color : $bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].color);
};
const $5889b22941d0d214$var$addBorderToVillagesInGroup = (name, color = '')=>{
$5889b22941d0d214$var$config.groups[name].villages.forEach((village)=>{
$5889b22941d0d214$var$addBorderToVillage(village.x, village.y, color ? color : $5889b22941d0d214$var$config.groups[name].color);
});
};
const $bfe8b11df18d9acc480580699499dd1a$var$addBorderToSelectedVillages = function addBorderToSelectedVillages() {
let color = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
for (let name in $bfe8b11df18d9acc480580699499dd1a$var$config.groups) {
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillagesInGroup(name, color);
};
const $5889b22941d0d214$var$addBorderToSelectedVillages = (color = '')=>{
for(let name in $5889b22941d0d214$var$config.groups)$5889b22941d0d214$var$addBorderToVillagesInGroup(name, color);
};
const $5889b22941d0d214$var$deleteVillageFromOtherGroups = (key)=>{
for(let name in $5889b22941d0d214$var$config.groups){
if (name === $5889b22941d0d214$var$config.selectedGroup) return;
$5889b22941d0d214$var$config.groups[name].villages = $5889b22941d0d214$var$config.groups[name].villages.filter((village)=>village.key !== key
);
}
};
const $bfe8b11df18d9acc480580699499dd1a$var$deleteVillageFromOtherGroups = key => {
for (let name in $bfe8b11df18d9acc480580699499dd1a$var$config.groups) {
if (name === $bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup) return;
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].villages = $bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].villages.filter(village => village.key !== key);
}
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleMapClick = (x, y, e) => {
};
const $5889b22941d0d214$var$handleMapClick = (x, y, e)=>{
e.preventDefault();
if (isNaN($bfe8b11df18d9acc480580699499dd1a$var$getVillageIDByCoords(x, y))) {
if (isNaN($5889b22941d0d214$var$getVillageIDByCoords(x, y))) return;
const key = `${x}|${y}`;
if ($5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].villages.some((village)=>village.key === key
)) {
$5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].villages = $5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].villages.filter((village)=>village.key !== key
);
$5889b22941d0d214$var$addBorderToVillage(x, y, 'transparent');
return;
}
const key = ("").concat(x, "|").concat(y);
if ($bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].villages.some(village => village.key === key)) {
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].villages = $bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].villages.filter(village => village.key !== key);
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillage(x, y, 'transparent');
return;
}
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].villages = [...$bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].villages, {
x,
y,
key
}];
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillage(x, y, $bfe8b11df18d9acc480580699499dd1a$var$config.groups[$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup].color);
$bfe8b11df18d9acc480580699499dd1a$var$deleteVillageFromOtherGroups(key);
};
const $bfe8b11df18d9acc480580699499dd1a$var$renderForm = (container, group) => {
const selected = group && group.name !== $bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup;
const html = ("\n <input type=\"color\" value=\"").concat(group ? group.color : '', "\" required />\n <input type=\"text\" required placeholder=\"").concat($bfe8b11df18d9acc480580699499dd1a$var$translations.groupName, "\" value=\"").concat(group ? group.name : '', "\" />\n <button type=\"submit\">").concat(group ? $bfe8b11df18d9acc480580699499dd1a$var$translations.save : $bfe8b11df18d9acc480580699499dd1a$var$translations.add, "</button>\n ").concat(group ? ("<button type=\"button\">").concat($bfe8b11df18d9acc480580699499dd1a$var$translations.delete, "</button>") : '', "\n ").concat(selected ? ("<button class=\"selectButton\" type=\"button\">").concat($bfe8b11df18d9acc480580699499dd1a$var$translations.select, "</button>") : '', "\n ");
$5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].villages = [
...$5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].villages,
{
x: x,
y: y,
key: key
},
];
$5889b22941d0d214$var$addBorderToVillage(x, y, $5889b22941d0d214$var$config.groups[$5889b22941d0d214$var$config.selectedGroup].color);
$5889b22941d0d214$var$deleteVillageFromOtherGroups(key);
};
const $5889b22941d0d214$var$renderForm = (container, group)=>{
const selected = group && group.name !== $5889b22941d0d214$var$config.selectedGroup;
const html = `
<input type="color" value="${group ? group.color : ''}" required />
<input type="text" required placeholder="${$5889b22941d0d214$var$translations.groupName}" value="${group ? group.name : ''}" />
<button type="submit">${group ? $5889b22941d0d214$var$translations.save : $5889b22941d0d214$var$translations.add}</button>
${group ? `<button type="button">${$5889b22941d0d214$var$translations.delete}</button>` : ''}
${selected ? `<button class="selectButton" type="button">${$5889b22941d0d214$var$translations.select}</button>` : ''}
`;
const form = document.createElement('form');
form.innerHTML = html;
form.addEventListener('submit', e => {
form.addEventListener('submit', (e)=>{
e.preventDefault();
if (group) {
if (group.name === $bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup) $bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup = e.target[1].value;
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillagesInGroup(group.name, e.target[0].value);
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[e.target[1].value] = $bfe8b11df18d9acc480580699499dd1a$var$_objectSpread($bfe8b11df18d9acc480580699499dd1a$var$_objectSpread({}, $bfe8b11df18d9acc480580699499dd1a$var$config.groups[group.name]), {}, {
if (group.name === $5889b22941d0d214$var$config.selectedGroup) $5889b22941d0d214$var$config.selectedGroup = e.target[1].value;
$5889b22941d0d214$var$addBorderToVillagesInGroup(group.name, e.target[0].value);
$5889b22941d0d214$var$config.groups[e.target[1].value] = $f1e9793517c51c58$export$2e2bcd8739ae039({
}, $5889b22941d0d214$var$config.groups[group.name], {
color: e.target[0].value
});
if (group.name !== e.target[1].value) delete $bfe8b11df18d9acc480580699499dd1a$var$config.groups[group.name];
} else {
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[e.target[1].value] = {
if (group.name !== e.target[1].value) delete $5889b22941d0d214$var$config.groups[group.name];
} else $5889b22941d0d214$var$config.groups[e.target[1].value] = {
color: e.target[0].value,
villages: []
};
}
$bfe8b11df18d9acc480580699499dd1a$var$renderGroups();
$5889b22941d0d214$var$renderGroups();
});
if (group) {
form.querySelector('button[type="button"]').addEventListener('click', () => {
if ($bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup === group.name) {
return UI.ErrorMessage($bfe8b11df18d9acc480580699499dd1a$var$translations.cannotDeleteSelectedGroup);
}
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToVillagesInGroup(group.name, 'transparent');
delete $bfe8b11df18d9acc480580699499dd1a$var$config.groups[group.name];
form.querySelector('button[type="button"]').addEventListener('click', ()=>{
if ($5889b22941d0d214$var$config.selectedGroup === group.name) return UI.ErrorMessage($5889b22941d0d214$var$translations.cannotDeleteSelectedGroup);
$5889b22941d0d214$var$addBorderToVillagesInGroup(group.name, 'transparent');
delete $5889b22941d0d214$var$config.groups[group.name];
form.remove();
});
const selectButton = form.querySelector('.selectButton');
if (selectButton) {
selectButton.addEventListener('click', e => {
$bfe8b11df18d9acc480580699499dd1a$var$config.selectedGroup = group.name;
$bfe8b11df18d9acc480580699499dd1a$var$renderGroups();
if (selectButton) selectButton.addEventListener('click', (e)=>{
$5889b22941d0d214$var$config.selectedGroup = group.name;
$5889b22941d0d214$var$renderGroups();
});
}
}
container.appendChild(form);
};
const $bfe8b11df18d9acc480580699499dd1a$var$renderGroups = () => {
$bfe8b11df18d9acc480580699499dd1a$var$formsContainer.innerHTML = '';
for (let name in $bfe8b11df18d9acc480580699499dd1a$var$config.groups) {
$bfe8b11df18d9acc480580699499dd1a$var$renderForm($bfe8b11df18d9acc480580699499dd1a$var$formsContainer, $bfe8b11df18d9acc480580699499dd1a$var$_objectSpread($bfe8b11df18d9acc480580699499dd1a$var$_objectSpread({}, $bfe8b11df18d9acc480580699499dd1a$var$config.groups[name]), {}, {
name
};
const $5889b22941d0d214$var$renderGroups = ()=>{
$5889b22941d0d214$var$formsContainer.innerHTML = '';
for(let name in $5889b22941d0d214$var$config.groups)$5889b22941d0d214$var$renderForm($5889b22941d0d214$var$formsContainer, $f1e9793517c51c58$export$2e2bcd8739ae039({
}, $5889b22941d0d214$var$config.groups[name], {
name: name
}));
}
$bfe8b11df18d9acc480580699499dd1a$var$renderForm($bfe8b11df18d9acc480580699499dd1a$var$formsContainer);
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleExportVillages = () => {
$5889b22941d0d214$var$renderForm($5889b22941d0d214$var$formsContainer);
};
const $5889b22941d0d214$var$handleExportVillages = ()=>{
const groups = [];
for (let name in $bfe8b11df18d9acc480580699499dd1a$var$config.groups) {
groups.push(("<div style=\"margin-bottom: 30px;\">\n <h3>").concat(name, "</h3>\n <textarea cols=30 rows=8 readonly>").concat($bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].villages.map(village => village.key).join(' ').trim(), "</textarea>\n </div>"));
}
const html = ("\n ").concat(groups.join(''), "\n ");
Dialog.show($bfe8b11df18d9acc480580699499dd1a$var$translations.exportedVillages, html);
};
const $bfe8b11df18d9acc480580699499dd1a$var$renderActions = () => {
for(let name in $5889b22941d0d214$var$config.groups)groups.push(`<div style="margin-bottom: 30px;">
<h3>${name}</h3>
<textarea cols=30 rows=8 readonly>${$5889b22941d0d214$var$config.groups[name].villages.map((village)=>village.key
).join(' ').trim()}</textarea>
</div>`);
const html = `
${groups.join('')}
`;
Dialog.show($5889b22941d0d214$var$translations.exportedVillages, html);
};
const $5889b22941d0d214$var$renderActions = ()=>{
const exportVillages = document.createElement('button');
exportVillages.innerHTML = $bfe8b11df18d9acc480580699499dd1a$var$translations.export;
exportVillages.addEventListener('click', $bfe8b11df18d9acc480580699499dd1a$var$handleExportVillages);
$bfe8b11df18d9acc480580699499dd1a$var$actionsContainer.appendChild(exportVillages);
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleSpawnSector = (data, sector) => {
exportVillages.innerHTML = $5889b22941d0d214$var$translations.export;
exportVillages.addEventListener('click', $5889b22941d0d214$var$handleExportVillages);
$5889b22941d0d214$var$actionsContainer.appendChild(exportVillages);
};
const $5889b22941d0d214$var$handleSpawnSector = (data, sector)=>{
TWMap.mapHandler.__spawnSector(data, sector);
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToSelectedVillages();
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleStart = () => {
$5889b22941d0d214$var$addBorderToSelectedVillages();
};
const $5889b22941d0d214$var$handleStart = ()=>{
TWMap.map.handler.__onClick = TWMap.map.handler.onClick;
TWMap.map.handler.onClick = $bfe8b11df18d9acc480580699499dd1a$var$handleMapClick;
TWMap.map.handler.onClick = $5889b22941d0d214$var$handleMapClick;
TWMap.mapHandler.__spawnSector = TWMap.map.handler.spawnSector;
TWMap.mapHandler.spawnSector = $bfe8b11df18d9acc480580699499dd1a$var$handleSpawnSector;
$bfe8b11df18d9acc480580699499dd1a$var$button.innerHTML = $bfe8b11df18d9acc480580699499dd1a$var$translations.stopCoordsPicker;
$bfe8b11df18d9acc480580699499dd1a$var$renderActions();
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToSelectedVillages();
$bfe8b11df18d9acc480580699499dd1a$var$renderGroups();
$bfe8b11df18d9acc480580699499dd1a$var$intervalID = setInterval($bfe8b11df18d9acc480580699499dd1a$var$saveConfig, 500);
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleStop = () => {
if (typeof TWMap.map.handler.__onClick === 'function') {
TWMap.map.handler.onClick = TWMap.map.handler.__onClick;
}
if (typeof TWMap.map.handler.__spawnSector === 'function') {
TWMap.mapHandler.spawnSector = TWMap.map.handler.__spawnSector;
}
$bfe8b11df18d9acc480580699499dd1a$var$button.innerHTML = $bfe8b11df18d9acc480580699499dd1a$var$translations.startCoordsPicker;
$bfe8b11df18d9acc480580699499dd1a$var$formsContainer.innerHTML = '';
$bfe8b11df18d9acc480580699499dd1a$var$actionsContainer.innerHTML = '';
$bfe8b11df18d9acc480580699499dd1a$var$addBorderToSelectedVillages('transparent');
if ($bfe8b11df18d9acc480580699499dd1a$var$intervalID) {
clearInterval($bfe8b11df18d9acc480580699499dd1a$var$intervalID);
}
for (let name in $bfe8b11df18d9acc480580699499dd1a$var$config.groups) {
$bfe8b11df18d9acc480580699499dd1a$var$config.groups[name].villages = [];
}
};
const $bfe8b11df18d9acc480580699499dd1a$var$handleButtonClick = () => {
if ($bfe8b11df18d9acc480580699499dd1a$var$config.started) {
$bfe8b11df18d9acc480580699499dd1a$var$handleStop();
} else {
$bfe8b11df18d9acc480580699499dd1a$var$handleStart();
}
$bfe8b11df18d9acc480580699499dd1a$var$config.started = !$bfe8b11df18d9acc480580699499dd1a$var$config.started;
$bfe8b11df18d9acc480580699499dd1a$var$saveConfig();
};
const $bfe8b11df18d9acc480580699499dd1a$var$renderUI = () => {
$bfe8b11df18d9acc480580699499dd1a$var$button = document.createElement('button');
$bfe8b11df18d9acc480580699499dd1a$var$button.style.marginLeft = '5px';
$bfe8b11df18d9acc480580699499dd1a$var$button.innerHTML = $bfe8b11df18d9acc480580699499dd1a$var$config.started ? $bfe8b11df18d9acc480580699499dd1a$var$translations.stopCoordsPicker : $bfe8b11df18d9acc480580699499dd1a$var$translations.startCoordsPicker;
$bfe8b11df18d9acc480580699499dd1a$var$button.addEventListener('click', $bfe8b11df18d9acc480580699499dd1a$var$handleButtonClick);
$bfe8b11df18d9acc480580699499dd1a$var$container.appendChild($bfe8b11df18d9acc480580699499dd1a$var$button);
$bfe8b11df18d9acc480580699499dd1a$var$formsContainer = document.createElement('div');
$bfe8b11df18d9acc480580699499dd1a$var$container.parentElement.insertBefore($bfe8b11df18d9acc480580699499dd1a$var$formsContainer, $bfe8b11df18d9acc480580699499dd1a$var$container.nextSibling);
$bfe8b11df18d9acc480580699499dd1a$var$actionsContainer = document.createElement('div');
$bfe8b11df18d9acc480580699499dd1a$var$container.parentElement.insertBefore($bfe8b11df18d9acc480580699499dd1a$var$actionsContainer, $bfe8b11df18d9acc480580699499dd1a$var$container.nextSibling);
if ($bfe8b11df18d9acc480580699499dd1a$var$config.started) {
$bfe8b11df18d9acc480580699499dd1a$var$handleStart();
}
};
(function () {
TWMap.mapHandler.spawnSector = $5889b22941d0d214$var$handleSpawnSector;
$5889b22941d0d214$var$button.innerHTML = $5889b22941d0d214$var$translations.stopCoordsPicker;
$5889b22941d0d214$var$renderActions();
$5889b22941d0d214$var$addBorderToSelectedVillages();
$5889b22941d0d214$var$renderGroups();
$5889b22941d0d214$var$intervalID = setInterval($5889b22941d0d214$var$saveConfig, 500);
};
const $5889b22941d0d214$var$handleStop = ()=>{
if (typeof TWMap.map.handler.__onClick === 'function') TWMap.map.handler.onClick = TWMap.map.handler.__onClick;
if (typeof TWMap.map.handler.__spawnSector === 'function') TWMap.mapHandler.spawnSector = TWMap.map.handler.__spawnSector;
$5889b22941d0d214$var$button.innerHTML = $5889b22941d0d214$var$translations.startCoordsPicker;
$5889b22941d0d214$var$formsContainer.innerHTML = '';
$5889b22941d0d214$var$actionsContainer.innerHTML = '';
$5889b22941d0d214$var$addBorderToSelectedVillages('transparent');
if ($5889b22941d0d214$var$intervalID) clearInterval($5889b22941d0d214$var$intervalID);
for(let name in $5889b22941d0d214$var$config.groups)$5889b22941d0d214$var$config.groups[name].villages = [];
};
const $5889b22941d0d214$var$handleButtonClick = ()=>{
if ($5889b22941d0d214$var$config.started) $5889b22941d0d214$var$handleStop();
else $5889b22941d0d214$var$handleStart();
$5889b22941d0d214$var$config.started = !$5889b22941d0d214$var$config.started;
$5889b22941d0d214$var$saveConfig();
};
const $5889b22941d0d214$var$renderUI = ()=>{
$5889b22941d0d214$var$button = document.createElement('button');
$5889b22941d0d214$var$button.style.marginLeft = '5px';
$5889b22941d0d214$var$button.innerHTML = $5889b22941d0d214$var$config.started ? $5889b22941d0d214$var$translations.stopCoordsPicker : $5889b22941d0d214$var$translations.startCoordsPicker;
$5889b22941d0d214$var$button.addEventListener('click', $5889b22941d0d214$var$handleButtonClick);
$5889b22941d0d214$var$container.appendChild($5889b22941d0d214$var$button);
$5889b22941d0d214$var$formsContainer = document.createElement('div');
$5889b22941d0d214$var$container.parentElement.insertBefore($5889b22941d0d214$var$formsContainer, $5889b22941d0d214$var$container.nextSibling);
$5889b22941d0d214$var$actionsContainer = document.createElement('div');
$5889b22941d0d214$var$container.parentElement.insertBefore($5889b22941d0d214$var$actionsContainer, $5889b22941d0d214$var$container.nextSibling);
if ($5889b22941d0d214$var$config.started) $5889b22941d0d214$var$handleStart();
};
(function() {
try {
$bfe8b11df18d9acc480580699499dd1a$var$renderUI();
$5889b22941d0d214$var$renderUI();
} catch (error) {
console.log('Map Coords Picker', error);
}
})();
})();
})();

View File

@ -1 +1 @@
!function(){const t="https://api.tribalwarshelp.com/graphql";var e=function(){let{query:e,variables:n={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return fetch(t,{method:"POST",body:JSON.stringify({query:e,variables:n}),headers:{"Content-Type":"application/json"}}).then((t=>t.json())).then((t=>{let{data:e,errors:n}=t;if(n&&Array.isArray(n)&&n.length>0)throw new Error(n[0].message);return new Promise((t=>t(e)))}))};const n={pl_PL:{actualCoords:"Aktualne koordynaty",searchBonusBarbarianVillages:"Wyszukaj koczownicze",village:"Wioska",distance:"Dystans",action:"Akcja",center:"Wycentruj"},en_DK:{actualCoords:"Actual coords",searchBonusBarbarianVillages:"Search bonus barbarian villages",village:"Village",distance:"Distance",action:"Action",center:"Center"},de_DE:{actualCoords:"Aktuelle Koordinaten",searchBonusBarbarianVillages:"Suche Bonus-Barbarendörfer",village:"Dorf",distance:"Distanz",action:"Aktion",center:"Center"}};const r=(t,e,n,r)=>{const a=t-n,o=e-r;return Math.sqrt(a*a+o*o)};function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?a(Object(n),!0).forEach((function(e){c(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function c(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const i=window.location.host.split(".")[0],s="bonusBarbarianVillageFinderTable",l="actualCoords",u=n[window.game_data.locale]||n.en_DK;let d;const b=(t,e)=>({query:"\n query villages($server: String!, $filter: VillageFilter, $sort: [String!], $offset: Int) {\n villages(server: $server, filter: $filter, offset: $offset, sort: $sort) {\n total\n items {\n id\n name\n bonus\n x\n y\n }\n }\n }\n",variables:{server:i,sort:["id DESC"],filter:{bonus:t,playerID:[0]},offset:e}}),p=async t=>{t.preventDefault();const n=await(async t=>{const{villages:n}=await e(b(t,0));for(let r=n.length;r<n.total;r+=1e3){const r=await e(b(t,0));n.items=[...n.items,...r.villages.items]}return n})(parseInt(t.target[0].value)),a=TWMap.pos;n.items=n.items.map((t=>o(o({},t),{},{distance:r(a[0],a[1],t.x,t.y)}))).sort(((t,e)=>t.distance-e.distance)),document.querySelector("#bonusBarbarianVillageFinderTable").innerHTML=f(n.items)},f=t=>"\n <tbody>\n <tr>\n <th>\n ".concat(u.village,"\n </th>\n <th>\n ").concat(u.distance,"\n </th>\n <th>\n ").concat(u.action,"\n </th>\n </tr>\n ").concat(Array.isArray(t)?t.map((t=>{return'<tr>\n <td>\n <a href="'.concat((e=t.id,window.location.origin+TribalWars.buildURL("",{screen:"info_village",id:e})),'">\n ').concat(function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:500;const r="K"+String(n)[0]+String(e)[0];return"".concat(t," (").concat(e,"|").concat(n,") ").concat(r)}(t.name,t.x,t.y),"\n </a>\n </td>\n <td>\n ").concat(t.distance.toFixed(1),'\n </td>\n <td>\n <a href="#" onclick="return TWMap.focusUserSpecified(').concat(t.x,", ").concat(t.y,')">').concat(u.center,"</a>\n </td>\n </tr>");var e})).join(""):"","\n </tbody>\n "),g=()=>{document.querySelector("#actualCoords").innerHTML="".concat(u.actualCoords,": <strong>").concat(TWMap.pos.join("|"),"</strong>")};(()=>{const t='\n <p id="'.concat(l,'"></p>\n <form>\n <select>\n ').concat((()=>{let t=[];for(let e in TWMap.bonus_data)t.push({value:e,text:TWMap.bonus_data[e].text});return t})().map((t=>'<option value="'.concat(t.value,'">').concat(t.text,"</option>"))).join(""),'\n </select>\n <button type="submit">').concat(u.searchBonusBarbarianVillages,'</button>\n </form>\n <table class="vis" style="width: 100%;" id="').concat(s,'">\n ').concat(f(),"\n </table>\n ");d||(d=document.createElement("div"),d.classList.add("containerBorder"),d.style.clear="both",document.querySelector("#map_big").appendChild(d)),d.innerHTML=t,d.querySelector("form").addEventListener("submit",p),g(),setInterval(g,1e3)})()}();
!function(){function e(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}var n=({query:e,variables:n={}}={})=>fetch("https://api.tribalwarshelp.com/graphql",{method:"POST",body:JSON.stringify({query:e,variables:n}),headers:{"Content-Type":"application/json"}}).then((e=>e.json())).then((({data:e,errors:n})=>{if(n&&Array.isArray(n)&&n.length>0)throw new Error(n[0].message);return new Promise((n=>n(e)))}));const t={pl_PL:{actualCoords:"Aktualne koordynaty",searchBonusBarbarianVillages:"Wyszukaj koczownicze",village:"Wioska",distance:"Dystans",action:"Akcja",center:"Wycentruj"},en_DK:{actualCoords:"Actual coords",searchBonusBarbarianVillages:"Search bonus barbarian villages",village:"Village",distance:"Distance",action:"Action",center:"Center"},de_DE:{actualCoords:"Aktuelle Koordinaten",searchBonusBarbarianVillages:"Suche Bonus-Barbarendörfer",village:"Dorf",distance:"Distanz",action:"Aktion",center:"Center"}};const r=(e,n,t,r)=>{const a=e-t,o=n-r;return Math.sqrt(a*a+o*o)},a=window.location.host.split(".")[0],o="bonusBarbarianVillageFinderTable",i=t[window.game_data.locale]||t.en_DK;let s;const l=(e,n)=>({query:"\n query villages($server: String!, $filter: VillageFilter, $sort: [String!], $offset: Int) {\n villages(server: $server, filter: $filter, offset: $offset, sort: $sort) {\n total\n items {\n id\n name\n bonus\n x\n y\n }\n }\n }\n",variables:{server:a,sort:["id DESC"],filter:{bonus:e,playerID:[0]},offset:n}}),c=async t=>{t.preventDefault();const a=await(async e=>{const{villages:t}=await n(l(e,0));for(let r=t.length;r<t.total;r+=1e3){const r=await n(l(e,0));t.items=[...t.items,...r.villages.items]}return t})(parseInt(t.target[0].value)),i=TWMap.pos;a.items=a.items.map((n=>function(n){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},a=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),a.forEach((function(t){e(n,t,r[t])}))}return n}({},n,{distance:r(i[0],i[1],n.x,n.y)}))).sort(((e,n)=>e.distance-n.distance)),document.querySelector("#"+o).innerHTML=u(a.items)},u=e=>`\n <tbody>\n <tr>\n <th>\n ${i.village}\n </th>\n <th>\n ${i.distance}\n </th>\n <th>\n ${i.action}\n </th>\n </tr>\n ${Array.isArray(e)?e.map((e=>{return`<tr>\n <td>\n <a href="${n=e.id,window.location.origin+TribalWars.buildURL("",{screen:"info_village",id:n})}">\n ${((e="",n=500,t=500)=>`${e} (${n}|${t}) ${"K"+String(t)[0]+String(n)[0]}`)(e.name,e.x,e.y)}\n </a>\n </td>\n <td>\n ${e.distance.toFixed(1)}\n </td>\n <td>\n <a href="#" onclick="return TWMap.focusUserSpecified(${e.x}, ${e.y})">${i.center}</a>\n </td>\n </tr>`;var n})).join(""):""}\n </tbody>\n `,d=()=>{document.querySelector("#actualCoords").innerHTML=`${i.actualCoords}: <strong>${TWMap.pos.join("|")}</strong>`};(()=>{const e=`\n <p id="actualCoords"></p>\n <form>\n <select>\n ${(()=>{let e=[];for(let n in TWMap.bonus_data)e.push({value:n,text:TWMap.bonus_data[n].text});return e})().map((e=>`<option value="${e.value}">${e.text}</option>`)).join("")}\n </select>\n <button type="submit">${i.searchBonusBarbarianVillages}</button>\n </form>\n <table class="vis" style="width: 100%;" id="bonusBarbarianVillageFinderTable">\n ${u()}\n </table>\n `;s||(s=document.createElement("div"),s.classList.add("containerBorder"),s.style.clear="both",document.querySelector("#map_big").appendChild(s)),s.innerHTML=e,s.querySelector("form").addEventListener("submit",c),d(),setInterval(d,1e3)})()}();

View File

@ -1 +1 @@
!function(){const e={pl_PL:{rename:"Zmień",name:"Nazwa"},en_DK:{rename:"Rename",name:"Name"},de_DE:{rename:"Umbenennen",name:"Name"}};var t=e=>new Promise((t=>setTimeout(t,e)));const n=e[window.game_data.locale]||e.en_DK,a=async e=>{e.preventDefault();const n=e.target[0].value;if(!n)return;const a=document.querySelectorAll("#incomings_table input:checked");e.target[1].disabled=!0;for(let e=0;e<a.length;e++){const c=a[e];if("select_all"===c.id)continue;c.parentElement.querySelector(".rename-icon").click(),await t(20);const o=c.parentElement.querySelector(".quickedit-edit");o.querySelector("input").value=n,o.querySelector('input[type="button"]').click(),await t(350)}e.target[1].disabled=!1};!async function(){try{(()=>{const e='\n <input type="text" placeholder="'.concat(n.name,'" />\n <button type="submit">').concat(n.rename,"</button>\n "),t=document.createElement("form");t.innerHTML=e,t.addEventListener("submit",a),document.querySelector("#paged_view_content").insertBefore(t,document.querySelector("#incomings_form"))})()}catch(e){console.log("command renamer",e)}}()}();
!function(){const e={pl_PL:{rename:"Zmień",name:"Nazwa"},en_DK:{rename:"Rename",name:"Name"},de_DE:{rename:"Umbenennen",name:"Name"}};var t=e=>new Promise((t=>setTimeout(t,e)));const n=e[window.game_data.locale]||e.en_DK,a=async e=>{e.preventDefault();const n=e.target[0].value;if(!n)return;const a=document.querySelectorAll("#incomings_table input:checked");e.target[1].disabled=!0;for(let e=0;e<a.length;e++){const c=a[e];if("select_all"===c.id)continue;c.parentElement.querySelector(".rename-icon").click(),await t(20);const o=c.parentElement.querySelector(".quickedit-edit");o.querySelector("input").value=n,o.querySelector('input[type="button"]').click(),await t(350)}e.target[1].disabled=!1};!async function(){try{(()=>{const e=`\n <input type="text" placeholder="${n.name}" />\n <button type="submit">${n.rename}</button>\n `,t=document.createElement("form");t.innerHTML=e,t.addEventListener("submit",a),document.querySelector("#paged_view_content").insertBefore(t,document.querySelector("#incomings_form"))})()}catch(e){console.log("command renamer",e)}}()}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
!function(){var e=e=>parseInt(new URLSearchParams(e).get("id"));class t{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.dom=(new DOMParser).parseFromString(e,"text/html"),this.trs=this.dom.querySelectorAll("#in_a_day_ranking_table tbody tr"),this.filters=t}isValidRow(e){return!!e&&((!this.filters.playerID||e.playerID===this.filters.playerID)&&!(this.filters.tribes&&Array.isArray(this.filters.tribes)&&!this.filters.tribes.some((t=>t===e.tribe))))}parseRow(t){if(!t||!t instanceof HTMLTableRowElement)return;let r={};return r.rank=parseInt(t.children[0].innerText.trim()),r.name=t.children[1].innerText.trim(),r.playerID=e(t.children[1].querySelector("a").getAttribute("href")),r.tribe=t.children[2].innerText.trim(),r.tribeID=0,r.tribe&&(r.tribeID=e(t.children[2].querySelector("a").getAttribute("href"))),r.score=parseInt(t.children[3].innerText.trim().replace(/\./g,"")),r.date=t.children[4].innerText.trim(),r}parse(){const e=[];for(let t=1;t<this.trs.length;t++){const r=this.trs[t],n=this.parseRow(r);this.isValidRow(n)&&e.push(n)}return e}}const r={pl_PL:{addTribe:"Dodaj plemię",generate:"Wygeneruj",delete:"Usuń",player:"Gracz",tribe:"Plemię",rank:"Ranking",score:"Wynik",date:"Data",loaded:"Załadowano"},en_DK:{addTribe:"Add tribe",generate:"Generate",delete:"Delete",player:"Player",tribe:"Tribe",rank:"Rank",score:"Score",date:"Date",loaded:"Loaded"},de_DE:{addTribe:"Stamm hinzufügen",generate:"Generieren",delete:"Löschen",player:"Spieler",tribe:"Stamm",rank:"Rang",score:"Punkte",date:"Datum",loaded:"Geladen"}};var n=e=>new Promise((t=>setTimeout(t,e)));const a="iad_tribes",i="iad_limit",o=r[window.game_data.locale]||r.en_DK,l=()=>{const e=document.querySelector("#iad_tribes"),t=document.createElement("div");t.innerHTML="\n <label>".concat(o.tribe,': </label>\n <input type="text" required />\n <button type="button">').concat(o.delete,"</button>\n "),t.querySelector("button").addEventListener("click",(()=>{e.children.length>1&&t.remove()})),e.appendChild(t)},c=async e=>{e.preventDefault();const r=parseInt(document.querySelector("#iad_limit").value),a=[],i=new URLSearchParams(window.location.search).get("type")||"kill_att";document.querySelectorAll("#iad_tribes input").forEach((e=>{e.value&&a.push(e.value.trim())}));let l=[],c=0;for(;l.length<r;){Dialog.show("iad_loading","".concat(o.loaded,": <strong>").concat(l.length,"/").concat(r,"</strong>"));try{const e=await fetch(TribalWars.buildURL("",{screen:"ranking",mode:"in_a_day",type:i,offset:25*c})),r=await e.text(),o=new t(r,{tribes:a});if(26!==o.trs.length)break;l=[...l,...o.parse()],c++,await n(200)}catch(e){break}}l.length>r&&(l=l.slice(0,r)),Dialog.show("iad_result","\n <textarea cols=30 rows=8 readonly>[table]\n[**][||]".concat(o.player,"[||]").concat(o.tribe,"[||]").concat(o.rank,"[||]").concat(o.score,"[||]").concat(o.date,"[/**]\n").concat(l.map(((e,t)=>"[*]".concat(t+1,".[|][player]").concat(e.name,"[/player][|][ally]").concat(e.tribe,"[/ally][|]").concat(e.rank,"[|]").concat(e.score.toLocaleString(),"[|]").concat(e.date))).join("\n"),"\n[/table]</textarea>\n "))};!function(){try{(()=>{const e="iad_add",t=document.createElement("div"),r='\n <form>\n <div id="'.concat(a,'">\n </div>\n <div>\n <label>Limit: </label>\n <input id="').concat(i,'" type="number" min="1" value="10" required />\n </div>\n <button type="submit">').concat(o.generate,'</button>\n <button id="').concat(e,'" type="button">').concat(o.addTribe,"</button>\n </form>\n ");t.innerHTML=r,document.querySelector("#content_value > table > tbody > tr > td:nth-child(2)").prepend(t),t.querySelector("form").addEventListener("submit",c),t.querySelector("#iad_add").addEventListener("click",l),l()})()}catch(e){console.log("'In A Day' Tribe Ranking Generator",e)}}()}();
!function(){var e=e=>parseInt(new URLSearchParams(e).get("id"));class t{isValidRow(e){return!!e&&((!this.filters.playerID||e.playerID===this.filters.playerID)&&!(this.filters.tribes&&Array.isArray(this.filters.tribes)&&!this.filters.tribes.some((t=>t===e.tribe))))}parseRow(t){if(!t||!t instanceof HTMLTableRowElement)return;let r={};return r.rank=parseInt(t.children[0].innerText.trim()),r.name=t.children[1].innerText.trim(),r.playerID=e(t.children[1].querySelector("a").getAttribute("href")),r.tribe=t.children[2].innerText.trim(),r.tribeID=0,r.tribe&&(r.tribeID=e(t.children[2].querySelector("a").getAttribute("href"))),r.score=parseInt(t.children[3].innerText.trim().replace(/\./g,"")),r.date=t.children[4].innerText.trim(),r}parse(){const e=[];for(let t=1;t<this.trs.length;t++){const r=this.trs[t],n=this.parseRow(r);this.isValidRow(n)&&e.push(n)}return e}constructor(e="",t={}){this.dom=(new DOMParser).parseFromString(e,"text/html"),this.trs=this.dom.querySelectorAll("#in_a_day_ranking_table tbody tr"),this.filters=t}}const r={pl_PL:{addTribe:"Dodaj plemię",generate:"Wygeneruj",delete:"Usuń",player:"Gracz",tribe:"Plemię",rank:"Ranking",score:"Wynik",date:"Data",loaded:"Załadowano"},en_DK:{addTribe:"Add tribe",generate:"Generate",delete:"Delete",player:"Player",tribe:"Tribe",rank:"Rank",score:"Score",date:"Date",loaded:"Loaded"},de_DE:{addTribe:"Stamm hinzufügen",generate:"Generieren",delete:"Löschen",player:"Spieler",tribe:"Stamm",rank:"Rang",score:"Punkte",date:"Datum",loaded:"Geladen"}};var n=e=>new Promise((t=>setTimeout(t,e)));const a=r[window.game_data.locale]||r.en_DK,i=()=>{const e=document.querySelector("#iad_tribes"),t=document.createElement("div");t.innerHTML=`\n <label>${a.tribe}: </label>\n <input type="text" required />\n <button type="button">${a.delete}</button>\n `,t.querySelector("button").addEventListener("click",(()=>{e.children.length>1&&t.remove()})),e.appendChild(t)},l=async e=>{e.preventDefault();const r=parseInt(document.querySelector("#iad_limit").value),i=[],l=new URLSearchParams(window.location.search).get("type")||"kill_att";document.querySelectorAll("#iad_tribes input").forEach((e=>{e.value&&i.push(e.value.trim())}));let d=[],o=0;for(;d.length<r;){Dialog.show("iad_loading",`${a.loaded}: <strong>${d.length}/${r}</strong>`);try{const e=await fetch(TribalWars.buildURL("",{screen:"ranking",mode:"in_a_day",type:l,offset:25*o})),r=await e.text(),a=new t(r,{tribes:i});if(26!==a.trs.length)break;d=[...d,...a.parse()],o++,await n(200)}catch(e){break}}d.length>r&&(d=d.slice(0,r)),Dialog.show("iad_result",`\n <textarea cols=30 rows=8 readonly>[table]\n[**][||]${a.player}[||]${a.tribe}[||]${a.rank}[||]${a.score}[||]${a.date}[/**]\n${d.map(((e,t)=>`[*]${t+1}.[|][player]${e.name}[/player][|][ally]${e.tribe}[/ally][|]${e.rank}[|]${e.score.toLocaleString()}[|]${e.date}`)).join("\n")}\n[/table]</textarea>\n `)};!function(){try{(()=>{const e=document.createElement("div"),t=`\n <form>\n <div id="iad_tribes">\n </div>\n <div>\n <label>Limit: </label>\n <input id="iad_limit" type="number" min="1" value="10" required />\n </div>\n <button type="submit">${a.generate}</button>\n <button id="iad_add" type="button">${a.addTribe}</button>\n </form>\n `;e.innerHTML=t,document.querySelector("#content_value > table > tbody > tr > td:nth-child(2)").prepend(e),e.querySelector("form").addEventListener("submit",l),e.querySelector("#iad_add").addEventListener("click",i),i()})()}catch(e){console.log("'In A Day' Tribe Ranking Generator",e)}}()}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,27 +1,28 @@
(function () {
const $3af05e958b2a20a26445518aba292c50$export$API_URI = 'https://api.tribalwarshelp.com/graphql';
var $3af05e958b2a20a26445518aba292c50$export$default = function () {
let {query, variables = {}} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
return fetch($3af05e958b2a20a26445518aba292c50$export$API_URI, {
const $902f167bfdc7b30b$export$fb18762d0c18fa09 = 'https://api.tribalwarshelp.com/graphql';
var $902f167bfdc7b30b$export$2e2bcd8739ae039 = ({ query: query , variables: variables = {
} } = {
})=>{
return fetch($902f167bfdc7b30b$export$fb18762d0c18fa09, {
method: 'POST',
body: JSON.stringify({
query,
variables
query: query,
variables: variables
}),
headers: {
'Content-Type': 'application/json'
}
}).then(res => {
}).then((res)=>{
return res.json();
}).then(_ref => {
let {data, errors} = _ref;
if (errors && Array.isArray(errors) && errors.length > 0) {
throw new Error(errors[0].message);
}
return new Promise(resolve => resolve(data));
}).then(({ data: data , errors: errors })=>{
if (errors && Array.isArray(errors) && errors.length > 0) throw new Error(errors[0].message);
return new Promise((resolve)=>resolve(data)
);
});
};
const $5adf165e6af4801598a359969d322bf5$var$translations = {
};
const $dd2f3b715639879a$var$translations = {
pl_PL: {
conquers: 'Przejęcia',
sideOne: 'Strona 1',
@ -52,7 +53,7 @@
warStatsGenerator: 'War stats generator',
generateWarStats: 'Generate war stats',
addTribe: 'Add tribe',
devNote: "Information from the author - I've just launched a new stat tracking website, don't forget to check it out :)."
devNote: `Information from the author - I've just launched a new stat tracking website, don't forget to check it out :).`
},
de_DE: {
conquers: 'Eroberungen',
@ -68,190 +69,252 @@
warStatsGenerator: 'Kriegsstatistik Generator',
generateWarStats: 'Generiere Statistik',
addTribe: 'Stamm Hinzufügen',
devNote: "Information vom Entwickler - Ich habe eine neue Statistik-Website gestartet, vergiss nicht diese zu testen :)."
devNote: `Information vom Entwickler - Ich habe eine neue Statistik-Website gestartet, vergiss nicht diese zu testen :).`
}
};
var $5adf165e6af4801598a359969d322bf5$export$default = () => $5adf165e6af4801598a359969d322bf5$var$translations[window.game_data.locale] || $5adf165e6af4801598a359969d322bf5$var$translations.en_DK;
var $075335fbc46b1a64d60d11b353f74662$export$default = () => window.location.host.split('.')[0];
var $1f14636dcc53402ba1b7661b758ca0aa$export$default = function () {
let server = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
return server.substr(0, 2);
};
const $d147509fefd1cb8b3b83e8f38f763543$export$BASE_URL = 'tribalwarshelp.com';
const $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage = function buildURLToServerPage() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
return ("https://").concat(version, ".").concat($d147509fefd1cb8b3b83e8f38f763543$export$BASE_URL, "/server/").concat(server);
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile = function buildURLToProfile() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
let entity = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
return ("").concat($d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage(version, server), "/").concat(entity, "/").concat(id);
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildPlayerURL = function buildPlayerURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'player');
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildTribeURL = function buildTribeURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'tribe');
};
const $d147509fefd1cb8b3b83e8f38f763543$export$buildVillageURL = function buildVillageURL() {
let version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
let server = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
let id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
return $d147509fefd1cb8b3b83e8f38f763543$export$buildURLToProfile(version, server, id, 'village');
};
const $6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR = '.popup_box';
const $6412e4d8722bc72f55b3c382206290ed$export$default = function showPopup() {
let {html, id, title} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
Dialog.show(id, ("<h3>").concat(title, "</h3>") + html);
const popup = document.querySelector($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR);
};
var $dd2f3b715639879a$export$2e2bcd8739ae039 = ()=>$dd2f3b715639879a$var$translations[window.game_data.locale] || $dd2f3b715639879a$var$translations.en_DK
;
var $9412d55e353d4b8b$export$2e2bcd8739ae039 = ()=>window.location.host.split('.')[0]
;
var $5b3edb3901c8177a$export$2e2bcd8739ae039 = (server = '')=>server.substr(0, 2)
;
const $f3b273bd698d94bc$export$ca6dda5263526f75 = 'tribalwarshelp.com';
const $f3b273bd698d94bc$export$5d5850cc00079a21 = (version = '', server = '')=>{
return `https://${version}.${$f3b273bd698d94bc$export$ca6dda5263526f75}/server/${server}`;
};
const $f3b273bd698d94bc$export$a4588dcb88e3f9db = (version = '', server = '', id = 0, entity = '')=>{
return `${$f3b273bd698d94bc$export$5d5850cc00079a21(version, server)}/${entity}/${id}`;
};
const $f3b273bd698d94bc$export$3df7b9b48f38839e = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'player');
};
const $f3b273bd698d94bc$export$7345792e21cfc457 = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'tribe');
};
const $f3b273bd698d94bc$export$e537a41a0fc85cc5 = (version = '', server = '', id = 0)=>{
return $f3b273bd698d94bc$export$a4588dcb88e3f9db(version, server, id, 'village');
};
const $20636c16dad2c11a$export$21d4bed11ae27f0b = '.popup_box';
const $20636c16dad2c11a$var$showPopup = ({ html: html , id: id , title: title } = {
})=>{
Dialog.show(id, `<h3>${title}</h3>` + html);
const popup = document.querySelector($20636c16dad2c11a$export$21d4bed11ae27f0b);
if (popup) {
popup.style.width = 'auto';
popup.style.maxWidth = '1000px';
}
};
// ==UserScript==
// @name War stats generator
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @version 0.3.5
// @description War stats generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=wars*
// @grant none
// @run-at document-end
// ==/UserScript==
const $1f04f025e20ce30abc71521ae440de01$var$SERVER = $075335fbc46b1a64d60d11b353f74662$export$default();
const $1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_BUTTON_ID = 'sideOneAdd';
const $1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_INPUT_CONTAINER_ID = 'sideOneInputs';
const $1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_BUTTON_ID = 'sideTwoAdd';
const $1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_INPUT_CONTAINER_ID = 'sideTwoInputs';
const $1f04f025e20ce30abc71521ae440de01$var$TO_INPUT_ID = 'to';
const $1f04f025e20ce30abc71521ae440de01$var$FROM_INPUT_ID = 'from';
const $1f04f025e20ce30abc71521ae440de01$var$RESULT_CONTAINER_ID = 'warStatsResult';
const $1f04f025e20ce30abc71521ae440de01$var$TRIBES_QUERY = "\n query tribes($server: String!, $filter: TribeFilter) {\n tribes(server: $server, filter: $filter) {\n items {\n id\n tag\n }\n }\n }\n";
const $1f04f025e20ce30abc71521ae440de01$var$ENNOBLEMENTS_QUERY = "\n query ennoblements($server: String!, $sideOneFilter: EnnoblementFilter, $sideTwoFilter: EnnoblementFilter) {\n sideOneEnnoblements: ennoblements(server: $server, filter: $sideOneFilter) {\n total\n }\n sideTwoEnnoblements: ennoblements(server: $server, filter: $sideTwoFilter) {\n total\n }\n }\n";
const $1f04f025e20ce30abc71521ae440de01$var$translations = $5adf165e6af4801598a359969d322bf5$export$default();
const $1f04f025e20ce30abc71521ae440de01$var$showResult = function showResult() {
let sideOne = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
let sideTwo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
const html = ("\n <div>\n <h3>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.conquers, ":</h3>\n <p style=\"margin: 0;\"><strong>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.sideOne, ": ").concat(sideOne, "</strong></p>\n <p style=\"margin: 0;\"><strong>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.sideTwo, ": ").concat(sideTwo, "</strong></p>\n <p style=\"margin: 0;\"><strong>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.difference, ": ").concat(Math.abs(sideOne - sideTwo), "</strong></p>\n <hr style=\"margin: 10px 0;\" />\n </div>\n ");
document.querySelector('#' + $1f04f025e20ce30abc71521ae440de01$var$RESULT_CONTAINER_ID).innerHTML = html;
};
const $1f04f025e20ce30abc71521ae440de01$var$createAddTribeHandler = container => {
return () => {
};
var $20636c16dad2c11a$export$2e2bcd8739ae039 = $20636c16dad2c11a$var$showPopup;
// ==UserScript==
// @name War stats generator
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @version 0.3.5
// @description War stats generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=wars*
// @grant none
// @run-at document-end
// ==/UserScript==
const $813af46890790f24$var$SERVER = $9412d55e353d4b8b$export$2e2bcd8739ae039();
const $813af46890790f24$var$SIDE_ONE_BUTTON_ID = 'sideOneAdd';
const $813af46890790f24$var$SIDE_ONE_INPUT_CONTAINER_ID = 'sideOneInputs';
const $813af46890790f24$var$SIDE_TWO_BUTTON_ID = 'sideTwoAdd';
const $813af46890790f24$var$SIDE_TWO_INPUT_CONTAINER_ID = 'sideTwoInputs';
const $813af46890790f24$var$TO_INPUT_ID = 'to';
const $813af46890790f24$var$FROM_INPUT_ID = 'from';
const $813af46890790f24$var$RESULT_CONTAINER_ID = 'warStatsResult';
const $813af46890790f24$var$TRIBES_QUERY = `
query tribes($server: String!, $filter: TribeFilter) {
tribes(server: $server, filter: $filter) {
items {
id
tag
}
}
}
`;
const $813af46890790f24$var$ENNOBLEMENTS_QUERY = `
query ennoblements($server: String!, $sideOneFilter: EnnoblementFilter, $sideTwoFilter: EnnoblementFilter) {
sideOneEnnoblements: ennoblements(server: $server, filter: $sideOneFilter) {
total
}
sideTwoEnnoblements: ennoblements(server: $server, filter: $sideTwoFilter) {
total
}
}
`;
const $813af46890790f24$var$translations = $dd2f3b715639879a$export$2e2bcd8739ae039();
const $813af46890790f24$var$showResult = (sideOne = 0, sideTwo = 0)=>{
const html = `
<div>
<h3>${$813af46890790f24$var$translations.conquers}:</h3>
<p style="margin: 0;"><strong>${$813af46890790f24$var$translations.sideOne}: ${sideOne}</strong></p>
<p style="margin: 0;"><strong>${$813af46890790f24$var$translations.sideTwo}: ${sideTwo}</strong></p>
<p style="margin: 0;"><strong>${$813af46890790f24$var$translations.difference}: ${Math.abs(sideOne - sideTwo)}</strong></p>
<hr style="margin: 10px 0;" />
</div>
`;
document.querySelector('#' + $813af46890790f24$var$RESULT_CONTAINER_ID).innerHTML = html;
};
const $813af46890790f24$var$createAddTribeHandler = (container)=>{
return ()=>{
const div = document.createElement('div');
div.innerHTML = ("\n <label>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.tribeTag, ": </label>\n <input type=\"text\" required />\n <button type=\"button\" class=\"btn\">").concat($1f04f025e20ce30abc71521ae440de01$var$translations.delete, "</button>\n ");
div.querySelector('button').addEventListener('click', () => {
div.innerHTML = `
<label>${$813af46890790f24$var$translations.tribeTag}: </label>
<input type="text" required />
<button type="button" class="btn">${$813af46890790f24$var$translations.delete}</button>
`;
div.querySelector('button').addEventListener('click', ()=>{
div.remove();
});
container.appendChild(div);
};
};
const $1f04f025e20ce30abc71521ae440de01$var$handleFormSubmit = async e => {
};
const $813af46890790f24$var$handleFormSubmit = async (e)=>{
e.preventDefault();
const sideOneTags = [];
const sideTwoTags = [];
e.target.querySelectorAll(("#").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_INPUT_CONTAINER_ID, " input")).forEach(el => {
if (el.value.trim()) {
sideOneTags.push(el.value.trim());
}
e.target.querySelectorAll(`#${$813af46890790f24$var$SIDE_ONE_INPUT_CONTAINER_ID} input`).forEach((el)=>{
if (el.value.trim()) sideOneTags.push(el.value.trim());
});
e.target.querySelectorAll(("#").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_INPUT_CONTAINER_ID, " input")).forEach(el => {
if (el.value.trim()) {
sideTwoTags.push(el.value.trim());
}
e.target.querySelectorAll(`#${$813af46890790f24$var$SIDE_TWO_INPUT_CONTAINER_ID} input`).forEach((el)=>{
if (el.value.trim()) sideTwoTags.push(el.value.trim());
});
console.log('sideOneTags', sideOneTags, 'sideTwoTags', sideTwoTags);
if (sideOneTags.length === 0) return UI.ErrorMessage($1f04f025e20ce30abc71521ae440de01$var$translations.notEnoughTribesSideOne);
if (sideTwoTags.length === 0) return UI.ErrorMessage($1f04f025e20ce30abc71521ae440de01$var$translations.notEnoughTribesSideTwo);
const fromInputs = document.querySelectorAll(("").concat($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR, " form #").concat($1f04f025e20ce30abc71521ae440de01$var$FROM_INPUT_ID, " input"));
if (sideOneTags.length === 0) return UI.ErrorMessage($813af46890790f24$var$translations.notEnoughTribesSideOne);
if (sideTwoTags.length === 0) return UI.ErrorMessage($813af46890790f24$var$translations.notEnoughTribesSideTwo);
const fromInputs = document.querySelectorAll(`${$20636c16dad2c11a$export$21d4bed11ae27f0b} form #${$813af46890790f24$var$FROM_INPUT_ID} input`);
let ennobledAtGTE;
if (fromInputs.length === 2 && fromInputs[0].value && fromInputs[1].value) {
ennobledAtGTE = new Date(("").concat(fromInputs[0].value, "T").concat(fromInputs[1].value, ":00"));
}
const toInputs = document.querySelectorAll(("").concat($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR, " form #").concat($1f04f025e20ce30abc71521ae440de01$var$TO_INPUT_ID, " input"));
if (fromInputs.length === 2 && fromInputs[0].value && fromInputs[1].value) ennobledAtGTE = new Date(`${fromInputs[0].value}T${fromInputs[1].value}:00`);
const toInputs = document.querySelectorAll(`${$20636c16dad2c11a$export$21d4bed11ae27f0b} form #${$813af46890790f24$var$TO_INPUT_ID} input`);
let ennobledAtLTE;
if (toInputs.length === 2 && toInputs[0].value && toInputs[1].value) {
ennobledAtLTE = new Date(("").concat(toInputs[0].value, "T").concat(toInputs[1].value, ":00"));
}
e.target.querySelectorAll('button').forEach(button => {
if (toInputs.length === 2 && toInputs[0].value && toInputs[1].value) ennobledAtLTE = new Date(`${toInputs[0].value}T${toInputs[1].value}:00`);
e.target.querySelectorAll('button').forEach((button)=>{
button.disabled = true;
});
try {
const {tribes} = await $3af05e958b2a20a26445518aba292c50$export$default({
query: $1f04f025e20ce30abc71521ae440de01$var$TRIBES_QUERY,
const { tribes: tribes } = await $902f167bfdc7b30b$export$2e2bcd8739ae039({
query: $813af46890790f24$var$TRIBES_QUERY,
variables: {
server: $1f04f025e20ce30abc71521ae440de01$var$SERVER,
server: $813af46890790f24$var$SERVER,
filter: {
tag: [...sideOneTags, ...sideTwoTags]
tag: [
...sideOneTags,
...sideTwoTags
]
}
}
});
const sideOneTribes = tribes.items.filter(item => sideOneTags.some(tag => item.tag === tag)).map(tribe => tribe.id);
const sideTwoTribes = tribes.items.filter(item => sideTwoTags.some(tag => item.tag === tag)).map(tribe => tribe.id);
const {sideOneEnnoblements, sideTwoEnnoblements} = await $3af05e958b2a20a26445518aba292c50$export$default({
query: $1f04f025e20ce30abc71521ae440de01$var$ENNOBLEMENTS_QUERY,
const sideOneTribes = tribes.items.filter((item)=>sideOneTags.some((tag)=>item.tag === tag
)
).map((tribe)=>tribe.id
);
const sideTwoTribes = tribes.items.filter((item)=>sideTwoTags.some((tag)=>item.tag === tag
)
).map((tribe)=>tribe.id
);
const { sideOneEnnoblements: sideOneEnnoblements , sideTwoEnnoblements: sideTwoEnnoblements } = await $902f167bfdc7b30b$export$2e2bcd8739ae039({
query: $813af46890790f24$var$ENNOBLEMENTS_QUERY,
variables: {
server: $1f04f025e20ce30abc71521ae440de01$var$SERVER,
server: $813af46890790f24$var$SERVER,
sideOneFilter: {
newOwnerTribeID: sideOneTribes,
oldOwnerTribeID: sideTwoTribes,
ennobledAtGTE,
ennobledAtLTE
ennobledAtGTE: ennobledAtGTE,
ennobledAtLTE: ennobledAtLTE
},
sideTwoFilter: {
newOwnerTribeID: sideTwoTribes,
oldOwnerTribeID: sideOneTribes,
ennobledAtGTE,
ennobledAtLTE
ennobledAtGTE: ennobledAtGTE,
ennobledAtLTE: ennobledAtLTE
}
}
});
console.log('sideOneEnnoblements', sideOneEnnoblements, 'sideTwoEnnoblements', sideTwoEnnoblements);
$1f04f025e20ce30abc71521ae440de01$var$showResult(sideOneEnnoblements.total, sideTwoEnnoblements.total);
$813af46890790f24$var$showResult(sideOneEnnoblements.total, sideTwoEnnoblements.total);
} catch (error) {
console.log('handleFormSubmit', error);
}
e.target.querySelectorAll('button').forEach(button => {
e.target.querySelectorAll('button').forEach((button)=>{
button.disabled = false;
});
};
const $1f04f025e20ce30abc71521ae440de01$var$showWarStatsForm = e => {
const html = ("\n <form>\n <h1 style=\"margin-bottom: 0px; text-align: center;\"><a href=\"").concat($d147509fefd1cb8b3b83e8f38f763543$export$buildURLToServerPage($1f14636dcc53402ba1b7661b758ca0aa$export$default($1f04f025e20ce30abc71521ae440de01$var$SERVER), $1f04f025e20ce30abc71521ae440de01$var$SERVER), "\">TWHelp</a></h1>\n <h3 style=\"margin-bottom: 10px; margin-top: 0;\">").concat($1f04f025e20ce30abc71521ae440de01$var$translations.devNote, "</h3>\n <div id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$RESULT_CONTAINER_ID, "\">\n </div>\n <div style=\"margin-bottom: 10px;\">\n <div id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$FROM_INPUT_ID, "\">\n <label>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.from, ": </label>\n <input type=\"date\" required />\n <input type=\"time\" required />\n </div>\n <div id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$TO_INPUT_ID, "\">\n <label>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.to, ": </label>\n <input type=\"date\" required />\n <input type=\"time\" required />\n </div>\n </div>\n <div style=\"display: flex; justify-content: space-between; margin-bottom: 10px; min-width: 800px;\">\n <div>\n <h3>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.sideOne, "</h3>\n <div id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_INPUT_CONTAINER_ID, "\">\n </div>\n <button id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_BUTTON_ID, "\" class=\"btn\" type=\"button\">").concat($1f04f025e20ce30abc71521ae440de01$var$translations.addTribe, "</button>\n </div>\n <div style=\"margin: 0 5px;\"></div>\n <div>\n <h3>").concat($1f04f025e20ce30abc71521ae440de01$var$translations.sideTwo, "</h3>\n <div id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_INPUT_CONTAINER_ID, "\">\n </div>\n <button id=\"").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_BUTTON_ID, "\" class=\"btn\" type=\"button\">").concat($1f04f025e20ce30abc71521ae440de01$var$translations.addTribe, "</button>\n </div>\n </div>\n <div style=\"text-align: center;\">\n <button class=\"btn\" type=\"submit\">").concat($1f04f025e20ce30abc71521ae440de01$var$translations.generateWarStats, "</button>\n </div>\n </form>\n ");
$6412e4d8722bc72f55b3c382206290ed$export$default({
title: $1f04f025e20ce30abc71521ae440de01$var$translations.warStatsGenerator,
};
const $813af46890790f24$var$showWarStatsForm = (e)=>{
const html = `
<form>
<h1 style="margin-bottom: 0px; text-align: center;"><a href="${$f3b273bd698d94bc$export$5d5850cc00079a21($5b3edb3901c8177a$export$2e2bcd8739ae039($813af46890790f24$var$SERVER), $813af46890790f24$var$SERVER)}">TWHelp</a></h1>
<h3 style="margin-bottom: 10px; margin-top: 0;">${$813af46890790f24$var$translations.devNote}</h3>
<div id="${$813af46890790f24$var$RESULT_CONTAINER_ID}">
</div>
<div style="margin-bottom: 10px;">
<div id="${$813af46890790f24$var$FROM_INPUT_ID}">
<label>${$813af46890790f24$var$translations.from}: </label>
<input type="date" required />
<input type="time" required />
</div>
<div id="${$813af46890790f24$var$TO_INPUT_ID}">
<label>${$813af46890790f24$var$translations.to}: </label>
<input type="date" required />
<input type="time" required />
</div>
</div>
<div style="display: flex; justify-content: space-between; margin-bottom: 10px; min-width: 800px;">
<div>
<h3>${$813af46890790f24$var$translations.sideOne}</h3>
<div id="${$813af46890790f24$var$SIDE_ONE_INPUT_CONTAINER_ID}">
</div>
<button id="${$813af46890790f24$var$SIDE_ONE_BUTTON_ID}" class="btn" type="button">${$813af46890790f24$var$translations.addTribe}</button>
</div>
<div style="margin: 0 5px;"></div>
<div>
<h3>${$813af46890790f24$var$translations.sideTwo}</h3>
<div id="${$813af46890790f24$var$SIDE_TWO_INPUT_CONTAINER_ID}">
</div>
<button id="${$813af46890790f24$var$SIDE_TWO_BUTTON_ID}" class="btn" type="button">${$813af46890790f24$var$translations.addTribe}</button>
</div>
</div>
<div style="text-align: center;">
<button class="btn" type="submit">${$813af46890790f24$var$translations.generateWarStats}</button>
</div>
</form>
`;
$20636c16dad2c11a$export$2e2bcd8739ae039({
title: $813af46890790f24$var$translations.warStatsGenerator,
id: 'warStats',
html,
e
html: html,
e: e
});
document.querySelector(("").concat($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR, " form #").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_BUTTON_ID)).addEventListener('click', $1f04f025e20ce30abc71521ae440de01$var$createAddTribeHandler(document.querySelector('#' + $1f04f025e20ce30abc71521ae440de01$var$SIDE_ONE_INPUT_CONTAINER_ID)));
document.querySelector(("").concat($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR, " form #").concat($1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_BUTTON_ID)).addEventListener('click', $1f04f025e20ce30abc71521ae440de01$var$createAddTribeHandler(document.querySelector('#' + $1f04f025e20ce30abc71521ae440de01$var$SIDE_TWO_INPUT_CONTAINER_ID)));
document.querySelector(("").concat($6412e4d8722bc72f55b3c382206290ed$export$POPUP_SELECTOR, " form")).addEventListener('submit', $1f04f025e20ce30abc71521ae440de01$var$handleFormSubmit);
};
const $1f04f025e20ce30abc71521ae440de01$var$renderUI = () => {
document.querySelector(`${$20636c16dad2c11a$export$21d4bed11ae27f0b} form #${$813af46890790f24$var$SIDE_ONE_BUTTON_ID}`).addEventListener('click', $813af46890790f24$var$createAddTribeHandler(document.querySelector('#' + $813af46890790f24$var$SIDE_ONE_INPUT_CONTAINER_ID)));
document.querySelector(`${$20636c16dad2c11a$export$21d4bed11ae27f0b} form #${$813af46890790f24$var$SIDE_TWO_BUTTON_ID}`).addEventListener('click', $813af46890790f24$var$createAddTribeHandler(document.querySelector('#' + $813af46890790f24$var$SIDE_TWO_INPUT_CONTAINER_ID)));
document.querySelector(`${$20636c16dad2c11a$export$21d4bed11ae27f0b} form`).addEventListener('submit', $813af46890790f24$var$handleFormSubmit);
};
const $813af46890790f24$var$renderUI = ()=>{
const div = document.createElement('div');
const button = document.createElement('button');
button.innerHTML = $1f04f025e20ce30abc71521ae440de01$var$translations.generateWarStats;
button.addEventListener('click', $1f04f025e20ce30abc71521ae440de01$var$showWarStatsForm);
button.innerHTML = $813af46890790f24$var$translations.generateWarStats;
button.addEventListener('click', $813af46890790f24$var$showWarStatsForm);
div.appendChild(button);
document.querySelector('#wars_ranking_table').parentElement.prepend(div);
};
(function () {
};
(function() {
try {
$1f04f025e20ce30abc71521ae440de01$var$renderUI();
$813af46890790f24$var$renderUI();
} catch (error) {
console.log('war stats', error);
}
})();
})();
})();

View File

@ -1,6 +1,5 @@
const path = require('path');
const fs = require('fs');
const _ = require('lodash');
const versions = require('./versions.json');
const srcDirectory = path.join(__dirname, 'src');
@ -10,12 +9,12 @@ scripts.forEach(f => {
if (!version) {
return;
}
[
path.join(__dirname, 'dist', f),
path.join(__dirname, 'dist', 'quickbar', f),
path.join(__dirname, 'dist', 'quickbar', f)
].forEach(p => {
const fileContent = fs.readFileSync(p);
const compile = _.template(fileContent);
fs.writeFileSync(p, compile({ version }));
fs.writeFileSync(p, fileContent.toString('utf-8').replace(/<%= version %>/g, version));
});
});

View File

@ -9,7 +9,7 @@ import { calcDistanceBetweenTwoPoints } from './utils/math';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/bonusBarbarianVillageFinder.js
// @version ${version}
// @version <%= version %>
// @description Bonus barbarian village finder
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*

View File

@ -6,7 +6,7 @@ import wait from './utils/wait';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/commandRenamer.js
// @version ${version}
// @version <%= version %>
// @description Command renamer
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*mode=incomings*

View File

@ -13,7 +13,7 @@ import { buildURLToServerPage } from './utils/twhelp';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/dailyAchievements.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/dailyAchievements.js
// @version ${version}
// @version <%= version %>
// @description Daily achievements
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=info_player&mode=awards*

View File

@ -14,7 +14,7 @@ import calcLoyalty from './utils/calcLoyalty';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedMapPopup.js
// @version ${version}
// @version <%= version %>
// @description Extended map popup
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*

View File

@ -25,7 +25,7 @@ import { setItem, getItem } from './utils/localStorage';
// @namespace https://github.com/tribalwarshelp/scripts
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedPlayerProfile.js
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedPlayerProfile.js
// @version ${version}
// @version <%= version %>
// @description Extended player profile
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=info_player*

View File

@ -25,7 +25,7 @@ import * as twutils from './utils/tribalwars';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedTribeProfile.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedTribeProfile.js
// @version ${version}
// @version <%= version %>
// @description Extended tribe profile
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=info_ally*

View File

@ -17,7 +17,7 @@ import showEnnoblementsPopup from './common/showEnnoblementsPopup';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedVillageProfile.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/extendedVillageProfile.js
// @version ${version}
// @version <%= version %>
// @description Extended village profile
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=info_village*

View File

@ -7,7 +7,7 @@ import wait from './utils/wait';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/inADayTribeRankingGenerator.js
// @version ${version}
// @version <%= version %>
// @description 'In A Day' tribe ranking generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=in_a_day*

View File

@ -13,7 +13,7 @@ import loadTranslations from './i18n/latestEnnoblements';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/latestEnnoblements.js
// @version ${version}
// @version <%= version %>
// @description Shows the latest ennoblements
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*

View File

@ -6,7 +6,7 @@ import { getItem, setItem } from './utils/localStorage';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/mapCoordsPicker.js
// @version ${version}
// @version <%= version %>
// @description Map coords picker
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=map*

View File

@ -10,7 +10,7 @@ import showPopup, { POPUP_SELECTOR } from './utils/showPopup';
// @namespace https://github.com/tribalwarshelp/scripts
// @updateURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @downloadURL https://raw.githubusercontent.com/tribalwarshelp/scripts/master/dist/warStatsGenerator.js
// @version ${version}
// @version <%= version %>
// @description War stats generator
// @author Kichiyaki https://dwysokinski.me/
// @match *://*/game.php*screen=ranking*mode=wars*