bard-legends-framework 0.8.28 → 0.8.30

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 (50) hide show
  1. package/dist/game-entities/base/attachable.test.js +4 -4
  2. package/dist/game-entities/base/attachable.test.js.map +1 -1
  3. package/dist/game-entities/entity/entity.test.js +9 -9
  4. package/dist/game-entities/entity/entity.test.js.map +1 -1
  5. package/dist/game-entities/entity/singleton-entity.test.js +4 -4
  6. package/dist/game-entities/entity/singleton-entity.test.js.map +1 -1
  7. package/dist/game-entities/scene/scene.d.ts +2 -1
  8. package/dist/game-entities/scene/scene.js +4 -1
  9. package/dist/game-entities/scene/scene.js.map +1 -1
  10. package/dist/game-entities/scene/scene.test.js +2 -2
  11. package/dist/game-entities/scene/scene.test.js.map +1 -1
  12. package/dist/game-entities/service/service.test.js +2 -2
  13. package/dist/game-entities/service/service.test.js.map +1 -1
  14. package/dist/game-entities/view/view.test.js +17 -17
  15. package/dist/game-entities/view/view.test.js.map +1 -1
  16. package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics.controller.d.ts +10 -12
  17. package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics.controller.js +9 -9
  18. package/dist/physics/module//342/232/234/357/270/217gateways/controllers/physics.controller.js.map +1 -1
  19. package/dist/physics/module//342/232/234/357/270/217gateways/physics.gateway.d.ts +4 -6
  20. package/dist/physics/module//342/232/234/357/270/217gateways/physics.gateway.js +2 -2
  21. package/dist/physics/module//342/232/234/357/270/217gateways/physics.gateway.js.map +1 -1
  22. package/dist/physics/module//360/237/223/220services/path-finding/availability-grid.service.js +6 -3
  23. package/dist/physics/module//360/237/223/220services/path-finding/availability-grid.service.js.map +1 -1
  24. package/dist/physics/module//360/237/223/220services/path-finding/path-finder.service.d.ts +2 -2
  25. package/dist/physics/module//360/237/223/220services/path-finding/path-finder.service.js +4 -6
  26. package/dist/physics/module//360/237/223/220services/path-finding/path-finder.service.js.map +1 -1
  27. package/dist/pixi/components/display-object-array.d.ts +18 -0
  28. package/dist/pixi/components/display-object-array.js +52 -0
  29. package/dist/pixi/components/display-object-array.js.map +1 -0
  30. package/dist/pixi/helpers/game-assets.js +3 -0
  31. package/dist/pixi/helpers/game-assets.js.map +1 -1
  32. package/dist/pixi/index.d.ts +1 -0
  33. package/dist/pixi/index.js +4 -1
  34. package/dist/pixi/index.js.map +1 -1
  35. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.js +1 -1
  36. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.js.map +1 -1
  37. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.js +1 -1
  38. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.js.map +1 -1
  39. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.d.ts +2 -4
  40. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.js +5 -5
  41. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.js.map +1 -1
  42. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.test.js +18 -18
  43. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.test.js.map +1 -1
  44. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.d.ts +2 -2
  45. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.js +29 -36
  46. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.js.map +1 -1
  47. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.js +23 -23
  48. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.js.map +1 -1
  49. package/package.json +2 -2
  50. package/package.json.bak +2 -2
@@ -5,25 +5,25 @@ const vitest_1 = require("vitest");
5
5
  const path_finder_1 = require("./path-finder");
6
6
  (0, vitest_1.describe)('PATH_FINDER', () => {
7
7
  (0, vitest_1.test)('basic 1', () => {
8
- let grid = helpers_lib_1.Grid.createByValues([[true]]);
9
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, helpers_lib_1.Vector.zero, { includeDiagonals: true });
8
+ let grid = new helpers_lib_1.Grid([[true]]);
9
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, helpers_lib_1.Vector.zero, helpers_lib_1.GridNeighborType.ALL);
10
10
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
11
11
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([{ x: 0, y: 0 }]);
12
12
  });
13
13
  (0, vitest_1.test)('basic 2', () => {
14
- let grid = helpers_lib_1.Grid.createByValues([[false]]);
15
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, helpers_lib_1.Vector.zero, { includeDiagonals: true });
14
+ let grid = new helpers_lib_1.Grid([[false]]);
15
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, helpers_lib_1.Vector.zero, helpers_lib_1.GridNeighborType.ALL);
16
16
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
17
17
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([{ x: 0, y: 0 }]);
18
18
  });
19
19
  (0, vitest_1.test)('should give the shortest path without diagonals', () => {
20
- let grid = helpers_lib_1.Grid.createByValues([
20
+ let grid = new helpers_lib_1.Grid([
21
21
  [true, true, true, true],
22
22
  [true, false, false, true],
23
23
  [true, false, false, true],
24
24
  [true, false, false, true]
25
25
  ]);
26
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), { includeDiagonals: false });
26
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), helpers_lib_1.GridNeighborType.ORTOGONAL);
27
27
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
28
28
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
29
29
  { x: 0, y: 0 },
@@ -36,13 +36,13 @@ const path_finder_1 = require("./path-finder");
36
36
  ]);
37
37
  });
38
38
  (0, vitest_1.test)('should give the shortest path 1', () => {
39
- let grid = helpers_lib_1.Grid.createByValues([
39
+ let grid = new helpers_lib_1.Grid([
40
40
  [true, true, true, true],
41
41
  [true, false, false, true],
42
42
  [true, false, false, true],
43
43
  [true, false, false, true]
44
44
  ]);
45
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), { includeDiagonals: true });
45
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), helpers_lib_1.GridNeighborType.ALL);
46
46
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
47
47
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
48
48
  { x: 0, y: 0 },
@@ -54,13 +54,13 @@ const path_finder_1 = require("./path-finder");
54
54
  ]);
55
55
  });
56
56
  (0, vitest_1.test)('should give the shortest path 2', () => {
57
- let grid = helpers_lib_1.Grid.createByValues([
57
+ let grid = new helpers_lib_1.Grid([
58
58
  [true, true, true, false],
59
59
  [true, false, false, false],
60
60
  [true, true, false, true],
61
61
  [true, false, true, true]
62
62
  ]);
63
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), { includeDiagonals: true });
63
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), helpers_lib_1.GridNeighborType.ALL);
64
64
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
65
65
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
66
66
  { x: 0, y: 0 },
@@ -71,13 +71,13 @@ const path_finder_1 = require("./path-finder");
71
71
  ]);
72
72
  });
73
73
  (0, vitest_1.test)('should give the shortest path 3', () => {
74
- let grid = helpers_lib_1.Grid.createByValues([
74
+ let grid = new helpers_lib_1.Grid([
75
75
  [true, false, false, true, false],
76
76
  [true, false, true, false, true],
77
77
  [true, false, true, false, true],
78
78
  [false, true, false, false, true]
79
79
  ]);
80
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(4, 3), { includeDiagonals: true });
80
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(4, 3), helpers_lib_1.GridNeighborType.ALL);
81
81
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
82
82
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
83
83
  { x: 0, y: 0 },
@@ -93,13 +93,13 @@ const path_finder_1 = require("./path-finder");
93
93
  ]);
94
94
  });
95
95
  (0, vitest_1.test)('should give the shortest path backwards 3', () => {
96
- let grid = helpers_lib_1.Grid.createByValues([
96
+ let grid = new helpers_lib_1.Grid([
97
97
  [true, false, false, true, false],
98
98
  [true, false, true, false, true],
99
99
  [true, false, true, false, true],
100
100
  [false, true, false, false, true]
101
101
  ]);
102
- let result = path_finder_1.PathFinder.findPath(grid, new helpers_lib_1.Vector(4, 3), helpers_lib_1.Vector.zero, { includeDiagonals: true });
102
+ let result = path_finder_1.PathFinder.findPath(grid, new helpers_lib_1.Vector(4, 3), helpers_lib_1.Vector.zero, helpers_lib_1.GridNeighborType.ALL);
103
103
  (0, vitest_1.expect)(result.directPathAvailable).toBe(true);
104
104
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
105
105
  { x: 4, y: 3 },
@@ -115,13 +115,13 @@ const path_finder_1 = require("./path-finder");
115
115
  ]);
116
116
  });
117
117
  (0, vitest_1.test)('should give the shortest path to closest position', () => {
118
- let grid = helpers_lib_1.Grid.createByValues([
118
+ let grid = new helpers_lib_1.Grid([
119
119
  [true, true, true, false],
120
120
  [true, false, false, false],
121
121
  [true, false, false, false],
122
122
  [true, true, false, true]
123
123
  ]);
124
- let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), { includeDiagonals: true });
124
+ let result = path_finder_1.PathFinder.findPath(grid, helpers_lib_1.Vector.zero, new helpers_lib_1.Vector(3, 3), helpers_lib_1.GridNeighborType.ALL);
125
125
  (0, vitest_1.expect)(result.directPathAvailable).toBe(false);
126
126
  (0, vitest_1.expect)(result.path.map(value => value.toVec2())).toEqual([
127
127
  { x: 0, y: 0 },
@@ -135,7 +135,7 @@ const path_finder_1 = require("./path-finder");
135
135
  let size = 800;
136
136
  let centerPos = new Vector(Math.floor(size / 2), Math.floor(size / 2));
137
137
 
138
- let bigGrid = Grid.createNew(new Vector(size, size), true);
138
+ let bigGrid = new Grid({ size: new Vector(size, size), defaultValue: true });
139
139
  for (let x = 0; x < size; x++) {
140
140
  for (let y = 0; y < size; y++) {
141
141
  let vector = new Vector(x, y);
@@ -146,7 +146,7 @@ const path_finder_1 = require("./path-finder");
146
146
  }
147
147
 
148
148
  let start = new Date();
149
- PathFinder.findPath(bigGrid, Vector.zero, new Vector(-1, -1), { includeDiagonals: true });
149
+ PathFinder.findPath(bigGrid, Vector.zero, new Vector(-1, -1), GridNeighborType.ALL);
150
150
  let end = new Date();
151
151
 
152
152
  console.info(end.getTime() - start.getTime());
@@ -1 +1 @@
1
- {"version":3,"file":"path-finder.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/path-finder/path-finder.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"path-finder.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/path-finder/path-finder.test.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,8 @@ export declare class VectorFieldPathFinder {
11
11
  private getBestDirectionToTarget;
12
12
  private getTheResultFromBestDirections;
13
13
  private isNextPositionAvailable;
14
- private getNeighborDirectionsWithDistances;
15
- private getNeighborsWithDistances;
14
+ private getNeighborValues;
16
15
  private getAreaPositions;
16
+ private vectorToNeighborDirection;
17
17
  private getHighestWeight;
18
18
  }
@@ -7,12 +7,12 @@ class VectorFieldPathFinder {
7
7
  constructor(targetArea, availabilityGrid) {
8
8
  this.targetArea = targetArea;
9
9
  this.availabilityGrid = availabilityGrid;
10
- this.highestWeight = this.getHighestWeight(availabilityGrid.size);
11
- this.weightGrid = helpers_lib_1.Grid.createNew(this.availabilityGrid.size, this.highestWeight);
12
- this.directionsToTargetCache = helpers_lib_1.Grid.createNew(this.availabilityGrid.size, undefined);
10
+ this.highestWeight = this.getHighestWeight(this.availabilityGrid.size);
11
+ this.weightGrid = new helpers_lib_1.Grid({ size: this.availabilityGrid.size, defaultValue: this.highestWeight });
12
+ this.directionsToTargetCache = new helpers_lib_1.Grid({ size: this.availabilityGrid.size, defaultValue: undefined });
13
13
  let closedPositions = new vector_set_1.VectorSet();
14
14
  let queue = new helpers_lib_1.Queue();
15
- let targetPositions = this.getAreaPositions(availabilityGrid.moveAreaInsideGrid(targetArea));
15
+ let targetPositions = this.getAreaPositions(this.availabilityGrid.cropAreaOutsideOfTheGrid(targetArea));
16
16
  targetPositions.forEach(position => {
17
17
  this.weightGrid.set(position, 0);
18
18
  queue.add(position);
@@ -21,13 +21,12 @@ class VectorFieldPathFinder {
21
21
  let currentPoint = queue.pop();
22
22
  if (!closedPositions.has(currentPoint)) {
23
23
  closedPositions.add(currentPoint);
24
- let currentWeight = this.weightGrid.get(currentPoint);
25
- let neighbors = this.getNeighborsWithDistances(currentPoint, this.availabilityGrid);
26
- neighbors.forEach(neighbor => {
24
+ let currentWeight = this.weightGrid.getOrFail(currentPoint);
25
+ this.getNeighborValues(currentPoint, this.availabilityGrid).forEach(neighbor => {
27
26
  if (!closedPositions.has(neighbor.position)) {
28
- let neighborsCurrentWeight = this.weightGrid.get(neighbor.position);
27
+ let neighborsCurrentWeight = this.weightGrid.getOrFail(neighbor.position);
29
28
  let newWeight = currentWeight + neighbor.distance;
30
- if (availabilityGrid.get(neighbor.position) && newWeight < neighborsCurrentWeight) {
29
+ if (this.availabilityGrid.getOrFail(neighbor.position) && newWeight < neighborsCurrentWeight) {
31
30
  this.weightGrid.set(neighbor.position, newWeight);
32
31
  queue.add(neighbor.position);
33
32
  }
@@ -43,27 +42,22 @@ class VectorFieldPathFinder {
43
42
  return this.directionsToTargetCache.get(startingPosition);
44
43
  }
45
44
  else {
46
- let neighborDirections = this.getNeighborDirectionsWithDistances()
47
- .map(neighborDirection => {
48
- let neighborPosition = startingPosition.add(neighborDirection.direction);
49
- return { position: neighborPosition, direction: neighborDirection.direction, distance: neighborDirection.distance };
50
- })
51
- .filter(neighbor => this.weightGrid.isPointWithinBounds(neighbor.position));
45
+ let neighborValues = this.getNeighborValues(startingPosition, this.availabilityGrid);
52
46
  let result;
53
- if (this.weightGrid.get(startingPosition) >= this.highestWeight) {
54
- let atLeastOneNeighborIsAvailable = neighborDirections.some(neighbor => this.availabilityGrid.get(neighbor.position));
47
+ if (this.weightGrid.getOrFail(startingPosition) >= this.highestWeight) {
48
+ let atLeastOneNeighborIsAvailable = neighborValues.some(neighbor => this.availabilityGrid.get(neighbor.position));
55
49
  if (atLeastOneNeighborIsAvailable) {
56
- let atLeastOneNeighborIsUnavailable = neighborDirections.some(neighbor => !this.availabilityGrid.get(neighbor.position));
50
+ let atLeastOneNeighborIsUnavailable = neighborValues.some(neighbor => !this.availabilityGrid.get(neighbor.position));
57
51
  if (atLeastOneNeighborIsUnavailable) {
58
- result = this.getDirectionAwayFromObstacles(neighborDirections);
52
+ result = this.getDirectionAwayFromObstacles(neighborValues);
59
53
  }
60
54
  else {
61
- result = this.getBestDirectionToTarget(startingPosition, neighborDirections);
55
+ result = this.getBestDirectionToTarget(startingPosition, neighborValues);
62
56
  }
63
57
  }
64
58
  }
65
59
  else {
66
- result = this.getBestDirectionToTarget(startingPosition, neighborDirections);
60
+ result = this.getBestDirectionToTarget(startingPosition, neighborValues);
67
61
  }
68
62
  this.directionsToTargetCache.set(startingPosition, result);
69
63
  return result;
@@ -78,9 +72,9 @@ class VectorFieldPathFinder {
78
72
  }
79
73
  getBestDirectionToTarget(startingPosition, neighborDirections) {
80
74
  let bestDirections = neighborDirections
81
- .filter(neighbor => this.weightGrid.get(neighbor.position) < this.highestWeight)
75
+ .filter(neighbor => this.weightGrid.getOrFail(neighbor.position) < this.highestWeight)
82
76
  .reduce((acc, neighbor) => {
83
- let newWeight = this.weightGrid.get(neighbor.position) + neighbor.distance;
77
+ let newWeight = this.weightGrid.getOrFail(neighbor.position) + neighbor.distance;
84
78
  if (newWeight < acc.bestWeight) {
85
79
  acc.bestDirections = [neighbor.direction];
86
80
  acc.bestWeight = newWeight;
@@ -104,20 +98,15 @@ class VectorFieldPathFinder {
104
98
  }
105
99
  }
106
100
  isNextPositionAvailable(position, direction) {
107
- let nextPosition = position.add(helpers_lib_1.Grid.vectorToNeighborDirection(direction, { includeDiagonals: true }));
108
- return this.availabilityGrid.isPointWithinBounds(nextPosition) && this.availabilityGrid.get(nextPosition);
101
+ let nextPosition = position.add(this.vectorToNeighborDirection(direction));
102
+ return this.availabilityGrid.isPointWithinBounds(nextPosition) && this.availabilityGrid.getOrFail(nextPosition);
109
103
  }
110
- getNeighborDirectionsWithDistances() {
111
- let directions = [];
112
- helpers_lib_1.Grid.getNeighborDirections().forEach(direction => directions.push({ direction, distance: 10 }));
113
- helpers_lib_1.Grid.getDiagonalNeighborDirections().forEach(direction => directions.push({ direction, distance: 14 }));
114
- return directions;
115
- }
116
- getNeighborsWithDistances(position, grid) {
117
- let neighbors = [];
118
- grid.getNeighborPositions(position).forEach(neighbor => neighbors.push({ position: neighbor, distance: 10 }));
119
- grid.getDiagonalNeighborPositions(position).forEach(neighbor => neighbors.push({ position: neighbor, distance: 14 }));
120
- return neighbors;
104
+ getNeighborValues(position, grid) {
105
+ return this.weightGrid.getNeighborDirections(position, helpers_lib_1.GridNeighborType.ALL).map(neighborDirection => ({
106
+ position: position.add(neighborDirection),
107
+ direction: neighborDirection,
108
+ distance: neighborDirection.x !== 0 && neighborDirection.y !== 0 ? 14 : 10
109
+ }));
121
110
  }
122
111
  getAreaPositions(area) {
123
112
  let positions = [];
@@ -128,6 +117,10 @@ class VectorFieldPathFinder {
128
117
  }
129
118
  return positions;
130
119
  }
120
+ vectorToNeighborDirection(vector) {
121
+ let roundedVector = vector.normalize().round();
122
+ return new helpers_lib_1.Vector(roundedVector.x, roundedVector.y);
123
+ }
131
124
  getHighestWeight(size) {
132
125
  return (size.x + size.y) * 20;
133
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vector-field-path-finder.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vector-field-path-finder.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,13 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
7
7
  (0, vitest_1.describe)('weight grid', () => {
8
8
  (0, vitest_1.test)('basic 1', () => {
9
9
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
10
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(1, 1), true);
10
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(1, 1), defaultValue: true });
11
11
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
12
12
  (0, vitest_1.expect)(pathFinder['weightGrid'].get(new helpers_lib_1.Vector(0, 0))).toBe(0);
13
13
  });
14
14
  (0, vitest_1.test)('basic 2', () => {
15
15
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } });
16
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
16
+ let availabilityGrid = new helpers_lib_1.Grid([
17
17
  [true, true],
18
18
  [true, true]
19
19
  ]);
@@ -25,7 +25,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
25
25
  });
26
26
  (0, vitest_1.test)('sample 1', () => {
27
27
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
28
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
28
+ let availabilityGrid = new helpers_lib_1.Grid([
29
29
  [true, true],
30
30
  [true, true]
31
31
  ]);
@@ -37,7 +37,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
37
37
  });
38
38
  (0, vitest_1.test)('sample 2', () => {
39
39
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } });
40
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(3, 3), true);
40
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(3, 3), defaultValue: true });
41
41
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
42
42
  (0, vitest_1.expect)(pathFinder['weightGrid']['_grid']).toEqual([
43
43
  [0, 0, 10],
@@ -47,7 +47,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
47
47
  });
48
48
  (0, vitest_1.test)('sample 3', () => {
49
49
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 1, y: 1 }, bottomRight: { x: 2, y: 2 } });
50
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(3, 3), true);
50
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(3, 3), defaultValue: true });
51
51
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
52
52
  (0, vitest_1.expect)(pathFinder['weightGrid']['_grid']).toEqual([
53
53
  [14, 10, 10],
@@ -57,7 +57,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
57
57
  });
58
58
  (0, vitest_1.test)('complex 1', () => {
59
59
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
60
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
60
+ let availabilityGrid = new helpers_lib_1.Grid([
61
61
  [true, false, true],
62
62
  [true, true, true],
63
63
  [false, false, true],
@@ -74,7 +74,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
74
74
  });
75
75
  (0, vitest_1.test)('complex 2', () => {
76
76
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } });
77
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
77
+ let availabilityGrid = new helpers_lib_1.Grid([
78
78
  [true, true, false, true],
79
79
  [true, true, false, true],
80
80
  [false, false, true, true]
@@ -89,7 +89,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
89
89
  });
90
90
  (0, vitest_1.test)('complex 3', () => {
91
91
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 2, y: 2 }, bottomRight: { x: 3, y: 3 } });
92
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
92
+ let availabilityGrid = new helpers_lib_1.Grid([
93
93
  [true, true, false, true],
94
94
  [true, true, false, true],
95
95
  [false, false, true, true],
@@ -106,7 +106,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
106
106
  });
107
107
  (0, vitest_1.test)('unreachable area 1', () => {
108
108
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
109
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
109
+ let availabilityGrid = new helpers_lib_1.Grid([
110
110
  [true, false, true, false, true],
111
111
  [true, false, true, false, true],
112
112
  [true, false, false, false, true],
@@ -127,7 +127,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
127
127
  (0, vitest_1.describe)('getDirectionToTarget', () => {
128
128
  (0, vitest_1.test)('sample 1', () => {
129
129
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
130
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
130
+ let availabilityGrid = new helpers_lib_1.Grid([
131
131
  [true, true],
132
132
  [true, true]
133
133
  ]);
@@ -136,7 +136,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
136
136
  });
137
137
  (0, vitest_1.test)('sample 2', () => {
138
138
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
139
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
139
+ let availabilityGrid = new helpers_lib_1.Grid([
140
140
  [true, true, true],
141
141
  [false, true, true]
142
142
  ]);
@@ -145,7 +145,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
145
145
  });
146
146
  (0, vitest_1.test)('sample 3', () => {
147
147
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
148
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
148
+ let availabilityGrid = new helpers_lib_1.Grid([
149
149
  [true, false, true],
150
150
  [true, false, true],
151
151
  [true, true, true]
@@ -155,7 +155,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
155
155
  });
156
156
  (0, vitest_1.test)('sample 4', () => {
157
157
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
158
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
158
+ let availabilityGrid = new helpers_lib_1.Grid([
159
159
  [true, false, false],
160
160
  [true, false, false]
161
161
  ]);
@@ -166,18 +166,18 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
166
166
  (0, vitest_1.describe)('edge cases', () => {
167
167
  (0, vitest_1.test)('should create an instance', () => {
168
168
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
169
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(1, 1), true);
169
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(1, 1), defaultValue: true });
170
170
  (0, vitest_1.expect)(new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid)).toBeTruthy();
171
171
  });
172
172
  (0, vitest_1.test)('should activate unavailable target cells of the target area', () => {
173
173
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
174
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(1, 1), false);
174
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(1, 1), defaultValue: false });
175
175
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
176
176
  (0, vitest_1.expect)(pathFinder['weightGrid'].get(new helpers_lib_1.Vector(0, 0))).toBe(0);
177
177
  });
178
178
  (0, vitest_1.test)('should select closest grid cells if the target is outside of the grid', () => {
179
179
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 3, y: -1 }, bottomRight: { x: 3, y: 1 } });
180
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(3, 3), true);
180
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(3, 3), defaultValue: true });
181
181
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
182
182
  (0, vitest_1.expect)(pathFinder['weightGrid']['_grid']).toEqual([
183
183
  [20, 10, 0],
@@ -187,7 +187,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
187
187
  });
188
188
  (0, vitest_1.test)('should return undefined if starting position and its neighbors are unreachable', () => {
189
189
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
190
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
190
+ let availabilityGrid = new helpers_lib_1.Grid([
191
191
  [true, false, false],
192
192
  [true, false, false]
193
193
  ]);
@@ -196,7 +196,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
196
196
  });
197
197
  (0, vitest_1.test)('should find the direction if starting position is unreachable but there is a reachable neighbor', () => {
198
198
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
199
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
199
+ let availabilityGrid = new helpers_lib_1.Grid([
200
200
  [true, true, false],
201
201
  [true, false, false]
202
202
  ]);
@@ -205,19 +205,19 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
205
205
  });
206
206
  (0, vitest_1.test)('should return undefined if starting point is inside target area', () => {
207
207
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } });
208
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(2, 2), true);
208
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(2, 2), defaultValue: true });
209
209
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
210
210
  (0, vitest_1.expect)(pathFinder.getDirectionToTarget(new helpers_lib_1.Vector(0, 0))).toBeUndefined();
211
211
  });
212
212
  (0, vitest_1.test)('should return closest cell result if starting point is outside of the grid', () => {
213
213
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
214
- let availabilityGrid = helpers_lib_1.Grid.createNew(new helpers_lib_1.Vector(2, 1), true);
214
+ let availabilityGrid = new helpers_lib_1.Grid({ size: new helpers_lib_1.Vector(2, 1), defaultValue: true });
215
215
  let pathFinder = new vector_field_path_finder_1.VectorFieldPathFinder(targetArea, availabilityGrid);
216
216
  (0, vitest_1.expect)(pathFinder.getDirectionToTarget(new helpers_lib_1.Vector(2, 0))?.value).toEqual(helpers_lib_1.Radian.get270.value);
217
217
  });
218
218
  (0, vitest_1.test)('if average direction is pointing blocked path, it should pick random available direction', () => {
219
219
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
220
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
220
+ let availabilityGrid = new helpers_lib_1.Grid([
221
221
  [true, true, true],
222
222
  [true, false, true],
223
223
  [true, true, true]
@@ -228,7 +228,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
228
228
  });
229
229
  (0, vitest_1.test)('finding path from unavailable space should point the direction away from the obstacle', () => {
230
230
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
231
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
231
+ let availabilityGrid = new helpers_lib_1.Grid([
232
232
  [true, true, true, true],
233
233
  [true, false, false, true],
234
234
  [true, false, false, true],
@@ -240,7 +240,7 @@ const vector_field_path_finder_1 = require("./vector-field-path-finder");
240
240
  });
241
241
  (0, vitest_1.test)('finding path from unavailable space should point the direction to the best neighbor if all neighbors are available', () => {
242
242
  let targetArea = helpers_lib_1.Rectangle.fromRect({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } });
243
- let availabilityGrid = helpers_lib_1.Grid.createByValues([
243
+ let availabilityGrid = new helpers_lib_1.Grid([
244
244
  [true, false, true, false],
245
245
  [true, false, true, true],
246
246
  [true, true, true, true]
@@ -1 +1 @@
1
- {"version":3,"file":"vector-field-path-finder.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vector-field-path-finder.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.ts"],"names":[],"mappings":"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"}