@thegraid/hexlib 1.3.8 → 1.3.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/game-play.d.ts +3 -1
  2. package/dist/game-play.d.ts.map +1 -1
  3. package/dist/game-play.js +6 -1
  4. package/dist/game-play.js.map +1 -1
  5. package/dist/game-setup.d.ts +1 -1
  6. package/dist/game-setup.js +2 -2
  7. package/dist/game-setup.js.map +1 -1
  8. package/dist/hex-intfs.d.ts +117 -51
  9. package/dist/hex-intfs.d.ts.map +1 -1
  10. package/dist/hex-intfs.js +80 -44
  11. package/dist/hex-intfs.js.map +1 -1
  12. package/dist/hex.d.ts +83 -78
  13. package/dist/hex.d.ts.map +1 -1
  14. package/dist/hex.js +97 -93
  15. package/dist/hex.js.map +1 -1
  16. package/dist/image-loader.d.ts +11 -5
  17. package/dist/image-loader.d.ts.map +1 -1
  18. package/dist/image-loader.js +16 -8
  19. package/dist/image-loader.js.map +1 -1
  20. package/dist/meeple.d.ts +3 -3
  21. package/dist/meeple.d.ts.map +1 -1
  22. package/dist/meeple.js +13 -13
  23. package/dist/meeple.js.map +1 -1
  24. package/dist/player-panel.js +4 -5
  25. package/dist/player-panel.js.map +1 -1
  26. package/dist/player.d.ts.map +1 -1
  27. package/dist/player.js +2 -1
  28. package/dist/player.js.map +1 -1
  29. package/dist/table.d.ts +124 -125
  30. package/dist/table.d.ts.map +1 -1
  31. package/dist/table.js +51 -79
  32. package/dist/table.js.map +1 -1
  33. package/dist/text-log.d.ts +8 -0
  34. package/dist/text-log.d.ts.map +1 -1
  35. package/dist/text-log.js +10 -1
  36. package/dist/text-log.js.map +1 -1
  37. package/dist/tile-source.d.ts.map +1 -1
  38. package/dist/tile-source.js +3 -2
  39. package/dist/tile-source.js.map +1 -1
  40. package/dist/tile.d.ts +36 -14
  41. package/dist/tile.d.ts.map +1 -1
  42. package/dist/tile.js +53 -27
  43. package/dist/tile.js.map +1 -1
  44. package/package.json +1 -1
package/dist/hex.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { C, F } from '@thegraid/common-lib';
2
2
  import { CenterText, CircleShape, NamedContainer } from "@thegraid/easeljs-lib";
3
3
  import { Container, Point } from "@thegraid/easeljs-module";
4
- import { H } from "./hex-intfs";
4
+ import { H, TopoEWC, TopoNSC } from "./hex-intfs";
5
5
  import { HexShape } from "./shapes";
6
6
  import { TP } from "./table-params";
7
7
  export const S_Resign = 'Hex@Resign';
@@ -51,17 +51,6 @@ export class Hex {
51
51
  throw err;
52
52
  }
53
53
  }
54
- /**
55
- * Location/size of Hex@[row, col]
56
- * @param radius [TP.hexRad] 'size' of hex; radius used in drawPolyStar(radius,,, H.dirRot[tiltDir])
57
- * @param topo [TP.useEwTopo ? H.EWxywh : H.NSxywh] TopoMetric to use
58
- * @param row [0]
59
- * @param col [0]
60
- * @returns \{ x, y, w, h, dxdc, dydr } of cell at [row, col]
61
- */
62
- static xywh(radius = TP.hexRad, topo = TP.useEwTopo ? H.EWxywh : H.NSxywh, row = 0, col = 0) {
63
- return topo(radius, row, col);
64
- }
65
54
  static aname(row, col) {
66
55
  return (row >= 0) ? `Hex@[${row},${col}]` : col == -1 ? S_Skip : S_Resign;
67
56
  }
@@ -79,17 +68,6 @@ export class Hex {
79
68
  this.col = col;
80
69
  this.links = {};
81
70
  }
82
- /** (x,y): center of hex; (width,height) of hex; scaled by radius if supplied
83
- * @param radius [TP.hexRad] 'size' of hex; radius used in drawPolyStar(radius,,, H.dirRot[tiltDir])
84
- * @param ewTopo [TP.useEwTopo] true -> suitable for ewTopo (has E & W [vertical] sides)
85
- * @param row [this.row]
86
- * @param col [this.col]
87
- * @returns \{ x, y, w, h, dxdc, dydr } of cell at [row, col]
88
- */
89
- xywh(radius = TP.hexRad, topo, row = this.row, col = this.col) {
90
- return Hex.xywh(radius, topo, row, col);
91
- }
92
- get xywh0() { return this.xywh(TP.hexRad); } // so can see xywh from debugger
93
71
  // _Aname: string;
94
72
  // get Aname() { return this._Aname; }
95
73
  // protected set Aname (name: string) { this._Aname = name; }
@@ -178,13 +156,6 @@ export class Hex {
178
156
  }
179
157
  return hex;
180
158
  }
181
- /** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
182
- radialDist(hex) {
183
- let unit = 1 / H.sqrt3; // so w = delta(col) = 1
184
- let { x: tx, y: ty } = this.xywh(unit), { x: hx, y: hy } = hex.xywh(unit);
185
- let dx = tx - hx, dy = ty - hy;
186
- return Math.sqrt(dx * dx + dy * dy);
187
- }
188
159
  }
189
160
  /**
190
161
  * Hex1 may be occupied by [tile?: MapTile, meep?: Tile.isMeep].
@@ -218,7 +189,9 @@ export class Hex1 extends Hex {
218
189
  if (unit !== undefined && Hex.isIHex2(this)) {
219
190
  unit.x = this.x;
220
191
  unit.y = this.y;
221
- this.mapCont.tileCont?.addChild(unit); // meep will go under tile [wut?]
192
+ this.mapCont.tileCont?.addChild(unit); // if tile over meep vvv
193
+ if (this.meep && this.meep !== unit)
194
+ this.meep.parent.addChild(this.meep);
222
195
  }
223
196
  }
224
197
  // from 13-dec-2024: projects should override as necessary;
@@ -298,7 +271,7 @@ export function Hex2Mixin(Base) {
298
271
  * - distText: initially distText.text = `${district}` slightly below center, BLACK
299
272
  */
300
273
  constructor(...args) {
301
- // here we inforce that derived class has identical Constructor!
274
+ // here we enforce that derived class has identical Constructor!
302
275
  // Alternative, we could pass the args [] directly, ie: super(args) !not spread!
303
276
  // new class constructor could parse/spread to get the bits they want,
304
277
  // then edit-in-place the args array to be compatible for this.constructorCode()
@@ -307,10 +280,10 @@ export function Hex2Mixin(Base) {
307
280
  this.constructorCode(map, row, col, Aname);
308
281
  return; // breakpoint able
309
282
  }
283
+ get radius() { return TP.hexRad; }
310
284
  implementsIHex2 = true;
311
285
  /** Child of mapCont.hexCont: HexCont holds hexShape(color), rcText, distText, capMark */
312
286
  cont = new HexCont(this); // Hex IS-A Hex0, HAS-A HexCont Container
313
- radius = TP.hexRad; // determines width & height
314
287
  hexShape = this.makeHexShape(); // shown on this.cont: colored hexagon
315
288
  get mapCont() { return this.map.mapCont; }
316
289
  get markCont() { return this.mapCont.markCont; }
@@ -348,7 +321,7 @@ export function Hex2Mixin(Base) {
348
321
  /** set rcText to identify 'row,col'
349
322
  * @param rcf fontSize and (y -= rcf/2);
350
323
  */
351
- setRcText(row, col, rcf = 26 * TP.hexRad / 60) {
324
+ setRcText(row, col, rcf = this.radius * 26 / 60) {
352
325
  const nf = (n) => `${n !== undefined ? (n === Math.floor(n) ? n : n.toFixed(1)) : ''}`;
353
326
  const rcs = `${nf(row)},${nf(col)}`;
354
327
  const rct = this.rcText = new CenterText(rcs, F.fontSpec(rcf), 'white');
@@ -360,7 +333,7 @@ export function Hex2Mixin(Base) {
360
333
  * @param dText distText
361
334
  * @param size fontSize & y-offset from center of hex
362
335
  */
363
- setDistText(dText = '', size = 20 * TP.hexRad / 60) {
336
+ setDistText(dText = '', size = this.radius / 3) {
364
337
  this.distText = new CenterText(dText, F.fontSpec(size));
365
338
  this.distText.y += size; // push it down
366
339
  this.cont.addChild(this.distText);
@@ -382,7 +355,7 @@ export function Hex2Mixin(Base) {
382
355
  const cont = this.cont, hs = this.hexShape;
383
356
  cont.addChildAt(hs, 0);
384
357
  cont.hitArea = hs;
385
- const { x, y, w, h } = this.xywh(this.radius, undefined, row, col); // include margin space between hexes
358
+ const { x, y } = this.xywh(this.radius, undefined, row, col); // include margin space between hexes
386
359
  cont.x = x;
387
360
  cont.y = y;
388
361
  // initialize cache bounds:
@@ -414,6 +387,24 @@ export function Hex2Mixin(Base) {
414
387
  this.hexShape.paint(color);
415
388
  this.reCache();
416
389
  }
390
+ /** (x,y): center of hex; (width,height) of hex; scaled by radius if supplied
391
+ * @param radius [TP.hexRad] 'size' of hex; radius used in drawPolyStar(radius,,, H.dirRot[tiltDir])
392
+ * @param ewTopo [TP.useEwTopo] true -> suitable for ewTopo (has E & W [vertical] sides)
393
+ * @param row [this.row]
394
+ * @param col [this.col]
395
+ * @returns \{ x, y, w, h, dxdc, dydr } of cell at [row, col]
396
+ */
397
+ xywh(radius = this.radius, topo = this.map.topo, row = this.row, col = this.col) {
398
+ return topo.xywh(radius, row, col);
399
+ }
400
+ get xywh0() { return this.xywh(); } // so can see xywh from debugger
401
+ /** distance between Hexes: adjacent = 1, based on row, col, unit = 1 / H.sqrt3 */
402
+ radialDist(hex) {
403
+ let unit = 1 / H.sqrt3; // so w = delta(col) = 1
404
+ let { x: tx, y: ty } = this.xywh(unit), { x: hx, y: hy } = hex.xywh(unit);
405
+ let dx = tx - hx, dy = ty - hy;
406
+ return Math.sqrt(dx * dx + dy * dy);
407
+ }
417
408
  // The following were created for the map in hexmarket:
418
409
  /** unit distance between Hexes: adjacent = 1; see also: radialDist */
419
410
  metricDist(hex) {
@@ -594,7 +585,7 @@ export class HexMap extends Array {
594
585
  * Basic map is non-GUI, addToMapCont(hexC) makes IHex2 elements to enable GUI interaction.
595
586
  * Use hexC() to make Hex; mapCont has layers of Containers per HexMap.cNames;
596
587
  *
597
- * @param radius [TP.hexRad] typically 60
588
+ * @param radius [TP.hexRad] typically 60, is used by hexC to set Hex2.radius
598
589
  * @param addToMapCont [false] set true to include addToMapCont(hexC)
599
590
  * @param hexC [Hex] HexConstructor\<Hex\> for each element
600
591
  * @param Aname ['mainMap'] a name for debugger
@@ -621,24 +612,36 @@ export class HexMap extends Array {
621
612
  // -----------------------+ // -----------------------+ // -----------------------+
622
613
  // sqrt3 // sqrt3/2 // 1
623
614
  //
624
- radius = TP.hexRad;
625
- /** return this.centerHex.xywh() for this.topo */
626
- get xywh() { return this.centerHex.xywh(this.radius); }
627
- minCol = undefined; // Array.forEach does not look at negative indices!
628
- maxCol = undefined; // used by rcLinear
629
- minRow = undefined; // to find centerHex
630
- maxRow = undefined; // to find centerHex
615
+ radius;
616
+ // explicit private:
617
+ _minCol = undefined; // Array.forEach does not look at negative indices!
618
+ _maxCol = undefined; // used by rcLinear
619
+ _minRow = undefined; // to find centerHex
620
+ _maxRow = undefined; // to find centerHex
621
+ // public readonly accessors:
622
+ get minCol() { return this._minCol; }
623
+ get maxCol() { return this._maxCol; }
624
+ get minRow() { return this._minRow; }
625
+ get maxRow() { return this._maxRow; }
631
626
  get centerRC() {
632
- const row = Math.floor(((this.maxRow ?? 0) + (this.minRow ?? 0)) / 2);
633
- const col = Math.floor(((this.minCol ?? 0) + (this.maxCol ?? 0)) / 2);
627
+ const row = Math.floor(((this._maxRow ?? 0) + (this._minRow ?? 0)) / 2);
628
+ const col = Math.floor(((this._minCol ?? 0) + (this._maxCol ?? 0)) / 2);
634
629
  return { row, col };
635
630
  }
631
+ // when called, maxRow, etc are defined...
632
+ get nRowCol() { return [1 + this._maxRow - this._minRow, 1 + this._maxCol - this._minCol]; }
636
633
  get centerHex() {
637
634
  const { row, col } = this.centerRC;
638
635
  return this[row][col]; // as Hex2; as T;
639
636
  }
640
- // when called, maxRow, etc are defined...
641
- get nRowCol() { return [(this.maxRow ?? 0) - (this.minRow ?? 0), (this.maxCol ?? 0) - (this.minCol ?? 0)]; }
637
+ /**
638
+ * this.topo.xyhw(radius, row, col)
639
+ * @param rad [this.radius]
640
+ * @param row [0]
641
+ * @param col [0]
642
+ * @returns TopoXYWH = XYWH & { dxdc, dydr }
643
+ */
644
+ xywh(rad = this.radius, row = 0, col = 0) { return this.topo.xywh(rad, row, col); }
642
645
  getCornerHex(dn) {
643
646
  return this.centerHex.lastHex(dn);
644
647
  }
@@ -652,7 +655,7 @@ export class HexMap extends Array {
652
655
  throw err;
653
656
  }
654
657
  }
655
- rcLinear(row, col) { return col + row * (1 + (this.maxCol ?? 0) - (this.minCol ?? 0)); }
658
+ rcLinear(row, col) { return col + row * (1 + (this._maxCol ?? 0) - (this._minCol ?? 0)); }
656
659
  mark; // a cached DisplayObject, used by showMark
657
660
  makeMark() {
658
661
  const mark = new HexMark(this.radius, this.radius / 2.5);
@@ -684,15 +687,15 @@ export class HexMap extends Array {
684
687
  hex.district = district; // and set Hex2.districtText
685
688
  if (this[row] === undefined) { // create new row array
686
689
  this[row] = new Array();
687
- if (this.minRow === undefined || row < this.minRow)
688
- this.minRow = row;
689
- if (this.maxRow === undefined || row > this.maxRow)
690
- this.maxRow = row;
690
+ if (this._minRow === undefined || row < this._minRow)
691
+ this._minRow = row;
692
+ if (this._maxRow === undefined || row > this._maxRow)
693
+ this._maxRow = row;
691
694
  }
692
- if (this.minCol === undefined || col < this.minCol)
693
- this.minCol = col;
694
- if (this.maxCol === undefined || col > this.maxCol)
695
- this.maxCol = col;
695
+ if (this._minCol === undefined || col < this._minCol)
696
+ this._minCol = col;
697
+ if (this._maxCol === undefined || col > this._maxCol)
698
+ this._maxCol = col;
696
699
  this[row][col] = hex; // addHex to this Array<Array<Hex>>
697
700
  this.link(hex); // link to existing neighbors
698
701
  return hex;
@@ -755,25 +758,26 @@ export class HexMap extends Array {
755
758
  this.update();
756
759
  }
757
760
  }
758
- /** neighborhood topology, E-W & N-S orientation; even(n0) & odd(n1) rows: */
759
- topo = TP.useEwTopo ? H.ewTopo : H.nsTopo;
761
+ /** topo (RC) --> hexAry[row][col], nextHex(rc, dir)-->RC; xywh() for graphic layout. */
762
+ topo = TP.useEwTopo ? new TopoEWC() : new TopoNSC();
760
763
  /** see also: Hex.linkDirs */
761
764
  get linkDirs() {
762
- return TP.useEwTopo ? H.ewDirs : H.nsDirs;
765
+ return this.topo.linkDirs;
763
766
  }
764
767
  /** return a new RC; does not mutate the given RC.
765
768
  *
766
769
  * @param rc initial {row, col}
767
770
  * @param dir dir to extend
768
- * @param nt function (RC, dir) --> { H.dirs: DCR}
771
+ * @param topo function (RC, dir) --> { H.dirs: DCR}
769
772
  * @return RC of adjacent Hex in given direction for given topo.
770
773
  */
771
- nextRowCol(rc, dir, nt = this.topo(rc)) {
772
- const ntdir = nt[dir];
773
- const { dr, dc } = ntdir; // OR (nt as TopoEW[dir as EwDir]) OR simply: nt[dir]
774
- return { row: rc.row + dr, col: rc.col + dc };
774
+ nextRowCol(rc, dir, topo = this.topo) {
775
+ return topo.nextRowCol(rc, dir);
775
776
  }
776
777
  metaMap = Array(); // hex0 (center Hex) of each MetaHex, has metaLinks to others.
778
+ /** singleton for placing metaHex */
779
+ metaTopoNS = new TopoNSC();
780
+ metaTopoEW = new TopoEWC();
777
781
  addMetaHex(hex, mrc) {
778
782
  const metaMap = this.metaMap, { row: mr, col: mc } = mrc;
779
783
  if (metaMap[mr] === undefined)
@@ -785,27 +789,25 @@ export class HexMap extends Array {
785
789
  /** link metaHex on metaMap; maybe need ewTopo for nh==1 ?? */
786
790
  metaLink(hex, rc) {
787
791
  // planner expects Dir1 & Dir2 in NsDir; nextMetaRC.mrc: NsDir
788
- let nt = (this.nh == 0) ? H.ewTopo(rc) : H.nsTopo(rc); // always nsTopo!!
792
+ const topo = (this.nh == 0) ? this.metaTopoEW : this.metaTopoNS; // always TopoNSC!!
789
793
  if (!hex.metaLinks)
790
794
  hex.metaLinks = {};
791
- this.link(hex, rc, this.metaMap, nt, (hex) => hex.metaLinks);
795
+ this.link(hex, rc, this.metaMap, topo, (hex) => hex.metaLinks);
792
796
  }
793
- /** link hex to/from each extant neighor */
794
- /**
795
- * TODO: move this to class Hex?
797
+ /** link hex to/from each extant neighor.
798
+ *
799
+ * lookup nextRowCol(hex, dir, topo) and cache in LINKS (bi-directional: hex <--> next)
800
+ *
796
801
  * @param hex the <T extends Hex> to be linked
797
802
  * @param rc Row-Col at which to place the hex
798
803
  * @param map the Array[row][col] to hold the hex
799
- * @param nt selects a Topo; Topo maps from (RowCol x Dir) to a <T extends Hex> in Array.
800
- * @param lf selcts a LINKS; LINKS maps from Dir to a next <T extends Hex>
804
+ * @param topo selects a Topo; Topo maps from (RowCol x Dir) to a <T extends Hex> in Array.
805
+ * @param lf selects a LINKS; hex.LINKS[dir] --> nHex(hex, dir)
801
806
  */
802
- link(hex, rc = hex, map = this, nt = this.topo(rc), lf = (hex) => hex.links) {
803
- const topoDirs = Object.keys(nt);
804
- topoDirs.forEach(dir => {
805
- const { dr, dc } = nt[dir]; // OR (nt as TopoEW[dir as EwDir])
806
- const nr = rc.row + dr;
807
- const nc = rc.col + dc;
808
- const nHex = map[nr] && map[nr][nc];
807
+ link(hex, rc = hex, map = this, topo = this.topo, lf = (hex) => hex.links) {
808
+ topo.linkDirs.forEach(dir => {
809
+ const { row, col } = this.nextRowCol(rc, dir, topo);
810
+ const nHex = map[row]?.[col];
809
811
  if (!!nHex) {
810
812
  lf(hex)[dir] = nHex;
811
813
  lf(nHex)[H.dirRev[dir]] = hex;
@@ -840,7 +842,7 @@ export class HexMap extends Array {
840
842
  * see also: Table.setToRowCol(cont, row, col)
841
843
  */
842
844
  xyFromMap(target, row = 0, col = 0) {
843
- const xywh = Hex2.xywh(undefined, undefined, row, col);
845
+ const xywh = this.topo.xywh(this.radius, row, col);
844
846
  const xy = this.mapCont.hexCont.localToLocal(xywh.x, xywh.y, target, xywh); // offset from hexCont to target
845
847
  return xywh;
846
848
  }
@@ -857,6 +859,8 @@ export class HexMap extends Array {
857
859
  this._nh = nh;
858
860
  this._mh = mh;
859
861
  }
862
+ /** @return the nh & mh parameters of this HexMap */
863
+ getSize() { return { nh: this.nh, mh: this.mh }; }
860
864
  /** utility for makeAllDistricts; make hex0 at RC */
861
865
  calculateRC0() {
862
866
  // suitable for makeMetaHexes
@@ -909,7 +913,7 @@ export class HexMap extends Array {
909
913
  const dirL = dirs[nd], dirS = dirs[(nd + 5) % 6], metaD = H.nsDirs[(nd + 5) % 6];
910
914
  rc = this.forRCsOnLine(dL, rc, dirL); // step (WS) by dist
911
915
  rc = this.forRCsOnLine(dS, rc, dirS); // step (S) to center of 0-th metaHex
912
- mrc = this.nextRowCol(mrc, metaD, H.nsTopo(mrc)); // metaMap uses nsTopo!
916
+ mrc = this.nextRowCol(mrc, metaD, this.metaTopoNS); // metaMap uses nsTopo!
913
917
  return rc;
914
918
  };
915
919
  // do metaRing = 0, district 0:
@@ -998,28 +1002,28 @@ export class HexMap extends Array {
998
1002
  * Note: district = 0; hexAry.forEach() to set alternate district.
999
1003
  *
1000
1004
  * rnd == 1 looks best when nc is odd; (round the corner?)
1001
- * @param nr height
1002
- * @param nc width [nr + 1]
1003
- * @param rnd [1] 0: all, 1: rm end of row 0 (& half of last row!)
1004
- * @parma half [(rnd === 1) || (nc % 2 === 1)] force/deny final half-row
1005
- * @param hexAry array in which to push the created Hexes [Array()<T>]
1005
+ * @param nr height: number of rows
1006
+ * @param nc [nr + 1] width: number of columns
1007
+ * @param rnd [true] roundCorners: 0 -> all/square; 1 -> rm end of row 0 (& alt in last row!)
1008
+ * @param half [rnd || (nc % 2 === 1)] true -> fill alternate columns in last row
1009
+ * @param hexAry Array in which to push the created Hexes [Array()<T>]
1006
1010
  * @returns hexAry with the created Hexes pushed (row major)
1007
1011
  */
1008
- makeRect(nr, nc = nr + 1, rnd = 1, half = (rnd === 1) || (nc % 2 === 1), hexAry = []) {
1012
+ makeRect(nr, nc = nr + 1, rnd = true, half = rnd || (nc % 2 === 1), hexAry = []) {
1009
1013
  const hexAryNR = [];
1010
1014
  hexAryNR['Nr'] = nr;
1011
1015
  hexAryNR['Nc'] = nc; // for debugger
1012
1016
  const district = 0;
1013
1017
  // nr = 9; nc = 11; rnd = 1; half = (rnd === 1) || (nc % 2 === 1);
1014
1018
  const ncOdd = (nc % 2) === 0;
1015
- const c00 = (rnd === 0) ? 0 : 1;
1016
- const nc0 = (rnd === 0) ? 0 : nc - (ncOdd ? 1 : 2 * c00);
1019
+ const c00 = rnd ? 1 : 0;
1020
+ const nc0 = rnd ? nc - (ncOdd ? 1 : 2 * c00) : nc;
1017
1021
  this.addLineOfHex(nc0, 0, c00, district, hexAry); // first [0] row
1018
1022
  for (let row = 1; row < nr - 1; row++) {
1019
1023
  this.addLineOfHex(nc, row, 0, district, hexAry); // all the interior row
1020
1024
  }
1021
- const cf0 = (rnd === 0) ? 0 : 2;
1022
- const ncf = nc - ((rnd === 0) ? 0 : 3);
1025
+ const cf0 = rnd ? 2 : 0;
1026
+ const ncf = nc - (rnd ? 3 : 0);
1023
1027
  const dc = (half) ? 2 : 1;
1024
1028
  this.addLineOfHex(ncf, nr - 1, cf0, district, hexAry, dc); // last [nr] row
1025
1029
  this.setDistrictAndPaint(hexAry, district);
@@ -1029,10 +1033,10 @@ export class HexMap extends Array {
1029
1033
  * create horizontal row using hexAry.push(addHex(row, col++dc, district))
1030
1034
  * @param maxc max col to use (esp when dc > 1)
1031
1035
  * @param row
1032
- * @param col
1036
+ * @param col initial col; increment by dc
1033
1037
  * @param district
1034
1038
  * @param hexAry
1035
- * @param dc delta to column [1]
1039
+ * @param dc [1] increment to column (2 to fill alternate columns)
1036
1040
  */
1037
1041
  addLineOfHex(maxc, row, col, district, hexAry, dc = 1) {
1038
1042
  for (let i = 0; i < maxc; i += dc) {
package/dist/hex.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hex.js","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hex.js","sourceRoot":"","sources":["../src/hex.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  /// <reference types="easeljs" />
2
+ import { type XY } from "@thegraid/common-lib";
2
3
  import { Bitmap } from "@thegraid/easeljs-module";
3
4
  /** Simple async Image loader [from ImageReveal.loadImage()]
4
5
  *
@@ -59,6 +60,7 @@ export declare class AliasLoader {
59
60
  set fnames(fnames: string[]);
60
61
  get fnames(): string[];
61
62
  fromAlias(names: string[]): string[];
63
+ /** initial default: 'assets/image/' [] 'png' */
62
64
  imageArgs: {
63
65
  root: string;
64
66
  fnames: string[];
@@ -72,14 +74,18 @@ export declare class AliasLoader {
72
74
  /**
73
75
  * new Bitmap(this.getImage(name));
74
76
  *
75
- * image is scaled to fit given size.
77
+ * Set scaleX & scaleY to render to given size.
78
+ *
79
+ * offset (either regXY or XY) so image is centered at 0,0
76
80
  *
77
81
  * @param name from this.imap.keys();
78
- * @param size [TP.hexRad] bitmap.scale = size / max(img.width, img.height)
79
- * @param offsetReg [true] regX/Y = (w/2, h/2) so image is centered with XY = (0, 0);
80
- * - else regX/Y = (0, 0) and XY = (-w/2, -h/2)
82
+ * @param size [TP.hexRad] bitmap.scaleXY = size / max(img.width, img.height)
83
+ * @param offsetReg [true]
84
+ * - if true: regX/Y = (w/2, h/2) and XY = (0, 0)
85
+ * - if false: regX/Y = (0, 0) and XY = (-w/2, -h/2)
86
+ * - either way: image renders centered around (0, 0);
81
87
  * @return new Bitmap() containing the named image (no image if name was not loaded)
82
88
  */
83
- getBitmap(name: string, size?: number, offsetReg?: boolean): Bitmap;
89
+ getBitmap(name: string, size?: number | XY, offsetReg?: boolean): Bitmap;
84
90
  }
85
91
  //# sourceMappingURL=image-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-loader.d.ts","sourceRoot":"","sources":["../src/image-loader.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD;;;GAGG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,KAAK,SAAK;IACjB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuBpE;;;OAGG;IACH,UAAU,CAAC,MAAM,WAAc,EAAE,GAAG,SAAW;IAS/C;;;;;;;;;OASG;gBACS,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAC/D,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI;IASpD,IAAI,gCAAuC;IAC3C,KAAK,yCAAgD;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAC3C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;CACxD;AAGD,qBAAa,WAAW;IACtB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAqB;gBAEnC,MAAM,GAAE,MAAM,EAAO,EAAE,OAAO,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO;IAK1E;;;;;;OAMG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IAExC;;OAEG;IACH,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAE1B;IACD,IAAI,MAAM,IAHS,MAAM,EAAE,CAK1B;IAED,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE;IAGzB,SAAS;;;;MAIP;IAEF,WAAW,EAAE,WAAW,CAAC;IACzB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI;IAI9D,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM;IAIrB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAY,EAAE,SAAS,UAAO;CAmB3D"}
1
+ {"version":3,"file":"image-loader.d.ts","sourceRoot":"","sources":["../src/image-loader.ts"],"names":[],"mappings":";AAAA,OAAO,EAAS,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAGlD;;;GAGG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,KAAK,SAAK;IACjB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAuBpE;;;OAGG;IACH,UAAU,CAAC,MAAM,WAAc,EAAE,GAAG,SAAW;IAS/C;;;;;;;;;OASG;gBACS,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAC/D,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI;IASpD,IAAI,gCAAuC;IAC3C,KAAK,yCAAgD;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAC3C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;CACxD;AAGD,qBAAa,WAAW;IACtB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAqB;gBAEnC,MAAM,GAAE,MAAM,EAAO,EAAE,OAAO,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO;IAK1E;;;;;;OAMG;IACH,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IAExC;;OAEG;IACH,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAE1B;IACD,IAAI,MAAM,IAHS,MAAM,EAAE,CAK1B;IAED,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE;IAGzB,gDAAgD;IAChD,SAAS;;;;MAIP;IAEF,WAAW,EAAE,WAAW,CAAC;IACzB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI;IAI9D,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM;IAIrB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,GAAG,EAAc,EAAE,SAAS,UAAO;CAsBxE"}