Fix end movement bug

This commit is contained in:
Catalin Constantin Mititiuc 2024-04-30 14:58:19 -07:00
parent bbd29206cd
commit 6811f68b36
2 changed files with 7 additions and 22 deletions

View File

@ -25,10 +25,6 @@ function getClones(svg, counter) {
return svg.querySelectorAll(`.counter.clone${dataSelector(counter)}`); return svg.querySelectorAll(`.counter.clone${dataSelector(counter)}`);
} }
function getCounterAndClones(svg, counter) {
return svg.querySelectorAll(`.counter${dataSelector(counter)}`);
}
export function getAllCounters(container) { export function getAllCounters(container) {
return container.querySelectorAll('g.counter[data-allegiance][data-number]'); return container.querySelectorAll('g.counter[data-allegiance][data-number]');
} }
@ -42,10 +38,7 @@ export function getTrace(svg, counter) {
} }
export function place(svg, selected, cell) { export function place(svg, selected, cell) {
let points, if (svg.querySelector('.grid').contains(selected)) {
counterNodeList = getCounterAndClones(svg, selected);
if (counterNodeList.length > 0 && svg.querySelector('.grid').contains(selected)) {
let trace = svg.querySelector(traceSelector(selected)); let trace = svg.querySelector(traceSelector(selected));
let prevCoords = [ let prevCoords = [
@ -70,7 +63,8 @@ export function place(svg, selected, cell) {
}); });
let previous = getCellPosition(clone.parentElement), let previous = getCellPosition(clone.parentElement),
current = getCellPosition(selected.parentElement); current = getCellPosition(selected.parentElement),
points;
if (!trace) { if (!trace) {
trace = document.createElementNS(svgns, 'polyline'); trace = document.createElementNS(svgns, 'polyline');
@ -98,20 +92,15 @@ export function removeClones(svg, counter) {
} }
export function endMove(svg, counter) { export function endMove(svg, counter) {
const trace = svg.querySelector(traceSelector(counter)), const proneCounter = counter.querySelector('[href="#counter-prone"]');
proneCounter = counter.querySelector('[href="#counter-prone"]');
if (trace) {
trace.remove();
}
delete counter.dataset.previous;
if (proneCounter) { if (proneCounter) {
proneCounter.dataset.preexisting = ''; proneCounter.dataset.preexisting = '';
} }
removeClones(counter); svg.querySelector(traceSelector(counter))?.remove();
delete counter.dataset.previous;
removeClones(svg, counter);
} }
export function hasProne(counter) { export function hasProne(counter) {

View File

@ -30,10 +30,6 @@ function getLockedSightLine(svg) {
return svg.querySelector('line.sight-line:not(.active)'); return svg.querySelector('line.sight-line:not(.active)');
} }
function getSightLine() {
return sightLine.getSightLine();
}
function getActiveSightLine(svg) { function getActiveSightLine(svg) {
return svg.querySelector('line.sight-line.active'); return svg.querySelector('line.sight-line.active');
} }