@thegraid/hexlib 1.3.11 → 1.4.0

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 (51) hide show
  1. package/dist/counters.d.ts +13 -19
  2. package/dist/counters.d.ts.map +1 -1
  3. package/dist/counters.js +13 -68
  4. package/dist/counters.js.map +1 -1
  5. package/dist/game-play.d.ts +7 -2
  6. package/dist/game-play.d.ts.map +1 -1
  7. package/dist/game-play.js +13 -8
  8. package/dist/game-play.js.map +1 -1
  9. package/dist/game-setup.d.ts +41 -20
  10. package/dist/game-setup.d.ts.map +1 -1
  11. package/dist/game-setup.js +72 -35
  12. package/dist/game-setup.js.map +1 -1
  13. package/dist/game-state.d.ts +1 -1
  14. package/dist/game-state.d.ts.map +1 -1
  15. package/dist/game-state.js +1 -0
  16. package/dist/game-state.js.map +1 -1
  17. package/dist/hex-intfs.d.ts +2 -0
  18. package/dist/hex-intfs.d.ts.map +1 -1
  19. package/dist/hex-intfs.js +3 -1
  20. package/dist/hex-intfs.js.map +1 -1
  21. package/dist/meeple.d.ts +1 -0
  22. package/dist/meeple.d.ts.map +1 -1
  23. package/dist/meeple.js +1 -0
  24. package/dist/meeple.js.map +1 -1
  25. package/dist/plan-proxy.js +1 -1
  26. package/dist/plan-proxy.js.map +1 -1
  27. package/dist/player-panel.d.ts +2 -2
  28. package/dist/player-panel.d.ts.map +1 -1
  29. package/dist/player-panel.js +5 -7
  30. package/dist/player-panel.js.map +1 -1
  31. package/dist/player.d.ts +8 -1
  32. package/dist/player.d.ts.map +1 -1
  33. package/dist/player.js +18 -4
  34. package/dist/player.js.map +1 -1
  35. package/dist/scenario-parser.d.ts +14 -10
  36. package/dist/scenario-parser.d.ts.map +1 -1
  37. package/dist/scenario-parser.js +4 -3
  38. package/dist/scenario-parser.js.map +1 -1
  39. package/dist/table.d.ts +10 -5
  40. package/dist/table.d.ts.map +1 -1
  41. package/dist/table.js +14 -6
  42. package/dist/table.js.map +1 -1
  43. package/dist/tile-source.d.ts +1 -1
  44. package/dist/tile-source.d.ts.map +1 -1
  45. package/dist/tile-source.js +2 -2
  46. package/dist/tile-source.js.map +1 -1
  47. package/dist/tile.d.ts +4 -0
  48. package/dist/tile.d.ts.map +1 -1
  49. package/dist/tile.js +25 -1
  50. package/dist/tile.js.map +1 -1
  51. package/package.json +2 -2
@@ -1,24 +1,23 @@
1
1
  /// <reference types="easeljs" />
2
2
  import { XY } from "@thegraid/common-lib";
3
- import { ValueCounter } from "@thegraid/easeljs-lib";
4
- import { DisplayObject, Text } from "@thegraid/easeljs-module";
5
- import type { GamePlay } from "./game-play";
6
- /** ValueCounter in a Rectangle. */
7
- export declare class ValueCounterBox extends ValueCounter {
3
+ import { RectShape, ValueCounter } from "@thegraid/easeljs-lib";
4
+ import { Text } from "@thegraid/easeljs-module";
5
+ /** ValueCounter in a Rectangle. */ export declare class ValueCounterBox extends ValueCounter {
8
6
  /** return width, height; suitable for makeBox() => drawRect() */
9
7
  protected boxSize(text: Text): {
10
8
  width: number;
11
9
  height: number;
12
10
  };
13
- protected makeBox(color: string, high: number, wide: number): DisplayObject;
11
+ protected makeBox(color: string, high: number, wide: number): RectShape;
14
12
  }
15
13
  export declare class ButtonBox extends ValueCounterBox {
16
- constructor(name: string, initValue?: string, color?: string, fontSize?: number, fontName?: string, textColor?: string);
14
+ constructor(name: string, initValue?: string, color?: string, fontSize?: number, fontName?: string, textColor?: string[]);
17
15
  }
18
16
  /** ValueCounter specifically for number values (not string), includes incValueEvent() and clickToInc() */
19
17
  export declare class NumCounter extends ValueCounter {
20
- setValue(value: number | string): void;
21
- getValue(): number;
18
+ get value(): number;
19
+ set value(value: number);
20
+ setValue(value?: number, color?: string, fontSize?: number, fontName?: string, textColor?: string): void;
22
21
  incValue(incr: number): void;
23
22
  /**
24
23
  *
@@ -35,26 +34,21 @@ export declare class NumCounter extends ValueCounter {
35
34
  export declare class NumCounterBox extends NumCounter {
36
35
  labelH: number;
37
36
  setLabel(label: string | Text, offset?: XY, fontSize?: number): void;
38
- protected makeBox0(color: string, high: number, wide: number): DisplayObject;
39
- protected makeBox(color: string, high: number, wide: number): DisplayObject;
37
+ protected makeBox0(color: string, high: number, wide: number): RectShape;
38
+ protected makeBox(color: string, high: number, wide: number): RectShape;
40
39
  /** return width, height; suitable for makeBox() => drawRect() */
41
40
  protected boxSize(text: Text): {
42
41
  width: number;
43
42
  height: number;
44
43
  };
45
44
  }
45
+ /** NoZeroCounter: Display '' when value is numerically 0 */
46
46
  export declare class NoZeroCounter extends NumCounter {
47
- protected setBoxWithValue(value: string | number): void;
47
+ protected setBoxWithValue(value: number): void;
48
48
  }
49
49
  export declare class DecimalCounter extends NumCounterBox {
50
50
  decimal: number;
51
- constructor(name: string, initValue?: string | number, color?: string, fontSize?: number, fontName?: string);
52
- setBoxWithValue(value: number): void;
53
- }
54
- export declare class PerRoundCounter extends DecimalCounter {
55
- gamePlay: GamePlay;
56
- get perRound(): number;
57
- decimal: number;
51
+ constructor(name: string, initValue?: number, color?: string, fontSize?: number, fontName?: string);
58
52
  setBoxWithValue(value: number): void;
59
53
  }
60
54
  //# sourceMappingURL=counters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"counters.d.ts","sourceRoot":"","sources":["../src/counters.ts"],"names":[],"mappings":";AAAA,OAAO,EAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAc,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAqB,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAClF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,mCAAmC;AACnC,qBAAa,eAAgB,SAAQ,YAAY;IAE/C,kEAAkE;cAC/C,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;cAQtD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa;CAKrF;AAED,qBAAa,SAAU,SAAQ,eAAe;gBAChC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM;CAIvH;AAED,0GAA0G;AAC1G,qBAAa,UAAW,SAAQ,YAAY;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAG/B,QAAQ,IAAI,MAAM;IAG3B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAIrB;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,GAAE,UAAU,GAAG,OAAc;CAU7C;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,MAAM,SAAK;IACF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7E,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa;cAMzD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa;IAOpF,kEAAkE;cAC/C,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;CAO1E;AAED,qBAAa,aAAc,SAAQ,UAAU;cACxB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAGjE;AAED,qBAAa,cAAe,SAAQ,aAAa;IAC/C,OAAO,SAAK;gBACA,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIlG,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAG9C;AAED,qBAAa,eAAgB,SAAQ,cAAc;IACjD,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,QAAQ,WAA6F;IAChG,OAAO,SAAK;IACZ,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAG9C"}
1
+ {"version":3,"file":"counters.d.ts","sourceRoot":"","sources":["../src/counters.ts"],"names":[],"mappings":";AAAA,OAAO,EAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAc,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAc,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAE5D,mCAAmC,CACnC,qBAAa,eAAgB,SAAQ,YAAY;IAE/C,kEAAkE;cAC/C,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;cAQtD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAGrE;AAED,qBAAa,SAAU,SAAQ,eAAe;gBAChC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE;CAIzH;AAED,0GAA0G;AAC1G,qBAAa,UAAW,SAAQ,YAAY;IAE1C,IAAa,KAAK,IACQ,MAAM,CADqB;IACrD,IAAa,KAAK,CAAC,KAAK,EAAE,MAAM,EAAyB;IAIhD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjH,QAAQ,CAAC,IAAI,EAAE,MAAM;IAIrB;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,GAAE,UAAU,GAAG,OAAc;CAU7C;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C,MAAM,SAAK;IACF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAS7E,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;cAKzC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAOpE,kEAAkE;cAC/C,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;CAO1E;AAED,4DAA4D;AAC5D,qBAAa,aAAc,SAAQ,UAAU;cACxB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAGxD;AAED,qBAAa,cAAe,SAAQ,aAAa;IAC/C,OAAO,SAAK;gBACA,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIzF,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAG9C"}
package/dist/counters.js CHANGED
@@ -1,7 +1,6 @@
1
1
  import { S } from "@thegraid/common-lib";
2
- import { ValueCounter, ValueEvent } from "@thegraid/easeljs-lib"; // "./value-counter";
3
- import { Shape } from "@thegraid/easeljs-module";
4
- /** ValueCounter in a Rectangle. */
2
+ import { RectShape, ValueCounter, ValueEvent } from "@thegraid/easeljs-lib";
3
+ /** ValueCounter in a Rectangle. */ // TODO: RectWithText
5
4
  export class ValueCounterBox extends ValueCounter {
6
5
  /** return width, height; suitable for makeBox() => drawRect() */
7
6
  boxSize(text) {
@@ -12,9 +11,7 @@ export class ValueCounterBox extends ValueCounter {
12
11
  return { width: wide, height: high };
13
12
  }
14
13
  makeBox(color, high, wide) {
15
- let shape = new Shape();
16
- shape.graphics.c().f(color).drawRect(-wide / 2, -high / 2, wide, high); // change from ellispe
17
- return shape;
14
+ return new RectShape({ x: -wide / 2, y: -high / 2, w: wide, h: high }, color, '');
18
15
  }
19
16
  }
20
17
  export class ButtonBox extends ValueCounterBox {
@@ -25,14 +22,15 @@ export class ButtonBox extends ValueCounterBox {
25
22
  }
26
23
  /** ValueCounter specifically for number values (not string), includes incValueEvent() and clickToInc() */
27
24
  export class NumCounter extends ValueCounter {
28
- setValue(value) {
29
- super.setValue(value);
30
- }
31
- getValue() {
32
- return super.getValue() ?? 0;
25
+ get value() { return this._value; }
26
+ set value(value) { super.value = value; }
27
+ // override for signature: number
28
+ // override getValue(): number { return this.value ?? 0 }
29
+ setValue(value, color, fontSize, fontName, textColor) {
30
+ super.setValue(value, color, fontSize, fontName, textColor);
33
31
  }
34
32
  incValue(incr) {
35
- this.updateValue(this.getValue() + incr);
33
+ this.updateValue(this.value + incr);
36
34
  this.dispatchEvent(new ValueEvent('incr', incr));
37
35
  }
38
36
  /**
@@ -67,10 +65,9 @@ export class NumCounterBox extends NumCounter {
67
65
  this.setBoxWithValue(this.value);
68
66
  }
69
67
  makeBox0(color, high, wide) {
70
- const shape = new Shape();
71
- shape.graphics.c().f(color).drawRect(-wide / 2, -high / 2, wide, high); // centered on {x,y}
72
- return shape;
68
+ return new RectShape({ x: -wide / 2, y: -high / 2, w: wide, h: high }, color, '');
73
69
  }
70
+ // a little bit taller than basic text box, room for label
74
71
  makeBox(color, high, wide) {
75
72
  const yinc = this.label ? this.labelFontSize / 2 : 0; // dubious math; but works for now...
76
73
  const shape = this.makeBox0(color, high + yinc, wide); // 4 px beneath for label
@@ -86,6 +83,7 @@ export class NumCounterBox extends NumCounter {
86
83
  return { width: wide, height: high };
87
84
  }
88
85
  }
86
+ /** NoZeroCounter: Display '' when value is numerically 0 */
89
87
  export class NoZeroCounter extends NumCounter {
90
88
  setBoxWithValue(value) {
91
89
  super.setBoxWithValue(value || '');
@@ -100,57 +98,4 @@ export class DecimalCounter extends NumCounterBox {
100
98
  super.setBoxWithValue(value.toFixed(this.decimal));
101
99
  }
102
100
  }
103
- export class PerRoundCounter extends DecimalCounter {
104
- gamePlay;
105
- get perRound() { return this.value / Math.max(1, Math.floor(this.gamePlay.turnNumber / 2)); }
106
- decimal = 1;
107
- setBoxWithValue(value) {
108
- super.setBoxWithValue(this.perRound);
109
- }
110
- }
111
- // export class CostIncCounter extends NumCounter {
112
- // /**
113
- // * Show InfR for curPlayer to place Tile;
114
- // * @param hex place Counter above the given hex.
115
- // * @param name internal identifyier
116
- // * @param ndx cost increment based on CostIncMatrix[ndx]; -1 -> show no cost
117
- // * @param repaint calc cost for: Player OR true/false->curPlayer;
118
- // * - Note: false -> const cost, no repaint
119
- // */
120
- // constructor(
121
- // public hex: Hex2,
122
- // name = `costInc`,
123
- // public ndx = -1,
124
- // public repaint: boolean | Player = true
125
- // ) {
126
- // super(name, 0, 'grey', TP.hexRad / 2)
127
- // const counterCont = hex.mapCont.counterCont;
128
- // const xy = hex.cont.localToLocal(0, TP.hexRad * H.sqrt3_2, counterCont);
129
- // this.attachToContainer(counterCont, xy);
130
- // }
131
- // protected override makeBox(color: string, high: number, wide: number): DisplayObject {
132
- // const box = new InfShape('lightgrey');
133
- // const size = Math.max(high, wide)
134
- // box.scaleX = box.scaleY = .5 * size / TP.hexRad;
135
- // return box
136
- // }
137
- // /** return width, height; suitable for makeBox() => drawRect() */
138
- // protected override boxSize(text: Text): { width: number; height: number } {
139
- // let width = text.getMeasuredWidth();
140
- // let height = text.getMeasuredLineHeight();
141
- // let high = height * 1.1;
142
- // let wide = Math.max(width * 1.1, high);
143
- // let rv = { width: wide, height: high };
144
- // return rv;
145
- // }
146
- // }
147
- // class CostTotalCounter extends CostIncCounter {
148
- // protected override makeBox(color: string, high: number, wide: number): DisplayObject {
149
- // let box = new Shape();
150
- // let size = Math.max(high, wide)
151
- // box.graphics.c().f(C.coinGold).dc(0, 0, TP.hexRad);
152
- // box.scaleX = box.scaleY = .5 * size / TP.hexRad;
153
- // return box
154
- // }
155
- // }
156
101
  //# sourceMappingURL=counters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"counters.js","sourceRoot":"","sources":["../src/counters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"counters.js","sourceRoot":"","sources":["../src/counters.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,8 @@ export declare class GamePlay0 {
50
50
  readonly redoMoves: {
51
51
  hex: Hex | IdHex;
52
52
  }[];
53
- logWriterLine0(): void;
53
+ /** log a json line of the form {${key}: ${line}} */
54
+ logWriterLine0(key?: string, line?: Record<string, any>): void;
54
55
  /** GamePlay0 - supply GodNames for each: new Player(...). */
55
56
  constructor(gameSetup: GameSetup);
56
57
  nCols: number;
@@ -80,6 +81,7 @@ export declare class GamePlay0 {
80
81
  * @param turnNumber [undefined -> auto-incr; curPlayer.newTurn()]
81
82
  */
82
83
  setNextPlayer(turnNumber?: number): void;
84
+ setCurPlayer(player: Player): void;
83
85
  isEndOfGame(): boolean;
84
86
  /** Planner may override with alternative impl. */
85
87
  newMoveFunc: ((hex: Hex, sc: PlayerColor, caps: Hex[], gp: GamePlay0) => Move) | undefined;
@@ -179,8 +181,11 @@ export declare class GamePlay extends GamePlay0 {
179
181
  * invoked by GamePlay.setNextPlayer(turnNumber);
180
182
  * after super.setNextPlayer: {set curPlayer & curPlayer.newTurn() }
181
183
  * before showCurPlayer()
184
+ *
185
+ * @param from annotation indicating the origin of this log line
186
+ * @param toConsole [true] false to not log on console
182
187
  */
183
- logNextPlayer(from: string): void;
188
+ logNextPlayer(from: string, toConsole?: boolean): void;
184
189
  setNextPlayer(turnNumber?: number): void;
185
190
  /** After setNextPlayer() */
186
191
  startTurn(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"game-play.d.ts","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-play.d.ts","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
package/dist/game-play.js CHANGED
@@ -51,12 +51,11 @@ export class GamePlay0 {
51
51
  // 2 models: move-by-move undo/redo OR write scenario-state to file and reload
52
52
  // [or keep 'state' in-memory and reload from there]
53
53
  // hexline originally did undo/redo; ankh writes/reads Scenario object log_date_time.json
54
- logWriterLine0() {
55
- const setup = this.gameSetup, thus = this, turn = thus.turnNumber;
56
- let line = { time: stime.fs(), turn };
54
+ /** log a json line of the form {${key}: ${line}} */
55
+ logWriterLine0(key = 'start', line = { time: stime.fs(), turn: this.turnNumber }) {
57
56
  let line0 = json(line, true); // machine readable starting conditions
58
57
  console.log(`-------------------- ${line0}`);
59
- this.logWriter.writeLine(`{start: ${line0}},`);
58
+ this.logWriter.writeLine(`{${key}: ${line0}},`);
60
59
  }
61
60
  /** GamePlay0 - supply GodNames for each: new Player(...). */
62
61
  constructor(gameSetup) {
@@ -120,10 +119,13 @@ export class GamePlay0 {
120
119
  }
121
120
  this.turnNumber = turnNumber;
122
121
  this.preGame = false;
123
- this.curPlayer = Player.allPlayers[0].nthPlayer(turnNumber);
124
- this.curPlayerNdx = this.curPlayer.index;
122
+ this.setCurPlayer(Player.allPlayers[0].nthPlayer(turnNumber));
125
123
  this.curPlayer.newTurn();
126
124
  }
125
+ setCurPlayer(player) {
126
+ this.curPlayer = player;
127
+ this.curPlayerNdx = player.index;
128
+ }
127
129
  isEndOfGame() {
128
130
  // can only win at the end of curPlayer's turn:
129
131
  const endp = false;
@@ -436,10 +438,13 @@ export class GamePlay extends GamePlay0 {
436
438
  * invoked by GamePlay.setNextPlayer(turnNumber);
437
439
  * after super.setNextPlayer: {set curPlayer & curPlayer.newTurn() }
438
440
  * before showCurPlayer()
441
+ *
442
+ * @param from annotation indicating the origin of this log line
443
+ * @param toConsole [true] false to not log on console
439
444
  */
440
- logNextPlayer(from) {
445
+ logNextPlayer(from, toConsole) {
441
446
  const { logAt } = this.logWriterInfo();
442
- this.table.logText(`&file=${logAt} ${this.curPlayer.Aname} ${stime.fs()}`, from);
447
+ this.table.logText(`&file=${logAt} ${this.curPlayer.Aname} ${stime.fs()}`, from, toConsole);
443
448
  ;
444
449
  document.getElementById('readFileName').value = logAt;
445
450
  }
@@ -1 +1 @@
1
- {"version":3,"file":"game-play.js","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-play.js","sourceRoot":"","sources":["../src/game-play.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Constructor } from "@thegraid/common-lib";
3
3
  import { Stage } from "@thegraid/easeljs-module";
4
4
  import { GamePlay } from "./game-play";
5
5
  import { Hex, HexMap } from "./hex";
6
- import { ScenarioParser, SetupElt } from "./scenario-parser";
6
+ import { ScenarioParser, SetupElt, type StartElt } from "./scenario-parser";
7
7
  import { LogWriter } from "./stream-writer";
8
8
  import { Table } from "./table";
9
9
  /** OR: import { Params } from "@angular/router"; */
@@ -14,11 +14,8 @@ export interface HexAspect {
14
14
  nh?: number;
15
15
  hexRad?: number;
16
16
  }
17
- /** Specify and initial or current state of game */
18
- export interface Scenario {
19
- turn: number;
20
- Aname: string;
21
- }
17
+ /** Specify and initial or current state of game; see also Scenario.SetupElt */
18
+ export type Scenario = SetupElt;
22
19
  /** initialize & reset & startup the application/game. */
23
20
  export declare class GameSetup {
24
21
  qParams: Params;
@@ -29,11 +26,11 @@ export declare class GameSetup {
29
26
  /**
30
27
  * ngAfterViewInit2() --> start here!
31
28
  *
32
- * - this.initialize(canvasId, qParams);
33
- * - this.loadImagesThenStartup(qParams);
29
+ * - this.initialize(canvasId);
30
+ * - this.loadImagesThenStartup();
34
31
  *
35
32
  * @param canvasId supply undefined for "headless" Stage
36
- * @param qParams queryParams from StageComponent -> this.qParams;
33
+ * @param qParams queryParams from StageComponent --> this.qParams;
37
34
  */
38
35
  constructor(canvasId: string, qParams?: Params);
39
36
  static random_seed: string;
@@ -43,7 +40,7 @@ export declare class GameSetup {
43
40
  initialize(canvasId: string): void;
44
41
  /** Label browser page. Typically: nPlayer=n, scenario from file. */
45
42
  get pageLabel(): string;
46
- loadImagesThenStartup(qParams?: Params): void;
43
+ loadImagesThenStartup(): void;
47
44
  makePlayer(ndx: number, gamePlay: GamePlay): void;
48
45
  /** set from qParams['n'] */
49
46
  nPlayers: number;
@@ -58,10 +55,18 @@ export declare class GameSetup {
58
55
  makeLogWriter(): LogWriter;
59
56
  restartable: boolean;
60
57
  /** C-s ==> kill game, start a new one, possibly with new stateInfo
58
+ *
59
+ * - p.endGame()
60
+ * - deContainer()
61
+ * - resetState(stateInfo)
62
+ * - startup(stateInfo as Scenario)
61
63
  * @param stateInfo Scenario and/or { hexRad: 60, nHexes: 7, mHexes: 1 }
62
64
  */
63
65
  restart(stateInfo: Scenario | HexAspect): void;
64
- /** reset GameState and/or Table/TableParams before startup() */
66
+ /**
67
+ * reset GameState and/or Table/TableParams before startScenario(stateInfo as Scenario)
68
+ * @param stateInfo (HexAspect mostly?)
69
+ */
65
70
  resetState(stateInfo: Scenario | HexAspect): void;
66
71
  /** read & parse State from text element */
67
72
  setupToParseState(): void;
@@ -69,14 +74,14 @@ export declare class GameSetup {
69
74
  setupToReadFileState(): Promise<void>;
70
75
  /**
71
76
  *
72
- * @param fileText contents of the file
77
+ * @param logText contents of the file
73
78
  * @param fileName the file that was read
74
79
  * @param turn extracted from fileName\@turn
75
80
  * @returns stateInfo suitable for restart(stateInfo)
76
81
  */
77
- extractStateFromString(fileText: string, fileName: string, turn: number): Scenario;
78
- /** compute nPlayers from qParams['n'] */
79
- getNPlayers(qParams?: Params, nDef?: number): number;
82
+ extractStateFromLogText(logText: string, fileName: string, turn: number): SetupElt;
83
+ /** compute TP.numPlayers from qParams['n'] */
84
+ getNPlayers(qParams?: Params, nDefault?: number): number;
80
85
  /**
81
86
  * create a HexMap<hexC>; addToMapCont(); makeAllDistricts(); return
82
87
  *
@@ -102,22 +107,38 @@ export declare class GameSetup {
102
107
  * @param cNames add fields & Containers to MapCont [MapCont.cNames.concat()]
103
108
  */
104
109
  makeHexMap(hexMC?: Constructor<HexMap<Hex>>, hexC?: Constructor<Hex>, cNames?: string[]): HexMap<Hex>;
105
- /** EventDispatcher, ScaleCont, GUI-Player */
110
+ /**
111
+ * Make a Table instance [for cross injection] comprising
112
+ * EventDispatcher, ScaleCont, GUI support for gamePlay & Player.
113
+ *
114
+ * startScenario() will call table.layoutTable() to populate it.
115
+ */
106
116
  makeTable(): Table;
107
- initialScenario(qParams?: Params): Scenario;
117
+ /** create a Scenario for a new game; based on qParams.
118
+ *
119
+ * see also: gameSetup.resetState() which can cleanup or extend the Scenario.
120
+ */
121
+ initialScenario(qParams?: Params): StartElt;
108
122
  makeGamePlay(scenario: Scenario): GamePlay;
123
+ /**
124
+ * zero allTiles, allMeeples, allPlayers, etc.
125
+ * invoked by startup();
126
+ */
127
+ zeroAllArrays(): void;
109
128
  /**
110
129
  * Make new Table/layout & gamePlay/hexMap & Players.
111
130
  *
131
+ * - zeroAllArrays()
112
132
  * - getNPlayers()
113
133
  * - makeHexMap()
114
134
  * - makeTable()
115
- * - initialScenario()
116
135
  * - makeGamePlay(scenario)
117
136
  * - startScenario(scenario)
118
- * @param qParams [this.qParams] typically obtained from URL
137
+ * @param scenario [initialScenario(this.qParams), qParams as obtained from URL]
119
138
  */
120
- startup(qParams?: Params): void;
139
+ startup(scenario?: Scenario): void;
140
+ /** the scenario last used by start(scenario) */
141
+ scenario: Scenario;
121
142
  /**
122
143
  * Given hexMap, table, and gamePlay, setup/layout everything for the game scenario.
123
144
  *
@@ -1 +1 @@
1
- {"version":3,"file":"game-setup.d.ts","sourceRoot":"","sources":["../src/game-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-setup.d.ts","sourceRoot":"","sources":["../src/game-setup.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAa,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,GAAG,EAAQ,MAAM,EAAW,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAa,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIhC,oDAAoD;AACpD,OAAO,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAQ1C,8BAA8B;AAC9B,MAAM,WAAW,SAAS;IAAG,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;AACxE,+EAA+E;AAC/E,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAchC,yDAAyD;AACzD,qBAAa,SAAS;IAgBiB,OAAO,EAAE,MAAM;IAdpD,KAAK,EAAE,KAAK,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IAEb;;;;;;;;OAQG;gBACS,QAAQ,EAAE,MAAM,EAAS,OAAO,GAAE,MAAW;IAKzD,MAAM,CAAC,WAAW,SAAM;IACxB,IAAI,IAAI,WAAoC;IAC5C,WAAW,CAAC,IAAI,SAA8B;IAM9C,uGAAuG;IACvG,UAAU,CAAC,QAAQ,EAAE,MAAM;IAU3B,oEAAoE;IACpE,IAAI,SAAS,WAIZ;IAED,qBAAqB;IAIrB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAI1C,4BAA4B;IAC5B,QAAQ,SAAK;IACb,cAAc,CAAC,QAAQ,EAAE,QAAQ;IAWjC,SAAS,SAAM;IACf,IAAI,QAAQ,CAAC,GAAG,EAAE,MAAM,EAIvB;IACD,IAAI,QAAQ,IALM,MAAM,CAKgB;IACxC,IAAI,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAgE;IAExF,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,QAAQ,CAAC,SAAS,YAAwB;IAC1C,aAAa;IAMb,WAAW,UAAS;IACpB;;;;;;;OAOG;IAKH,OAAO,CAAC,SAAS,EAAE,QAAQ,GAAG,SAAS;IAsBvC;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,QAAQ,GAAG,SAAS;IAO1C,2CAA2C;IAC3C,iBAAiB;IAWjB,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,oBAAoB;IAgB1B;;;;;;OAMG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAQvE,8CAA8C;IAC9C,WAAW,CAAC,OAAO,SAAe,EAAE,QAAQ,SAAgB;IAM5D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,UAAU,CACR,KAAK,GAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAU,EACxC,IAAI,GAAE,WAAW,CAAC,GAAG,CAAQ,EAC7B,MAAM,WAAsC;IAQ9C;;;;;OAKG;IACH,SAAS;IAIT;;;OAGG;IACH,eAAe,CAAC,OAAO,SAAe,GAAG,QAAQ;IAMjD,YAAY,CAAC,QAAQ,EAAE,QAAQ;IAI/B;;;OAGG;IACH,aAAa;IAMb;;;;;;;;;;OAUG;IAGH,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ;IAa3B,gDAAgD;IAChD,QAAQ,EAAE,QAAQ,CAAC;IAEnB;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ;IAsBhC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,WAAgB;IAGhE,cAAc,EAAE,cAAc,CAAC;IAC/B;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE,QAAQ;CAOjC"}