@gamepark/react-game 6.35.5 → 6.35.6

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.
@@ -35,11 +35,12 @@ export declare abstract class HexagonalGridLocator<P extends number = number, M
35
35
  */
36
36
  getBoundaries(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<GridBoundaries>;
37
37
  /**
38
- * Get the delta X and Y coordinates to apply to place some area given its boundaries.
39
- * @param boundaries Boundaries of the location to place
40
- * @return X and Y delta to apply
38
+ * Based on the coordinates of each hexagon in an area, return the delta coordinates to place the area properly
39
+ * @param areaCoordinates Coordinates of each hexagon composing the area
40
+ * @param coordinatesSystem System of coordinates to consider
41
+ * @return delta x and y to apply to the position of the area
41
42
  */
42
- private getAreaDelta;
43
+ getAreaDelta(areaCoordinates: XYCoordinates[], coordinatesSystem?: HexGridSystem): XYCoordinates;
43
44
  /**
44
45
  * Get the coordinates for the full grid area
45
46
  * @param location Location to place
@@ -55,7 +56,14 @@ export declare abstract class HexagonalGridLocator<P extends number = number, M
55
56
  */
56
57
  getLocationCoordinates(location: Location<P, L>, context: MaterialContext<P, M, L>): Partial<Coordinates>;
57
58
  /**
58
- * Get the coordinates of an item on the grid. If the item is a Polyhex, the shape will be use to center the origin coordinates of the item on the
59
+ * Get the position of a hexagon
60
+ * @param coordinates Coordinates of the hexagon
61
+ * @param coordinatesSystem System of coordinates to consider
62
+ * @return coordinates to place the hexagon on the location
63
+ */
64
+ getHexagonPosition(coordinates: Partial<XYCoordinates>, coordinatesSystem?: HexGridSystem): XYCoordinates;
65
+ /**
66
+ * Get the coordinates of an item on the grid. If the item is a Polyhex, the shape will be used to center the origin coordinates of the item on the
59
67
  * correct grid location.
60
68
  * @param item Item to place
61
69
  * @param context Context of the game
@@ -24,6 +24,7 @@ var isEqual_1 = __importDefault(require("lodash/isEqual"));
24
24
  var maxBy_1 = __importDefault(require("lodash/maxBy"));
25
25
  var minBy_1 = __importDefault(require("lodash/minBy"));
26
26
  var omit_1 = __importDefault(require("lodash/omit"));
27
+ var range_1 = __importDefault(require("lodash/range"));
27
28
  var uniqWith_1 = __importDefault(require("lodash/uniqWith"));
28
29
  var components_1 = require("../components");
29
30
  var Locator_1 = require("./Locator");
@@ -72,34 +73,21 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
72
73
  return this.boundaries;
73
74
  };
74
75
  /**
75
- * Get the delta X and Y coordinates to apply to place some area given its boundaries.
76
- * @param boundaries Boundaries of the location to place
77
- * @return X and Y delta to apply
76
+ * Based on the coordinates of each hexagon in an area, return the delta coordinates to place the area properly
77
+ * @param areaCoordinates Coordinates of each hexagon composing the area
78
+ * @param coordinatesSystem System of coordinates to consider
79
+ * @return delta x and y to apply to the position of the area
78
80
  */
79
- HexagonalGridLocator.prototype.getAreaDelta = function (boundaries) {
80
- var _a = boundaries.xMin, xMin = _a === void 0 ? 0 : _a, _b = boundaries.xMax, xMax = _b === void 0 ? 0 : _b, _c = boundaries.yMin, yMin = _c === void 0 ? 0 : _c, _d = boundaries.yMax, yMax = _d === void 0 ? 0 : _d;
81
- switch (this.coordinatesSystem) {
82
- case rules_api_1.HexGridSystem.Axial: {
83
- return { x: 0, y: 0 };
84
- // throw new Error('Axial HexGridSystem is not yet implemented')
85
- }
86
- case rules_api_1.HexGridSystem.OddQ: {
87
- var deltaX = (xMin + xMax) / 2;
88
- var deltaY = ((xMin !== xMax ? 0.5 : xMin % 2 === 0 ? 0 : 1) + yMin + yMax) / 2;
89
- return { x: deltaX * 3 / 2 * this.sizeX, y: deltaY * Math.sqrt(3) * this.sizeY };
90
- }
91
- case rules_api_1.HexGridSystem.EvenQ: {
92
- var deltaX = (xMin + xMax) / 2;
93
- var deltaY = ((xMin !== xMax ? -0.5 : xMin % 2 === 0 ? 0 : -1) + yMin + yMax) / 2;
94
- return { x: deltaX * 3 / 2 * this.sizeX, y: deltaY * Math.sqrt(3) * this.sizeY };
95
- }
96
- case rules_api_1.HexGridSystem.OddR: {
97
- throw new Error('OddR HexGridSystem is not yet implemented');
98
- }
99
- case rules_api_1.HexGridSystem.EvenR: {
100
- throw new Error('EvenR HexGridSystem is not yet implemented');
101
- }
102
- }
81
+ HexagonalGridLocator.prototype.getAreaDelta = function (areaCoordinates, coordinatesSystem) {
82
+ var _this = this;
83
+ var _a, _b, _c, _d, _e, _f, _g, _h;
84
+ if (coordinatesSystem === void 0) { coordinatesSystem = this.coordinatesSystem; }
85
+ var areaDeltaCoordinates = areaCoordinates.map(function (coordinates) { return _this.getHexagonPosition(coordinates, coordinatesSystem); });
86
+ var xMin = (_b = (_a = (0, minBy_1.default)(areaDeltaCoordinates, 'x')) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : 0;
87
+ var xMax = (_d = (_c = (0, maxBy_1.default)(areaDeltaCoordinates, 'x')) === null || _c === void 0 ? void 0 : _c.x) !== null && _d !== void 0 ? _d : 0;
88
+ var yMin = (_f = (_e = (0, minBy_1.default)(areaDeltaCoordinates, 'y')) === null || _e === void 0 ? void 0 : _e.y) !== null && _f !== void 0 ? _f : 0;
89
+ var yMax = (_h = (_g = (0, maxBy_1.default)(areaDeltaCoordinates, 'y')) === null || _g === void 0 ? void 0 : _g.y) !== null && _h !== void 0 ? _h : 0;
90
+ return { x: (xMin + xMax) / 2, y: (yMin + yMax) / 2 };
103
91
  };
104
92
  /**
105
93
  * Get the coordinates for the full grid area
@@ -109,7 +97,9 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
109
97
  */
110
98
  HexagonalGridLocator.prototype.getAreaCoordinates = function (location, context) {
111
99
  var _a = this.getCoordinates(location, context), _b = _a.x, x = _b === void 0 ? 0 : _b, _c = _a.y, y = _c === void 0 ? 0 : _c, z = _a.z;
112
- var _d = this.getAreaDelta(this.getBoundaries(location, context)), _e = _d.x, deltaX = _e === void 0 ? 0 : _e, _f = _d.y, deltaY = _f === void 0 ? 0 : _f;
100
+ var _d = this.getBoundaries(location, context), _e = _d.xMax, xMax = _e === void 0 ? 0 : _e, _f = _d.xMin, xMin = _f === void 0 ? 0 : _f, _g = _d.yMax, yMax = _g === void 0 ? 0 : _g, _h = _d.yMin, yMin = _h === void 0 ? 0 : _h;
101
+ var areaCoordinates = (0, range_1.default)(xMin, xMax + 1).flatMap(function (x) { return (0, range_1.default)(yMin, yMax + 1).map(function (y) { return ({ x: x, y: y }); }); });
102
+ var _j = this.getAreaDelta(areaCoordinates), deltaX = _j.x, deltaY = _j.y;
113
103
  return { x: x + deltaX, y: y + deltaY, z: z };
114
104
  };
115
105
  /**
@@ -123,29 +113,37 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
123
113
  return this.getAreaCoordinates(location, context);
124
114
  }
125
115
  var _a = this.getCoordinates(location, context), _b = _a.x, baseX = _b === void 0 ? 0 : _b, _c = _a.y, baseY = _c === void 0 ? 0 : _c, baseZ = _a.z;
126
- var _d = location.x, x = _d === void 0 ? 0 : _d, _e = location.y, y = _e === void 0 ? 0 : _e;
127
- switch (this.coordinatesSystem) {
116
+ var _d = this.getHexagonPosition(location), _e = _d.x, x = _e === void 0 ? 0 : _e, _f = _d.y, y = _f === void 0 ? 0 : _f;
117
+ return { x: baseX + x, y: baseY + y, z: baseZ };
118
+ };
119
+ /**
120
+ * Get the position of a hexagon
121
+ * @param coordinates Coordinates of the hexagon
122
+ * @param coordinatesSystem System of coordinates to consider
123
+ * @return coordinates to place the hexagon on the location
124
+ */
125
+ HexagonalGridLocator.prototype.getHexagonPosition = function (coordinates, coordinatesSystem) {
126
+ if (coordinatesSystem === void 0) { coordinatesSystem = this.coordinatesSystem; }
127
+ var _a = coordinates.x, x = _a === void 0 ? 0 : _a, _b = coordinates.y, y = _b === void 0 ? 0 : _b;
128
+ switch (coordinatesSystem) {
128
129
  case rules_api_1.HexGridSystem.Axial: {
129
130
  return {
130
- x: baseX + (x * Math.sqrt(3) + y * Math.sqrt(3) / 2) * this.sizeX,
131
- y: baseY + y * 3 / 2 * this.sizeY,
132
- z: baseZ
131
+ x: (x * Math.sqrt(3) + y * Math.sqrt(3) / 2) * this.sizeX,
132
+ y: y * 3 / 2 * this.sizeY
133
133
  };
134
134
  }
135
135
  case rules_api_1.HexGridSystem.OddQ: {
136
136
  y += ((x % 2 + 2) % 2) / 2;
137
137
  return {
138
- x: baseX + x * 3 / 2 * this.sizeX,
139
- y: baseY + y * Math.sqrt(3) * this.sizeY,
140
- z: baseZ
138
+ x: x * 3 / 2 * this.sizeX,
139
+ y: y * Math.sqrt(3) * this.sizeY
141
140
  };
142
141
  }
143
142
  case rules_api_1.HexGridSystem.EvenQ: {
144
143
  y -= ((x % 2 + 2) % 2) / 2;
145
144
  return {
146
- x: baseX + x * 3 / 2 * this.sizeX,
147
- y: baseY + y * Math.sqrt(3) * this.sizeY,
148
- z: baseZ
145
+ x: x * 3 / 2 * this.sizeX,
146
+ y: y * Math.sqrt(3) * this.sizeY
149
147
  };
150
148
  }
151
149
  case rules_api_1.HexGridSystem.OddR: {
@@ -157,26 +155,22 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
157
155
  }
158
156
  };
159
157
  /**
160
- * Get the coordinates of an item on the grid. If the item is a Polyhex, the shape will be use to center the origin coordinates of the item on the
158
+ * Get the coordinates of an item on the grid. If the item is a Polyhex, the shape will be used to center the origin coordinates of the item on the
161
159
  * correct grid location.
162
160
  * @param item Item to place
163
161
  * @param context Context of the game
164
162
  * @return the coordinates of the item
165
163
  */
166
164
  HexagonalGridLocator.prototype.getItemCoordinates = function (item, context) {
167
- var _this = this;
168
- var _a, _b, _c, _d;
165
+ var _a = _super.prototype.getItemCoordinates.call(this, item, context), _b = _a.x, x = _b === void 0 ? 0 : _b, _c = _a.y, y = _c === void 0 ? 0 : _c, z = _a.z;
169
166
  var description = context.material[context.type];
170
- if (description && (0, components_1.isPolyhexDescription)(description)) {
171
- var shape = description.getPolyhexShape(item, context).map(function (hex) {
172
- return (0, rules_api_1.hexFromAxial)((0, rules_api_1.hexRotate)((0, rules_api_1.hexToAxial)(hex, description.coordinatesSystem), item.location.rotation), _this.coordinatesSystem);
173
- });
174
- var xMin = (_a = (0, minBy_1.default)(shape, 'x')) === null || _a === void 0 ? void 0 : _a.x, xMax = (_b = (0, maxBy_1.default)(shape, 'x')) === null || _b === void 0 ? void 0 : _b.x, yMin = (_c = (0, minBy_1.default)(shape, 'y')) === null || _c === void 0 ? void 0 : _c.y, yMax = (_d = (0, maxBy_1.default)(shape, 'y')) === null || _d === void 0 ? void 0 : _d.y;
175
- var _e = _super.prototype.getItemCoordinates.call(this, item, context), _f = _e.x, x = _f === void 0 ? 0 : _f, _g = _e.y, y = _g === void 0 ? 0 : _g, z = _e.z;
176
- var _h = this.getAreaDelta({ xMin: xMin, xMax: xMax, yMin: yMin, yMax: yMax }), _j = _h.x, deltaX = _j === void 0 ? 0 : _j, _k = _h.y, deltaY = _k === void 0 ? 0 : _k;
177
- return { x: x + deltaX, y: y + deltaY, z: z };
167
+ if (!description || !(0, components_1.isPolyhexDescription)(description)) {
168
+ return { x: x, y: y, z: z };
178
169
  }
179
- return _super.prototype.getItemCoordinates.call(this, item, context);
170
+ var shape = description.getPolyhexShape(item, context);
171
+ var areaDelta = this.getAreaDelta(shape, description.coordinatesSystem);
172
+ var _d = rotateVector(areaDelta, item.location.rotation * 60), deltaX = _d.x, deltaY = _d.y;
173
+ return { x: x + deltaX, y: y + deltaY, z: z };
180
174
  };
181
175
  /**
182
176
  * Rotate the location. On a hexagonal grid, by default the rotation is expected to be [0, 5] and it is multiplied by 60 degrees.
@@ -231,4 +225,13 @@ var HexagonalGridLocator = /** @class */ (function (_super) {
231
225
  return HexagonalGridLocator;
232
226
  }(Locator_1.Locator));
233
227
  exports.HexagonalGridLocator = HexagonalGridLocator;
228
+ function rotateVector(vector, degrees) {
229
+ var rad = degrees * (Math.PI / 180);
230
+ var cos = Math.cos(rad);
231
+ var sin = Math.sin(rad);
232
+ return {
233
+ x: Math.round(10000 * (vector.x * cos - vector.y * sin)) / 10000,
234
+ y: Math.round(10000 * (vector.x * sin + vector.y * cos)) / 10000
235
+ };
236
+ }
234
237
  //# sourceMappingURL=HexagonalGridLocator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HexagonalGridLocator.js","sourceRoot":"","sources":["../../src/locators/HexagonalGridLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HexagonalGridLocator.js","sourceRoot":"","sources":["../../src/locators/HexagonalGridLocator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/react-game",
3
- "version": "6.35.5",
3
+ "version": "6.35.6",
4
4
  "description": "React components & tools to create a Board Game user interface for Game Park",
5
5
  "author": "Romain Fromi <romain@game-park.com> (https://game-park.com/)",
6
6
  "license": "ISC",
@@ -1,43 +0,0 @@
1
- import { XYCoordinates } from '@gamepark/rules-api';
2
- export declare enum HexagonalGridCoordinatesSystem {
3
- Axial = 0,
4
- OddQ = 1,
5
- EvenQ = 2,
6
- OddR = 3,
7
- EvenR = 4
8
- }
9
- export declare const oddQToAxial: ({ x, y }: XYCoordinates) => {
10
- x: number;
11
- y: number;
12
- };
13
- export declare const axialToOddQ: ({ x, y }: XYCoordinates) => {
14
- x: number;
15
- y: number;
16
- };
17
- export declare const evenQToAxial: ({ x, y }: XYCoordinates) => {
18
- x: number;
19
- y: number;
20
- };
21
- export declare const axialToEvenQ: ({ x, y }: XYCoordinates) => {
22
- x: number;
23
- y: number;
24
- };
25
- export declare const oddRToAxial: ({ x, y }: XYCoordinates) => {
26
- y: number;
27
- x: number;
28
- };
29
- export declare const axialToOddR: ({ x, y }: XYCoordinates) => {
30
- y: number;
31
- x: number;
32
- };
33
- export declare const evenRToAxial: ({ x, y }: XYCoordinates) => {
34
- y: number;
35
- x: number;
36
- };
37
- export declare const axialToEvenR: ({ x, y }: XYCoordinates) => {
38
- y: number;
39
- x: number;
40
- };
41
- export declare function hexToAxial(hex: XYCoordinates, system: HexagonalGridCoordinatesSystem): XYCoordinates;
42
- export declare function hexFromAxial(hex: XYCoordinates, system: HexagonalGridCoordinatesSystem): XYCoordinates;
43
- export declare function hexRotate(vector: XYCoordinates, rotation?: number): XYCoordinates;
@@ -1,92 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hexRotate = exports.hexFromAxial = exports.hexToAxial = exports.axialToEvenR = exports.evenRToAxial = exports.axialToOddR = exports.oddRToAxial = exports.axialToEvenQ = exports.evenQToAxial = exports.axialToOddQ = exports.oddQToAxial = exports.HexagonalGridCoordinatesSystem = void 0;
4
- var HexagonalGridCoordinatesSystem;
5
- (function (HexagonalGridCoordinatesSystem) {
6
- HexagonalGridCoordinatesSystem[HexagonalGridCoordinatesSystem["Axial"] = 0] = "Axial";
7
- HexagonalGridCoordinatesSystem[HexagonalGridCoordinatesSystem["OddQ"] = 1] = "OddQ";
8
- HexagonalGridCoordinatesSystem[HexagonalGridCoordinatesSystem["EvenQ"] = 2] = "EvenQ";
9
- HexagonalGridCoordinatesSystem[HexagonalGridCoordinatesSystem["OddR"] = 3] = "OddR";
10
- HexagonalGridCoordinatesSystem[HexagonalGridCoordinatesSystem["EvenR"] = 4] = "EvenR";
11
- })(HexagonalGridCoordinatesSystem = exports.HexagonalGridCoordinatesSystem || (exports.HexagonalGridCoordinatesSystem = {}));
12
- var oddQToAxial = function (_a) {
13
- var x = _a.x, y = _a.y;
14
- return ({ x: x, y: y - (x - (x & 1) / 2) });
15
- };
16
- exports.oddQToAxial = oddQToAxial;
17
- var axialToOddQ = function (_a) {
18
- var x = _a.x, y = _a.y;
19
- return ({ x: x, y: y + (x - (x & 1)) / 2 });
20
- };
21
- exports.axialToOddQ = axialToOddQ;
22
- var evenQToAxial = function (_a) {
23
- var x = _a.x, y = _a.y;
24
- return ({ x: x, y: y - (x + (x & 1) / 2) });
25
- };
26
- exports.evenQToAxial = evenQToAxial;
27
- var axialToEvenQ = function (_a) {
28
- var x = _a.x, y = _a.y;
29
- return ({ x: x, y: y + (x + (x & 1)) / 2 });
30
- };
31
- exports.axialToEvenQ = axialToEvenQ;
32
- var oddRToAxial = function (_a) {
33
- var x = _a.x, y = _a.y;
34
- return ({ y: y, x: x - (y - (y & 1) / 2) });
35
- };
36
- exports.oddRToAxial = oddRToAxial;
37
- var axialToOddR = function (_a) {
38
- var x = _a.x, y = _a.y;
39
- return ({ y: y, x: x + (y - (y & 1)) / 2 });
40
- };
41
- exports.axialToOddR = axialToOddR;
42
- var evenRToAxial = function (_a) {
43
- var x = _a.x, y = _a.y;
44
- return ({ y: y, x: x - (y + (y & 1) / 2) });
45
- };
46
- exports.evenRToAxial = evenRToAxial;
47
- var axialToEvenR = function (_a) {
48
- var x = _a.x, y = _a.y;
49
- return ({ y: y, x: x + (y + (y & 1)) / 2 });
50
- };
51
- exports.axialToEvenR = axialToEvenR;
52
- function hexToAxial(hex, system) {
53
- switch (system) {
54
- case HexagonalGridCoordinatesSystem.OddQ:
55
- return (0, exports.oddQToAxial)(hex);
56
- case HexagonalGridCoordinatesSystem.EvenQ:
57
- return (0, exports.evenQToAxial)(hex);
58
- case HexagonalGridCoordinatesSystem.OddR:
59
- return (0, exports.oddRToAxial)(hex);
60
- case HexagonalGridCoordinatesSystem.EvenR:
61
- return (0, exports.evenRToAxial)(hex);
62
- default:
63
- return hex;
64
- }
65
- }
66
- exports.hexToAxial = hexToAxial;
67
- function hexFromAxial(hex, system) {
68
- switch (system) {
69
- case HexagonalGridCoordinatesSystem.OddQ:
70
- return (0, exports.axialToOddQ)(hex);
71
- case HexagonalGridCoordinatesSystem.EvenQ:
72
- return (0, exports.axialToEvenQ)(hex);
73
- case HexagonalGridCoordinatesSystem.OddR:
74
- return (0, exports.axialToOddR)(hex);
75
- case HexagonalGridCoordinatesSystem.EvenR:
76
- return (0, exports.axialToEvenR)(hex);
77
- default:
78
- return hex;
79
- }
80
- }
81
- exports.hexFromAxial = hexFromAxial;
82
- function hexRotate(vector, rotation) {
83
- if (rotation === void 0) { rotation = 0; }
84
- if (rotation % 6 === 0)
85
- return vector;
86
- if (rotation < 0)
87
- return hexRotate(vector, 6 - rotation % 6);
88
- var y = vector.y, z = -(vector.x + vector.y);
89
- return hexRotate({ x: -y, y: -z }, rotation - 1);
90
- }
91
- exports.hexRotate = hexRotate;
92
- //# sourceMappingURL=grid.hex.util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grid.hex.util.js","sourceRoot":"","sources":["../../../src/locators/utils/grid.hex.util.ts"],"names":[],"mappings":"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"}