Add tenth of seconds in attack sending page
This commit is contained in:
@@ -1,3 +1,8 @@
|
||||
let tomorrow = new Date(new Date().getTime() + 24*60*60*1000);
|
||||
tomorrow.setHours(0, 0, 0, 0);
|
||||
let afterTomorrow = new Date(tomorrow.getTime() + 24*60*60*1000);
|
||||
let movingDuration = 0;
|
||||
|
||||
function num(s) {
|
||||
return parseInt(s.replace(".", ""));
|
||||
}
|
||||
@@ -79,6 +84,25 @@ function shortcutElementReplace(elt, img, text) {
|
||||
}
|
||||
}
|
||||
|
||||
function countUpMs() {
|
||||
let arrivalDate = new Date(new Date().getTime() + movingDuration * 1000);
|
||||
let prefix = "";
|
||||
if (arrivalDate >= afterTomorrow) {
|
||||
prefix = "le " + arrivalDate.getDate() + "." + arrivalDate.getMonth() + " ";
|
||||
} else if (arrivalDate > tomorrow) {
|
||||
prefix = "demain ";
|
||||
}
|
||||
document.getElementById("countup-time-ms").textContent = prefix
|
||||
+ "à "
|
||||
+ arrivalDate.getHours().toString().padStart(2, "0")
|
||||
+ ":"
|
||||
+ arrivalDate.getMinutes().toString().padStart(2, "0")
|
||||
+ ":"
|
||||
+ arrivalDate.getSeconds().toString().padStart(2, "0")
|
||||
+ ":"
|
||||
+ Math.floor(arrivalDate.getMilliseconds() / 100);
|
||||
}
|
||||
|
||||
function main() {
|
||||
/* Exit immediately if not on game page */
|
||||
let layCastleTopElements = document.getElementsByClassName("lay_castle_top");
|
||||
@@ -155,34 +179,48 @@ function main() {
|
||||
villagePointsRow.after(unitPointsRow);
|
||||
}
|
||||
|
||||
/* Allow multiple attacks */
|
||||
/* Units sending page */
|
||||
if (section === "build_barracks" && module === "command" && sub === "send") {
|
||||
/* Improve countup time cell */
|
||||
let oldCell = document.getElementById("countup-time");
|
||||
let hms = oldCell.parentElement.previousElementSibling.getElementsByTagName("td")[1].textContent.split(":");
|
||||
movingDuration = parseInt(hms[0]) * 3600 + parseInt(hms[1]) * 60 + parseInt(hms[2]) ;
|
||||
let newRow = document.createElement("tr");
|
||||
let newLeftCell = document.createElement("td");
|
||||
newLeftCell.textContent = "Arrivée:";
|
||||
newRow.appendChild(newLeftCell);
|
||||
let newRightCell = document.createElement("td");
|
||||
newRightCell.setAttribute("id", "countup-time-ms");
|
||||
newRow.appendChild(newRightCell);
|
||||
oldCell.parentElement.parentElement.insertBefore(newRow, oldCell.parentElement);
|
||||
oldCell.parentElement.style.display = "none";
|
||||
setInterval(countUpMs, 100);
|
||||
|
||||
/* Allow multiple occurrences of send */
|
||||
let table = document.createElement("table");
|
||||
table.classList.add("borderlist");
|
||||
let tbody = document.createElement("tbody");
|
||||
let tr = document.createElement("tr");
|
||||
let th = document.createElement("th");
|
||||
th.textContent = "Nombre d'attaques:";
|
||||
th.textContent = "Nombre d'occurrences:";
|
||||
tr.appendChild(th)
|
||||
let td = document.createElement("td");
|
||||
let input = document.createElement("input");
|
||||
input.setAttribute("type", "number");
|
||||
input.setAttribute("name", "attack_count");
|
||||
input.setAttribute("name", "occurrences");
|
||||
input.setAttribute("value", "1");
|
||||
td.appendChild(input);
|
||||
tr.appendChild(td);
|
||||
tbody.appendChild(tr);
|
||||
table.appendChild(tbody);
|
||||
|
||||
let form = document.getElementsByTagName("form")[0];
|
||||
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("attack_count").toString());
|
||||
formData.delete("attack_count");
|
||||
|
||||
let attackCount = parseInt(formData.get("occurrences").toString());
|
||||
formData.delete("occurrences");
|
||||
let sent = 0;
|
||||
for (let i = 0; i < attackCount; i++) {
|
||||
let xhr = new XMLHttpRequest();
|
||||
|
||||
Reference in New Issue
Block a user