Send resources by thousands
This commit is contained in:
@@ -119,15 +119,27 @@ function countUpMs() {
|
||||
+ Math.floor(arrivalDate.getMilliseconds() / 100);
|
||||
}
|
||||
|
||||
function handleDomContentLoaded() {
|
||||
/* Remove iframe banner */
|
||||
document.getElementById("banner_skyscraper").remove();
|
||||
}
|
||||
|
||||
function main() {
|
||||
/* Exit immediately if extension has already been loaded */
|
||||
let kaplus = document.getElementById("kaplus-marker");
|
||||
if (kaplus) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Exit immediately if not on game page */
|
||||
let layCastleTopElements = document.getElementsByClassName("lay_castle_top");
|
||||
if (layCastleTopElements.length === 0) {
|
||||
return;
|
||||
}
|
||||
window.addEventListener("DOMContentLoaded", handleDomContentLoaded);
|
||||
|
||||
/* Remove iframe banner */
|
||||
document.getElementById("banner_skyscraper").remove();
|
||||
/* Add extension marker */
|
||||
document.body.appendChild(createCustomElement("div", {"id": "kaplus-marker"}, null, {"display": "none"}));
|
||||
|
||||
/* Improve navbar icons */
|
||||
let shortcutElements = layCastleTopElements[0].getElementsByClassName("shortcut_element");
|
||||
@@ -298,7 +310,6 @@ function main() {
|
||||
let firstInput = form.getElementsByTagName("input")[0];
|
||||
form.insertBefore(table, firstInput);
|
||||
form.addEventListener("submit", function (event) {
|
||||
event.preventDefault();
|
||||
let formData = new FormData(this);
|
||||
let attackCount = parseInt(formData.get("occurrences").toString());
|
||||
formData.delete("occurrences");
|
||||
@@ -317,8 +328,9 @@ function main() {
|
||||
});
|
||||
}
|
||||
|
||||
/* Fix select bug in market */
|
||||
/* Market sending page */
|
||||
if (section === "build_market" && (module === "send" || module === null)) {
|
||||
/* Fix select bug in target village select */
|
||||
let select = document.getElementsByName("village_name")[0];
|
||||
select.removeAttribute("onchange");
|
||||
select.addEventListener("change", function () {
|
||||
@@ -333,6 +345,51 @@ function main() {
|
||||
sendY.value = xy[1];
|
||||
}
|
||||
});
|
||||
|
||||
/* Add form to send resources by thousands */
|
||||
let sendForm = document.getElementsByTagName("form")[0]
|
||||
sendForm.addEventListener("submit", function () {
|
||||
let inputs = this.getElementsByTagName("input");
|
||||
for (let i = 0; i < inputs.length; i ++) {
|
||||
if (inputs[i].getAttribute("name").endsWith("_k")) {
|
||||
inputs[i].setAttribute("name", "");
|
||||
}
|
||||
}
|
||||
});
|
||||
let sendFormTables = sendForm.getElementsByTagName("table");
|
||||
let newTable = sendFormTables[0].cloneNode(true);
|
||||
newTable.getElementsByTagName("th")[0].textContent = "Ressources par milliers";
|
||||
let resCells = newTable.getElementsByTagName("td");
|
||||
for (let i = 0; i < resCells.length; i ++) {
|
||||
let resInput = resCells[i].getElementsByTagName("input")[0];
|
||||
let resName = resInput.getAttribute("name");
|
||||
let resNameK = resInput.getAttribute("name") + "_k";
|
||||
resInput.setAttribute("name", resNameK);
|
||||
resInput.addEventListener("change", function () {
|
||||
document.getElementsByName(resName)[0].value = 1000 * parseInt(this.value);
|
||||
});
|
||||
let spanInput = resCells[i].getElementsByTagName("span")[0];
|
||||
let resMax = spanInput.textContent.replace(/\(/, "").replace("\)", "").replace(/\./, "");
|
||||
let rMax = Math.floor(parseInt(resMax) / 1000);
|
||||
spanInput.setAttribute(
|
||||
"onclick",
|
||||
"insertNum('kingsage', '" + resNameK + "', '" + rMax.toString() + "'); " +
|
||||
"insertNum('kingsage', '" + resName + "', '" + (1000 * rMax).toString() + "');"
|
||||
)
|
||||
spanInput.textContent = "(" + rMax.toString() + "K)";
|
||||
}
|
||||
sendForm.insertBefore(newTable, sendFormTables[0]);
|
||||
sendForm.insertBefore(createCustomElement("br"), sendFormTables[1]);
|
||||
|
||||
/* Set inputs type=number */
|
||||
let sendInputs = sendForm.getElementsByTagName("input");
|
||||
for (let i = 0; i < sendInputs.length; i ++) {
|
||||
if (sendInputs[i].name.startsWith("send_")) {
|
||||
sendInputs[i].setAttribute("type", "number");
|
||||
sendInputs[i].value = "";
|
||||
sendInputs[i].style.width = "65px";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Improve attacks display */
|
||||
|
||||
Reference in New Issue
Block a user