From 62a745d59f27c55f2c3689d2bebdc11684621e7b Mon Sep 17 00:00:00 2001
From: Catalin Mititiuc
Date: Wed, 24 Apr 2024 15:50:59 -0700
Subject: Change troop-number and troop-allegiance references to just number
and allegiance
---
src/modules/counter.js | 61 +++++++++++++++++++++-----------------------------
1 file changed, 25 insertions(+), 36 deletions(-)
(limited to 'src/modules/counter.js')
diff --git a/src/modules/counter.js b/src/modules/counter.js
index f7b1d56..591f09b 100644
--- a/src/modules/counter.js
+++ b/src/modules/counter.js
@@ -7,12 +7,8 @@ export default class Counter {
this.selectedClass = 'selected';
}
- dataSelector(troopNumber, allegiance) {
- return `[data-number="${troopNumber}"][data-allegiance="${allegiance}"]`;
- }
-
- selector(troopNumber, allegiance) {
- return `.counter${this.dataSelector(troopNumber, allegiance)}`;
+ dataSelector({ dataset: { allegiance, number }}) {
+ return `[data-number="${number}"][data-allegiance="${allegiance}"]`;
}
position(x, y) {
@@ -23,28 +19,24 @@ export default class Counter {
return `.counter[data-x="${x}"][data-x="${y}"]`;
}
- traceSelector(troopNumber, allegiance) {
- return `polyline.move-trace${this.dataSelector(troopNumber, allegiance)}`;
- }
-
- getCounters() {
- return this.svg.querySelectorAll(`.counter[data-allegiance][data-number]:not(.clone)`);
+ traceSelector(counter) {
+ return `polyline.move-trace${this.dataSelector(counter)}`;
}
- getClones(al, n) {
- return this.svg.querySelectorAll(`.counter.clone[data-allegiance="${al}"][data-number="${n}"]`);
+ getClones(counter) {
+ return this.svg.querySelectorAll(`.counter.clone${this.dataSelector(counter)}`);
}
- getCounter(al, n) {
- return this.svg.querySelector(`.counter[data-allegiance="${al}"][data-number="${n}"]:not(.clone)`);
+ getCounter(selected) {
+ return this.svg.querySelector(`.counter${this.dataSelector(selected)}:not(.clone)`);
}
- getCounterAndClones(al, n) {
- return this.svg.querySelectorAll(`.counter[data-allegiance="${al}"][data-number="${n}"]`);
+ getCounterAndClones(counter) {
+ return this.svg.querySelectorAll(`.counter${this.dataSelector(counter)}`);
}
- getTrace({ dataset: { allegiance, number } }) {
- return this.svg.querySelector(this.traceSelector(number, allegiance));
+ getTrace(counter) {
+ return this.svg.querySelector(this.traceSelector(counter));
}
getCellPosition(cell) {
@@ -65,13 +57,13 @@ export default class Counter {
}
place(selected, cell) {
- const { allegiance: troopAllegiance, number: troopNumber } = selected.dataset;
-
let points,
- counterNodeList = this.getCounterAndClones(troopAllegiance, troopNumber);
+ counterNodeList = this.getCounterAndClones(selected);
+
+ console.log(selected, counterNodeList);
if (counterNodeList.length > 0 && selected.parentElement.hasAttribute('data-x')) {
- let trace = this.svg.querySelector(this.traceSelector(troopNumber, troopAllegiance));
+ let trace = this.svg.querySelector(this.traceSelector(selected));
let prevCoords = [
selected.parentElement.dataset.x,
@@ -102,8 +94,8 @@ export default class Counter {
points = `${previous.x},${previous.y} ${current.x},${current.y}`;
- trace.dataset.number = troopNumber;
- trace.dataset.allegiance = troopAllegiance;
+ trace.dataset.number = selected.dataset.number;
+ trace.dataset.allegiance = selected.dataset.allegiance;
trace.classList.add('move-trace');
this.getBoard().prepend(trace);
@@ -118,28 +110,25 @@ export default class Counter {
}
}
- removeClones({ dataset: { allegiance, number }}) {
- this.getClones(allegiance, number).forEach(el => {
- el.remove()
- });
+ removeClones(counter) {
+ this.getClones(counter).forEach(c => c.remove());
}
- endMove(el) {
- const { number, allegiance } = el.dataset,
- trace = this.svg.querySelector(this.traceSelector(number, allegiance)),
- proneCounter = el.querySelector('[href="#counter-prone"]');
+ endMove(counter) {
+ const trace = this.svg.querySelector(this.traceSelector(counter)),
+ proneCounter = counter.querySelector('[href="#counter-prone"]');
if (trace) {
trace.remove();
}
- delete el.dataset.previous;
+ delete counter.dataset.previous;
if (proneCounter) {
proneCounter.dataset.preexisting = '';
}
- this.removeClones(el);
+ this.removeClones(counter);
}
hasProne(counter) {
--
cgit v1.2.3