@thegraid/hexlib 1.1.0 → 1.1.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
package/dist/table.js CHANGED
@@ -72,7 +72,7 @@ export class Table {
72
72
  static stageTable(obj) {
73
73
  return obj.stage.table;
74
74
  }
75
- disp;
75
+ disp = this;
76
76
  namedOn(Aname, type, listener, scope, once, data, useCapture = false) {
77
77
  const list2 = this.disp.on(type, listener, scope, once, data, useCapture);
78
78
  list2.Aname = Aname;
@@ -99,12 +99,10 @@ export class Table {
99
99
  *
100
100
  * typically: this.hexC = this.hexMap.hexC as Constructor\<IHex2\> */
101
101
  hexC;
102
- overlayCont = new Container();
102
+ overlayCont = new NamedContainer('overlay');
103
103
  constructor(stage) {
104
104
  // super();
105
105
  EventDispatcher.initialize(this);
106
- this.disp = this;
107
- this.overlayCont.name = 'overlay';
108
106
  // backpointer so Containers can find their Table (& curMark)
109
107
  Table.table = stage.table = this;
110
108
  this.stage = stage;
@@ -465,16 +463,16 @@ export class Table {
465
463
  */
466
464
  makeParamGUI(parent, x = 0, y = 0) {
467
465
  const gui = new ParamGUI(TP, { textAlign: 'right' });
468
- const gamePlay = this.gamePlay.gameSetup;
466
+ const gameSetup = this.gamePlay.gameSetup;
469
467
  gui.makeParamSpec('hexRad', [30, 60, 90, 120], { fontColor: 'red' });
470
468
  TP.hexRad;
471
469
  gui.makeParamSpec('nHexes', [2, 3, 4, 5, 6, 7, 8, 9, 10, 11], { fontColor: 'red' });
472
470
  TP.nHexes;
473
471
  gui.makeParamSpec('mHexes', [1, 2, 3], { fontColor: 'red' });
474
472
  TP.mHexes;
475
- gui.spec("hexRad").onChange = (item) => { gamePlay.restart({ hexRad: item.value }); };
476
- gui.spec("nHexes").onChange = (item) => { gamePlay.restart({ nh: item.value }); };
477
- gui.spec("mHexes").onChange = (item) => { gamePlay.restart({ mh: item.value }); };
473
+ gui.spec("hexRad").onChange = (item) => { gameSetup.restart({ hexRad: item.value }); };
474
+ gui.spec("nHexes").onChange = (item) => { gameSetup.restart({ nh: item.value }); };
475
+ gui.spec("mHexes").onChange = (item) => { gameSetup.restart({ mh: item.value }); };
478
476
  parent.addChild(gui);
479
477
  gui.x = x; // (3*cw+1*ch+6*m) + max(line.width) - (max(choser.width) + 20)
480
478
  gui.y = y;
@@ -560,14 +558,18 @@ export class Table {
560
558
  /** show player player score on table */
561
559
  setPlayerScore(plyr, score, rank) {
562
560
  }
563
- /** update table when a new Game is started. */
561
+ /** update table when a new Game is started.
562
+ *
563
+ * default: [allTiles.makeDragable(); setNextPlayer(gamePlay.turnNumber)]
564
+ *
565
+ * A Tile or class of Tile may stopDragging() due to noLegalTargets().
566
+ */
564
567
  startGame(scenario) {
565
- // All Tiles (& Meeple) are Dragable:
568
+ // All Tiles (& Meeple) are Dragable: (Note: if noLegal then stopDragging)
566
569
  Tile.allTiles.forEach(tile => {
567
570
  this.makeDragable(tile);
568
571
  });
569
572
  // this.stage.enableMouseOver(10);
570
- this.scaleCont.addChild(this.overlayCont); // now at top of the list.
571
573
  this.gamePlay.setNextPlayer(this.gamePlay.turnNumber > 0 ? this.gamePlay.turnNumber : 0);
572
574
  }
573
575
  makeDragable(tile) {
@@ -579,14 +581,19 @@ export class Table {
579
581
  return this.hexMap.hexUnderObj(dragObj, legalOnly);
580
582
  }
581
583
  dragContext;
584
+ /** Direct callback from this.dragger. Invoke this.dragFunc0(tile, info, hexUnderTile) */
582
585
  dragFunc(tile, info) {
583
586
  const hex = this.hexUnderObj(tile); // clickToDrag 'snaps' to non-original hex!
584
587
  this.dragFunc0(tile, info, hex);
585
588
  }
586
- /** Table.dragFunc0 (Table.dragFunc to inject drag/start actions programatically)
589
+ /** Table.dragFunc0
590
+ *
591
+ * Version of Table.dragFunc used to inject drag/start actions programatically.
592
+ *
593
+ * Calls out to Tile.dragFunc0(IHex2, DragContext)
587
594
  * @param tile is being dragged
588
595
  * @param info { first: boolean, event: MouseEvent }
589
- * @param hex the Hex that tile is currently over (may be undefined or off map)
596
+ * @param hex the IHex2 which tile is currently over (may be undefined or off map)
590
597
  */
591
598
  dragFunc0(tile, info, hex = this.hexUnderObj(tile)) {
592
599
  let ctx = this.dragContext;
@@ -601,6 +608,7 @@ export class Table {
601
608
  }
602
609
  const event = info.event?.nativeEvent;
603
610
  tile.fromHex = tile.hex; // dragStart: set tile.fromHex when first move!
611
+ // create and record a DragContext for this drag:
604
612
  ctx = {
605
613
  tile: tile,
606
614
  targetHex: tile.fromHex,
@@ -619,9 +627,9 @@ export class Table {
619
627
  return; // stopDragging() was invoked
620
628
  }
621
629
  this.checkShift(hex, ctx);
622
- tile.dragFunc0(hex, ctx);
630
+ tile.dragFunc0(hex, ctx); // tile is dragged over hex
623
631
  }
624
- // invoke dragShift 'event' if shift state changes
632
+ /** invoke dragShift callback if shift state changes */
625
633
  checkShift(hex, ctx) {
626
634
  const nativeEvent = ctx.info.event?.nativeEvent;
627
635
  ctx.lastCtrl = nativeEvent?.ctrlKey;
@@ -633,6 +641,21 @@ export class Table {
633
641
  this.dragShift(ctx.tile, shiftKey, ctx); // was interesting for hexmarket
634
642
  }
635
643
  }
644
+ /**
645
+ * Try start dragging.
646
+ * Abort if tile.cantBeMoved(player)
647
+ *
648
+ * Inform tile.dragStart(ctx)
649
+ *
650
+ * Mark all legal Hexes, set ctx.nLegal
651
+ *
652
+ * tile.moveTo(undefined); // dropFunc() will placeTile on targetHex/fromHex.
653
+ *
654
+ * Invoke tile.noLegalTarget(ctx) if nLegal === 0
655
+ *
656
+ * @param tile the Tile to be Dragged
657
+ * @param ctx DragContext with shift/ctrl from table.dragFunc0()
658
+ */
636
659
  dragStart(tile, ctx) {
637
660
  // press SHIFT to capture [recycle] opponent's Criminals or Tiles
638
661
  const reason = tile.cantBeMovedBy(this.gamePlay.curPlayer, ctx);
@@ -654,20 +677,18 @@ export class Table {
654
677
  tile.moveTo(undefined); // notify source Hex, so it can scale; also triggers nextUnit !!
655
678
  this.hexMap.update();
656
679
  if (ctx.nLegal === 0) {
657
- tile.noLegal();
658
- if (!this.gamePlay.recycleHex?.isLegal) {
659
- this.stopDragging(); // actually, maybe let it drag, so we can see beneath...
660
- }
680
+ tile.noLegalTarget(ctx);
661
681
  }
662
682
  }
663
683
  }
664
- /** state of shiftKey has changed during drag */
684
+ /** state of shiftKey has changed during drag. call tile.dragShift(). */
665
685
  dragShift(tile, shiftKey, ctx) {
666
686
  tile?.dragShift(shiftKey, ctx);
667
687
  }
668
- /** Tile dropFunc */
688
+ /** dropFunc for each Dragable/Tile -> tile.dropFunc0(hex, ctx) */
669
689
  dropFunc(dobj, info, hex = this.hexUnderObj(dobj)) {
670
690
  const tile = dobj;
691
+ // invoke Tile.dropFunc0() which will delegate to Tile.dropFunc(targetHex, ctx)
671
692
  tile.dropFunc0(hex, this.dragContext); // generally: hex == ctx.targetHex
672
693
  tile.markLegal(this); // hex => hex.isLegal = false;
673
694
  // this.gamePlay.recycleHex.isLegal = false;
@@ -678,10 +699,10 @@ export class Table {
678
699
  dragStartAndDrop(tile, toHex) {
679
700
  if (!tile)
680
701
  return; // C-q when no EventTile on eventHex
681
- const hex = toHex, info = { first: true }; // event: undefined
682
- this.dragFunc0(tile, info, tile.hex); // dragStart()
683
- tile.dragFunc0(hex, this.dragContext);
684
- this.dropFunc(tile, info, hex);
702
+ const toHex2 = toHex, info = { first: true }; // event: undefined
703
+ this.dragFunc0(tile, info, tile.hex); // table.dragStart(tile)->tile.dragstart(ctx); tile.dragFunc0(fromHex)
704
+ tile.dragFunc0(toHex2, this.dragContext); // tile.dragFunc0(toHex)
705
+ this.dropFunc(tile, info, toHex2); // table.dropFunc(toHex)->tile.dropFunc0(toHex,ctx)
685
706
  }
686
707
  isDragging() { return this.dragContext?.tile !== undefined; }
687
708
  /** Force this.dragger to drop the current drag object on given target Hex.
@@ -731,7 +752,7 @@ export class Table {
731
752
  }
732
753
  _tablePlanner;
733
754
  get tablePlanner() {
734
- return this._tablePlanner ||
755
+ return this._tablePlanner ??
735
756
  (this._tablePlanner = new TablePlanner(this.gamePlay));
736
757
  }
737
758
  /**
@@ -770,9 +791,9 @@ export class Table {
770
791
  }
771
792
  if (bindKeys) {
772
793
  this.bindKeysToScale(scaleC, "a", 436, 2);
773
- KeyBinder.keyBinder.setKey('Space', { thisArg: this, func: () => this.dragTarget() });
774
- KeyBinder.keyBinder.setKey('S-Space', { thisArg: this, func: () => this.dragTarget() });
775
- KeyBinder.keyBinder.setKey('t', { thisArg: this, func: () => { this.toggleText(); } });
794
+ KeyBinder.keyBinder.setKey('Space', () => this.dragTarget());
795
+ KeyBinder.keyBinder.setKey('S-Space', () => this.dragTarget());
796
+ KeyBinder.keyBinder.setKey('t', () => this.toggleText());
776
797
  }
777
798
  return scaleC;
778
799
  }
package/dist/table.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
package/dist/tile.d.ts CHANGED
@@ -66,6 +66,7 @@ export declare class Tile extends Tile0 implements Dragable {
66
66
  homeHex: Hex1;
67
67
  /** location at start-of-drag */
68
68
  fromHex: IHex2;
69
+ /** override hook to deselect/stopDragging a Tile. */
69
70
  isDragable(ctx?: DragContext): boolean;
70
71
  _hex: Hex1 | undefined;
71
72
  /** the map Hex on which this Tile sits. */
@@ -97,28 +98,70 @@ export declare class Tile extends Tile0 implements Dragable {
97
98
  * Post-condition: !tile.hex.isOnMap; tile.hex = this.homeHex may be undefined [UnitSource, AuctionTile, BonusTile]
98
99
  */
99
100
  sendHome(): void;
101
+ /** map.showMark(ctx.targetHex); override for alternate showMark. */
100
102
  showTargetMark(hex: IHex2 | undefined, ctx: DragContext): void;
101
103
  /**
102
- * Augment Table.dragFunc0().
104
+ * Invoked for each mouseMove when dragging this Tile.
103
105
  *
104
- * isLegal already set;
105
- * record ctx.targetHex & showMark() when Tile is over a legal targetHex.
106
+ * hex.isLegal was already set by dragStart [for ALL Hex]
107
+ *
108
+ * set ctx.targetHex = hex?.isLegal ? hex : this.fromHex;
109
+ *
110
+ * then this.dragFunc(hex, ctx);
111
+ *
112
+ * @param hex Hex under this Tile
113
+ * @param ctx
106
114
  */
107
115
  dragFunc0(hex: IHex2 | undefined, ctx: DragContext): void;
108
- /** entry point from Table.dropFunc; delegate to this.dropFunc()
116
+ /**
117
+ * this Tile is being dragged.
118
+ *
119
+ * default: [return] just let it drag until it's dropped.
120
+ * @param hex Hex under this Tile
121
+ * @param ctx full context: ctrl/shift, nLegal, info, targetHex
122
+ */
123
+ dragFunc(hex: IHex2 | undefined, ctx: DragContext): void;
124
+ /**
125
+ * entry point from Table.dropFunc;
109
126
  *
110
- * then showMark(undefined);
127
+ * Invoke this.dropFunc() then showMark(undefined);
111
128
  */
112
129
  dropFunc0(hex: IHex2, ctx: DragContext): void;
130
+ /**
131
+ * Tile.dropFunc; override to give game-specific or tile-specific behavior.
132
+ *
133
+ * default: this.placeTile(targetHex)
134
+ * @param targetHex last legal Hex this Tile was over. (may be fromHex)
135
+ * @param ctx DragContext
136
+ */
137
+ dropFunc(targetHex: IHex2, ctx: DragContext): void;
138
+ /**
139
+ * Indicates if given Player is allowed to dragStart this Tile.
140
+ * @param player typically: this.gamePlay.curPlayer
141
+ * @param ctx the dragStart context
142
+ * @returns a 'reason' string if cant be moved, undefined if can be moved.
143
+ */
113
144
  cantBeMovedBy(player: Player, ctx: DragContext): string | boolean | undefined;
114
- /** override as necessary. */
145
+ /**
146
+ * Invoked before checking isLegalTarget;
147
+ *
148
+ * Tile has not yet been moved: tile.hex is still tile.fromHex.
149
+ *
150
+ * default: [return] override as necessary.
151
+ */
115
152
  dragStart(ctx: DragContext): void;
116
153
  /** state of shiftKey has changed during drag */
117
154
  dragShift(shiftKey: boolean | undefined, ctx: DragContext): void;
118
- /** with recycleHex: override with:
155
+ /**
156
+ * When this Tile starts a drag,
157
+ * run setLegal() on all Hex of given Table to identify legal targets.
158
+ *
159
+ * All Hex is table.newHexes and table.hexMap.hexAry.
160
+ * - does not include table.recycleHex, so that may need special treatment.
119
161
  *
120
- * - this.gamePlay.recycleHex.isLegal = this.isLegalRecycle(ctx); // do not increment ctx.nLegal!
121
- * - OR! class RecycleHex override markLegal to handle this!
162
+ * @param table acces to newHexes and hexMap
163
+ * @param setLegal [default: hex.isLegal = false] or countLegalHexes/isLegalTarget
164
+ * @param ctx DragContext if needed
122
165
  */
123
166
  markLegal(table: Table, setLegal?: (hex: IHex2) => void, ctx?: DragContext): void;
124
167
  /**
@@ -127,13 +170,11 @@ export declare class Tile extends Tile0 implements Dragable {
127
170
  */
128
171
  isLegalTarget(toHex: Hex1, ctx?: DragContext): boolean;
129
172
  isLegalRecycle(ctx: DragContext): boolean;
130
- /**
131
- * Tile.dropFunc; Override in AuctionTile, Civic, Meeple/Leader.
132
- * @param targetHex Hex2 this Tile is over when dropped (may be undefined; see also: ctx.targetHex)
133
- * @param ctx DragContext
173
+ /** Called by table.dragStart() if there are no legal targets for this Tile.
174
+ *
175
+ * unless recycleHex.isLegal, stopDragging();
134
176
  */
135
- dropFunc(targetHex: IHex2, ctx: DragContext): void;
136
- noLegal(): void;
177
+ noLegalTarget(ctx: DragContext): void;
137
178
  logRecycle(verb: string): void;
138
179
  }
139
180
  /** A plain WHITE tile; for Debt */
@@ -145,7 +186,11 @@ export declare class WhiteTile extends Tile {
145
186
  export declare class Token extends Tile {
146
187
  makeShape(): PaintableShape;
147
188
  }
148
- /** Tiles that can be played to the Map: AuctionTile, Civic, Monument, BonusTile */
189
+ /**
190
+ * Tiles that can be played to the Map, and generally stay where they are dropped.
191
+ *
192
+ * Tiles that are moved around on the map are classed as Meeple.
193
+ */
149
194
  export declare class MapTile extends Tile {
150
195
  }
151
196
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../src/tile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tile.d.ts","sourceRoot":"","sources":["../src/tile.ts"],"names":[],"mappings":"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"}