2 Commits

Author SHA1 Message Date
1f3addf328 Fix bug retrieving token
Some checks failed
Continuous Deployment / lint (push) Successful in 30s
Continuous Deployment / deploy-chrome (push) Failing after 19s
Continuous Deployment / deploy-firefox (push) Successful in 1m25s
2025-12-07 16:28:09 +01:00
3dd67d776b Fix bug non found villages
Some checks failed
Continuous Deployment / lint (push) Successful in 30s
Continuous Deployment / deploy-chrome (push) Failing after 19s
Continuous Deployment / deploy-firefox (push) Successful in 2m1s
2025-12-07 14:12:20 +01:00
4 changed files with 64 additions and 60 deletions

View File

@@ -1,6 +1,14 @@
# Changelog
## 1.12.4 (2026-12-07)
## 1.12.3 (2026-12-07)
- correction du bug de récupération du token
## 1.12.2 (2026-12-07)
- correction du bug sur les villages non trouvés
## 1.12.1 (2026-12-07)
- ajout du planificateur autonome d'attaques

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 3,
"name": "KAplus",
"version": "1.12.1",
"version": "1.12.3",
"developer": {
"name": "Samuel Campos",

View File

@@ -5,8 +5,8 @@
"firefox"
],
"release_notes": {
"fr": "- ajout du planificateur autonome d'attaques",
"en-US": "- add autonomous attack planer"
"fr": "- correction du bug de récupération du token",
"en-US": "- fix bug retrieving token"
}
}
}

View File

@@ -122,17 +122,13 @@ function selectVillage(selectRef, inputXRef, inputYRef) {
}
}
function storeOrderToken(ownVillages, targetVillage) {
function storeOrderToken(ownVillages, targetVillage, recursiveIndex) {
let orderToken = sessionStorage.getItem("orderToken");
if (orderToken !== null) {
return;
}
let breakLoop = false;
for (let villageId in ownVillages) {
if (breakLoop === true) {
return;
}
let villageId = Object.keys(ownVillages)[recursiveIndex];
let xhrOrder = new XMLHttpRequest();
xhrOrder.addEventListener("readystatechange", function () {
if (xhrOrder.readyState === xhrOrder.DONE) {
@@ -149,6 +145,9 @@ function storeOrderToken(ownVillages, targetVillage) {
}
}
if (unit === null) {
if (recursiveIndex < ownVillages.length - 1) {
storeOrderToken(ownVillages, targetVillage, recursiveIndex + 1);
}
return;
}
@@ -178,12 +177,11 @@ function storeOrderToken(ownVillages, targetVillage) {
xhrOrder.open("GET", "/?village=" + villageId + "&s=build_barracks");
xhrOrder.send();
}
}
function storeTargetVillage(ownVillages) {
let targetVillage = sessionStorage.getItem("targetVillage");
if (targetVillage !== null) {
storeOrderToken(ownVillages, JSON.parse(targetVillage));
storeOrderToken(ownVillages, JSON.parse(targetVillage), 0);
return;
}
@@ -193,7 +191,7 @@ function storeTargetVillage(ownVillages) {
if (xhr.readyState === xhr.DONE) {
let parser = new DOMParser();
let doc = parser.parseFromString(xhr.responseText, "text/html");
let cells = doc.getElementsByClassName("occupied range");
let cells = doc.getElementsByClassName("occupied");
for (let i = 0; i < cells.length; i ++) {
let links = cells[i].getElementsByTagName("a");
if (links.length === 0) {
@@ -206,7 +204,7 @@ function storeTargetVillage(ownVillages) {
let villageXY = links[0].getAttribute("onmouseover").replace(/^.*(\d{3}\|\d{3}).*$/, "$1").split("|");
targetVillage = {x: parseInt(villageXY[0]), y: parseInt(villageXY[1])};
sessionStorage.setItem("targetVillage", JSON.stringify(targetVillage));
storeOrderToken(ownVillages, targetVillage);
storeOrderToken(ownVillages, targetVillage, 0);
break;
}
}
@@ -833,10 +831,8 @@ function handleAutoPlanerSubmit(event) {
let doc = parser.parseFromString(xhr.responseText, "text/html");
let mapContainer = doc.getElementById("mapContainer");
let map = mapContainer.getElementsByTagName("table")[1];
let mapRows = map.getElementsByTagName("tr");
let mapRow = mapRows[Math.floor(mapRows.length / 2) - 1];
let mapCells = mapRow.getElementsByTagName("td");
let mapCell = mapCells[Math.floor(mapCells.length / 2) + 1];
let tbody = map.getElementsByTagName("tbody")[0];
let mapCell = tbody.children[6].children[8];
let mapLinks = mapCell.getElementsByTagName("a");
if (mapLinks.length === 0) {
autoPlanerError.textContent = "Opération impossible car le village cible n'existe pas!";