bard-legends-framework 0.2.2 → 0.2.3
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.
- package/dist/game-entities/attachable/attachable.test.d.ts +1 -0
- package/dist/game-entities/attachable/attachable.test.js +136 -0
- package/dist/game-entities/attachable/attachable.test.js.map +1 -0
- package/dist/game-entities/controller/controller.test.d.ts +1 -0
- package/dist/game-entities/controller/controller.test.js +128 -0
- package/dist/game-entities/controller/controller.test.js.map +1 -0
- package/dist/game-entities/entity/entity.test.d.ts +1 -0
- package/dist/game-entities/entity/entity.test.js +301 -0
- package/dist/game-entities/entity/entity.test.js.map +1 -0
- package/dist/game-entities/scene/scene.test.d.ts +1 -0
- package/dist/game-entities/scene/scene.test.js +231 -0
- package/dist/game-entities/scene/scene.test.js.map +1 -0
- package/dist/game-entities/service/service.test.d.ts +1 -0
- package/dist/game-entities/service/service.test.js +245 -0
- package/dist/game-entities/service/service.test.js.map +1 -0
- package/dist/game-entities/view/view.test.d.ts +1 -0
- package/dist/game-entities/view/view.test.js +514 -0
- package/dist/game-entities/view/view.test.js.map +1 -0
- package/dist/utilities/libraries/animator/animator.test.d.ts +1 -0
- package/dist/utilities/libraries/animator/animator.test.js +670 -0
- package/dist/utilities/libraries/animator/animator.test.js.map +1 -0
- package/dist/utilities/libraries/data-structures/grid/grid.test.d.ts +1 -0
- package/dist/utilities/libraries/data-structures/grid/grid.test.js +140 -0
- package/dist/utilities/libraries/data-structures/grid/grid.test.js.map +1 -0
- package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.d.ts +1 -0
- package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.js +70 -0
- package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.js.map +1 -0
- package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.test.d.ts +1 -0
- package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.test.js +164 -0
- package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.test.js.map +1 -0
- package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.d.ts +1 -0
- package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.js +232 -0
- package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.test.js.map +1 -0
- package/dist/utilities/services/keyboard/keyboard.js +5 -2
- package/dist/utilities/services/keyboard/keyboard.js.map +1 -1
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +4 -0
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +17 -0
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.js.map +1 -0
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.d.ts +1 -0
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +43 -0
- package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js.map +1 -0
- package/dist/utilities/services/mouse/mouse.service.js +10 -4
- package/dist/utilities/services/mouse/mouse.service.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"animator.test.js","sourceRoot":"","sources":["../../../../src/utilities/libraries/animator/animator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const helpers_lib_1 = require("helpers-lib");
|
|
4
|
+
const vitest_1 = require("vitest");
|
|
5
|
+
const grid_1 = require("./grid");
|
|
6
|
+
(0, vitest_1.describe)('Grid', () => {
|
|
7
|
+
let grid;
|
|
8
|
+
(0, vitest_1.beforeEach)(() => {
|
|
9
|
+
grid = grid_1.Grid.createNew({ x: 3, y: 3 }, true);
|
|
10
|
+
});
|
|
11
|
+
(0, vitest_1.test)('should be defined', () => {
|
|
12
|
+
(0, vitest_1.expect)(grid).toBeDefined();
|
|
13
|
+
});
|
|
14
|
+
(0, vitest_1.test)('should set and get values', () => {
|
|
15
|
+
grid.setArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } }, false);
|
|
16
|
+
(0, vitest_1.expect)(grid.get({ x: 0, y: 0 })).toBeFalsy();
|
|
17
|
+
(0, vitest_1.expect)(grid.get({ x: 0, y: 1 })).toBeFalsy();
|
|
18
|
+
(0, vitest_1.expect)(grid.get({ x: 1, y: 0 })).toBeFalsy();
|
|
19
|
+
(0, vitest_1.expect)(grid.get({ x: 1, y: 1 })).toBeFalsy();
|
|
20
|
+
});
|
|
21
|
+
(0, vitest_1.test)('should throw an error if area is outside of the grid', () => {
|
|
22
|
+
(0, vitest_1.expect)(() => grid.setArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 3, y: 3 } }, false)).toThrow();
|
|
23
|
+
});
|
|
24
|
+
(0, vitest_1.test)('should crop area outside of the grid 1', () => {
|
|
25
|
+
(0, vitest_1.expect)(grid.cropPartsOutsideOfTheGrid({ topLeft: { x: -1, y: -1 }, bottomRight: { x: 3, y: 3 } })).toEqual({
|
|
26
|
+
topLeft: { x: 0, y: 0 },
|
|
27
|
+
bottomRight: { x: 2, y: 2 }
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
(0, vitest_1.test)('should crop area outside of the grid 2', () => {
|
|
31
|
+
(0, vitest_1.expect)(grid.cropPartsOutsideOfTheGrid({ topLeft: { x: 3, y: 3 }, bottomRight: { x: 4, y: 4 } })).toEqual({
|
|
32
|
+
topLeft: { x: 2, y: 2 },
|
|
33
|
+
bottomRight: { x: 2, y: 2 }
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
(0, vitest_1.test)('should crop area outside of the grid 2', () => {
|
|
37
|
+
(0, vitest_1.expect)(grid.cropPartsOutsideOfTheGrid({ topLeft: { x: -1, y: -1 }, bottomRight: { x: -1, y: -1 } })).toEqual({
|
|
38
|
+
topLeft: { x: 0, y: 0 },
|
|
39
|
+
bottomRight: { x: 0, y: 0 }
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
(0, vitest_1.test)('should check if area is within bounds', () => {
|
|
43
|
+
(0, vitest_1.expect)(grid.isAreaWithinBounds({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } })).toBeTruthy();
|
|
44
|
+
(0, vitest_1.expect)(grid.isAreaWithinBounds({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 3, y: 3 } })).toBeFalsy();
|
|
45
|
+
});
|
|
46
|
+
(0, vitest_1.test)('should check if point is within bounds', () => {
|
|
47
|
+
(0, vitest_1.expect)(grid.isPointWithinBounds({ x: 0, y: 0 })).toBeTruthy();
|
|
48
|
+
(0, vitest_1.expect)(grid.isPointWithinBounds({ x: 1, y: 1 })).toBeTruthy();
|
|
49
|
+
(0, vitest_1.expect)(grid.isPointWithinBounds({ x: 3, y: 3 })).toBeFalsy();
|
|
50
|
+
});
|
|
51
|
+
(0, vitest_1.test)('should set area within bounds', () => {
|
|
52
|
+
grid.safeSetArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 3, y: 3 } }, false);
|
|
53
|
+
(0, vitest_1.expect)(grid.get({ x: 0, y: 0 })).toBeFalsy();
|
|
54
|
+
(0, vitest_1.expect)(grid.get({ x: 0, y: 1 })).toBeFalsy();
|
|
55
|
+
(0, vitest_1.expect)(grid.get({ x: 1, y: 0 })).toBeFalsy();
|
|
56
|
+
(0, vitest_1.expect)(grid.get({ x: 1, y: 1 })).toBeFalsy();
|
|
57
|
+
});
|
|
58
|
+
(0, vitest_1.test)('should return neighbor positions only adjacent', () => {
|
|
59
|
+
(0, vitest_1.expect)(grid.getNeighborPositions({ x: 1, y: 1 })).toEqual([
|
|
60
|
+
{ x: 0, y: 1 },
|
|
61
|
+
{ x: 1, y: 0 },
|
|
62
|
+
{ x: 1, y: 2 },
|
|
63
|
+
{ x: 2, y: 1 }
|
|
64
|
+
]);
|
|
65
|
+
});
|
|
66
|
+
(0, vitest_1.test)('should return neighbor positions with diagonals', () => {
|
|
67
|
+
(0, vitest_1.expect)(grid.getNeighborPositions({ x: 1, y: 1 }, { includeDiagonals: true })).toEqual([
|
|
68
|
+
{ x: 0, y: 1 },
|
|
69
|
+
{ x: 1, y: 0 },
|
|
70
|
+
{ x: 1, y: 2 },
|
|
71
|
+
{ x: 2, y: 1 },
|
|
72
|
+
{ x: 0, y: 0 },
|
|
73
|
+
{ x: 0, y: 2 },
|
|
74
|
+
{ x: 2, y: 0 },
|
|
75
|
+
{ x: 2, y: 2 }
|
|
76
|
+
]);
|
|
77
|
+
});
|
|
78
|
+
(0, vitest_1.test)('should return neighbor positions only adjacent at the edge', () => {
|
|
79
|
+
(0, vitest_1.expect)(grid.getNeighborPositions({ x: 2, y: 2 })).toEqual([
|
|
80
|
+
{ x: 1, y: 2 },
|
|
81
|
+
{ x: 2, y: 1 }
|
|
82
|
+
]);
|
|
83
|
+
});
|
|
84
|
+
(0, vitest_1.test)('should return neighbor positions at the edge with diagonals', () => {
|
|
85
|
+
(0, vitest_1.expect)(grid.getNeighborPositions({ x: 0, y: 0 }, { includeDiagonals: true })).toEqual([
|
|
86
|
+
{ x: 0, y: 1 },
|
|
87
|
+
{ x: 1, y: 0 },
|
|
88
|
+
{ x: 1, y: 1 }
|
|
89
|
+
]);
|
|
90
|
+
});
|
|
91
|
+
(0, vitest_1.test)('should iterate over all values', () => {
|
|
92
|
+
grid.setArea({ topLeft: { x: 1, y: 0 }, bottomRight: { x: 1, y: 1 } }, false);
|
|
93
|
+
let values = [];
|
|
94
|
+
grid.forEach((value, position) => values.push({ value, position }));
|
|
95
|
+
(0, vitest_1.expect)(values).toEqual([
|
|
96
|
+
{ value: true, position: { x: 0, y: 0 } },
|
|
97
|
+
{ value: false, position: { x: 1, y: 0 } },
|
|
98
|
+
{ value: true, position: { x: 2, y: 0 } },
|
|
99
|
+
{ value: true, position: { x: 0, y: 1 } },
|
|
100
|
+
{ value: false, position: { x: 1, y: 1 } },
|
|
101
|
+
{ value: true, position: { x: 2, y: 1 } },
|
|
102
|
+
{ value: true, position: { x: 0, y: 2 } },
|
|
103
|
+
{ value: true, position: { x: 1, y: 2 } },
|
|
104
|
+
{ value: true, position: { x: 2, y: 2 } }
|
|
105
|
+
]);
|
|
106
|
+
});
|
|
107
|
+
(0, vitest_1.test)('should map over all values', () => {
|
|
108
|
+
grid.setArea({ topLeft: { x: 1, y: 0 }, bottomRight: { x: 1, y: 1 } }, false);
|
|
109
|
+
let newGrid = grid.map((value, position) => (position.x + position.y) * (value ? 1 : -1));
|
|
110
|
+
(0, vitest_1.expect)(newGrid.get({ x: 0, y: 0 })).toBe(0);
|
|
111
|
+
(0, vitest_1.expect)(newGrid.get({ x: 1, y: 0 })).toBe(-1);
|
|
112
|
+
(0, vitest_1.expect)(newGrid.get({ x: 2, y: 0 })).toBe(2);
|
|
113
|
+
(0, vitest_1.expect)(newGrid.get({ x: 0, y: 1 })).toBe(1);
|
|
114
|
+
(0, vitest_1.expect)(newGrid.get({ x: 1, y: 1 })).toBe(-2);
|
|
115
|
+
(0, vitest_1.expect)(newGrid.get({ x: 2, y: 1 })).toBe(3);
|
|
116
|
+
(0, vitest_1.expect)(newGrid.get({ x: 0, y: 2 })).toBe(2);
|
|
117
|
+
(0, vitest_1.expect)(newGrid.get({ x: 1, y: 2 })).toBe(3);
|
|
118
|
+
(0, vitest_1.expect)(newGrid.get({ x: 2, y: 2 })).toBe(4);
|
|
119
|
+
(0, vitest_1.expect)(newGrid.size).toEqual({ x: 3, y: 3 });
|
|
120
|
+
});
|
|
121
|
+
(0, vitest_1.test)('should find the neighbor direction from a vector', () => {
|
|
122
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 0, y: 1 })).toEqual({ x: 0, y: 1 });
|
|
123
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 1, y: 0 })).toEqual({ x: 1, y: 0 });
|
|
124
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 0, y: -1 })).toEqual({ x: 0, y: -1 });
|
|
125
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: -1, y: 0 })).toEqual({ x: -1, y: 0 });
|
|
126
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 0.5, y: 2 })).toEqual({ x: 0, y: 1 });
|
|
127
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 2, y: -0.5 })).toEqual({ x: 1, y: 0 });
|
|
128
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 0.5, y: -2 })).toEqual({ x: 0, y: -1 });
|
|
129
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: -2, y: -0.5 })).toEqual({ x: -1, y: 0 });
|
|
130
|
+
let middle = grid_1.Grid.vectorToNeighborDirection({ x: 1, y: 1 });
|
|
131
|
+
(0, vitest_1.expect)(helpers_lib_1.Vector.isEqual(middle, { x: 0, y: 1 }) || helpers_lib_1.Vector.isEqual(middle, { x: 1, y: 0 })).toBeTruthy();
|
|
132
|
+
});
|
|
133
|
+
(0, vitest_1.test)('should find the neighbor direction with diagonals from a vector', () => {
|
|
134
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 0, y: 1 }, { includeDiagonals: true })).toEqual({ x: 0, y: 1 });
|
|
135
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 1, y: 1 }, { includeDiagonals: true })).toEqual({ x: 1, y: 1 });
|
|
136
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: -1, y: -1 }, { includeDiagonals: true })).toEqual({ x: -1, y: -1 });
|
|
137
|
+
(0, vitest_1.expect)(grid_1.Grid.vectorToNeighborDirection({ x: 2, y: 1 }, { includeDiagonals: true })).toEqual({ x: 1, y: 0 });
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
//# sourceMappingURL=grid.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grid.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/data-structures/grid/grid.test.ts"],"names":[],"mappings":";;AAAA,6CAA2C;AAC3C,mCAA4D;AAE5D,iCAA8B;AAE9B,IAAA,iBAAQ,EAAC,MAAM,EAAE,GAAG,EAAE;IACpB,IAAI,IAAmB,CAAC;IAExB,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,IAAI,GAAG,WAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,mBAAmB,EAAE,GAAG,EAAE;QAC7B,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,2BAA2B,EAAE,GAAG,EAAE;QACrC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAC9E,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,sDAAsD,EAAE,GAAG,EAAE;QAChE,IAAA,eAAM,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,IAAA,eAAM,EAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACzG,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACvB,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,IAAA,eAAM,EAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACvG,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACvB,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,IAAA,eAAM,EAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YAC3G,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACvB,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,IAAA,eAAM,EAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QACvG,IAAA,eAAM,EAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,IAAA,eAAM,EAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAC9D,IAAA,eAAM,EAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAC9D,IAAA,eAAM,EAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,+BAA+B,EAAE,GAAG,EAAE;QACzC,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAClF,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7C,IAAA,eAAM,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,gDAAgD,EAAE,GAAG,EAAE;QAC1D,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACxD,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SACf,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACpF,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SACf,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4DAA4D,EAAE,GAAG,EAAE;QACtE,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACxD,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SACf,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6DAA6D,EAAE,GAAG,EAAE;QACvE,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACpF,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YACd,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;SACf,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9E,IAAI,MAAM,GAAyC,EAAE,CAAC;QACtD,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QACpE,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1C,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1C,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;SAC1C,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4BAA4B,EAAE,GAAG,EAAE;QACtC,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9E,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElG,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAA,eAAM,EAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE5C,IAAA,eAAM,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,kDAAkD,EAAE,GAAG,EAAE;QAC5D,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/E,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/E,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACjF,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEjF,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjF,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAClF,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACnF,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEpF,IAAI,MAAM,GAAG,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAA,eAAM,EAAC,oBAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,iEAAiE,EAAE,GAAG,EAAE;QAC3E,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3G,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3G,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/G,IAAA,eAAM,EAAC,WAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const closest_available_space_helper_1 = require("./closest-available-space.helper");
|
|
5
|
+
const grid_1 = require("../../data-structures/grid/grid");
|
|
6
|
+
(0, vitest_1.describe)('findClosestAvailableSpace', () => {
|
|
7
|
+
let grid;
|
|
8
|
+
(0, vitest_1.beforeEach)(() => {
|
|
9
|
+
grid = grid_1.Grid.createNew({ x: 10, y: 10 }, true);
|
|
10
|
+
});
|
|
11
|
+
(0, vitest_1.test)('should return no change vector if the location is available', () => {
|
|
12
|
+
let boundingBox = { topLeft: { x: 50, y: 50 }, bottomRight: { x: 60, y: 60 } };
|
|
13
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 0, y: 0 });
|
|
14
|
+
});
|
|
15
|
+
(0, vitest_1.test)('should support object positions outside of the world size', () => {
|
|
16
|
+
let boundingBox = { topLeft: { x: -5, y: -5 }, bottomRight: { x: 5, y: 5 } };
|
|
17
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 5, y: 5 });
|
|
18
|
+
boundingBox = { topLeft: { x: -5, y: -5 }, bottomRight: { x: 15, y: 15 } };
|
|
19
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 5, y: 5 });
|
|
20
|
+
boundingBox = { topLeft: { x: 95, y: 95 }, bottomRight: { x: 105, y: 105 } };
|
|
21
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: -5, y: -5 });
|
|
22
|
+
boundingBox = { topLeft: { x: 85, y: 85 }, bottomRight: { x: 105, y: 105 } };
|
|
23
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: -5, y: -5 });
|
|
24
|
+
});
|
|
25
|
+
(0, vitest_1.test)('should find the no change vector space next to an existing object', () => {
|
|
26
|
+
grid.setArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 0, y: 0 } }, false);
|
|
27
|
+
let boundingBox = { topLeft: { x: 10, y: 10 }, bottomRight: { x: 20, y: 20 } };
|
|
28
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 0, y: 0 });
|
|
29
|
+
});
|
|
30
|
+
(0, vitest_1.test)('should find the closest available space if trying to spawn in occupied space', () => {
|
|
31
|
+
grid.setArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 1, y: 1 } }, false);
|
|
32
|
+
let boundingBox = { topLeft: { x: 5, y: 5 }, bottomRight: { x: 15, y: 15 } };
|
|
33
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: -5, y: 15 });
|
|
34
|
+
});
|
|
35
|
+
(0, vitest_1.test)('should find the closest available space if trying to spawn in crowded space', () => {
|
|
36
|
+
// Crowded space
|
|
37
|
+
// 0 1 2 3 4 5 6 7 8 9
|
|
38
|
+
// 0 □ 1 1 1 2 2 □ □ □ □
|
|
39
|
+
// 1 □ 1 1 1 2 2 □ □ □ □
|
|
40
|
+
// 2 □ 1 1 1 2 2 □ □ □ □
|
|
41
|
+
// 3 3 3 3 ■ ■ ■ □ □ □ □
|
|
42
|
+
// 4 □ □ □ ■ ■ ■ □ □ □ □
|
|
43
|
+
// 5 □ □ 4 ■ ■ ■ 6 6 6 □
|
|
44
|
+
// 6 □ □ 4 5 5 5 □ □ □ □
|
|
45
|
+
grid.setArea({ topLeft: { x: 1, y: 0 }, bottomRight: { x: 3, y: 2 } }, false); // 1
|
|
46
|
+
grid.setArea({ topLeft: { x: 4, y: 0 }, bottomRight: { x: 5, y: 2 } }, false); // 2
|
|
47
|
+
grid.setArea({ topLeft: { x: 0, y: 3 }, bottomRight: { x: 1, y: 3 } }, false); // 3
|
|
48
|
+
grid.setArea({ topLeft: { x: 2, y: 5 }, bottomRight: { x: 2, y: 6 } }, false); // 4
|
|
49
|
+
grid.setArea({ topLeft: { x: 3, y: 6 }, bottomRight: { x: 5, y: 6 } }, false); // 5
|
|
50
|
+
grid.setArea({ topLeft: { x: 6, y: 5 }, bottomRight: { x: 8, y: 5 } }, false); // 6
|
|
51
|
+
let boundingBox = { topLeft: { x: 10, y: 20 }, bottomRight: { x: 40, y: 50 } };
|
|
52
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 20, y: 10 });
|
|
53
|
+
});
|
|
54
|
+
(0, vitest_1.test)('should not fooled by initial position occupying more space in grid and find narrower gap 1', () => {
|
|
55
|
+
grid.setArea({ topLeft: { x: 1, y: 0 }, bottomRight: { x: 4, y: 3 } }, false);
|
|
56
|
+
let boundingBox = { topLeft: { x: 4, y: 2 }, bottomRight: { x: 12, y: 20 } };
|
|
57
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: -3, y: -1 });
|
|
58
|
+
});
|
|
59
|
+
(0, vitest_1.test)('should not fooled by initial position occupying more space in grid and find narrower gap 2', () => {
|
|
60
|
+
grid.setArea({ topLeft: { x: 1, y: 0 }, bottomRight: { x: 4, y: 3 } }, false);
|
|
61
|
+
let boundingBox = { topLeft: { x: -6, y: -8 }, bottomRight: { x: 2, y: 10 } };
|
|
62
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toEqual({ x: 7, y: 9 });
|
|
63
|
+
});
|
|
64
|
+
(0, vitest_1.test)('should return undefined if there is no available space', () => {
|
|
65
|
+
grid.setArea({ topLeft: { x: 0, y: 0 }, bottomRight: { x: 9, y: 9 } }, false);
|
|
66
|
+
let boundingBox = { topLeft: { x: 0, y: 0 }, bottomRight: { x: 10, y: 10 } };
|
|
67
|
+
(0, vitest_1.expect)(closest_available_space_helper_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(grid, boundingBox, 10)).toBeUndefined();
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=closest-available-space.helper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"closest-available-space.helper.test.js","sourceRoot":"","sources":["../../../../../src/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const grid_1 = require("../../data-structures/grid/grid");
|
|
5
|
+
const path_finder_1 = require("./path-finder");
|
|
6
|
+
(0, vitest_1.describe)('PATH_FINDER', () => {
|
|
7
|
+
(0, vitest_1.test)('basic 1', () => {
|
|
8
|
+
let grid = grid_1.Grid.createByValues([[true]]);
|
|
9
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 0, y: 0 }, { includeDiagonals: true });
|
|
10
|
+
(0, vitest_1.expect)(result).toEqual({ directPathAvailable: true, path: [{ x: 0, y: 0 }] });
|
|
11
|
+
});
|
|
12
|
+
(0, vitest_1.test)('basic 2', () => {
|
|
13
|
+
let grid = grid_1.Grid.createByValues([[false]]);
|
|
14
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 0, y: 0 }, { includeDiagonals: true });
|
|
15
|
+
(0, vitest_1.expect)(result).toEqual({ directPathAvailable: true, path: [{ x: 0, y: 0 }] });
|
|
16
|
+
});
|
|
17
|
+
(0, vitest_1.test)('should give the shortest path without diagonals', () => {
|
|
18
|
+
let grid = grid_1.Grid.createByValues([
|
|
19
|
+
[true, true, true, true],
|
|
20
|
+
[true, false, false, true],
|
|
21
|
+
[true, false, false, true],
|
|
22
|
+
[true, false, false, true]
|
|
23
|
+
]);
|
|
24
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 3, y: 3 }, { includeDiagonals: false });
|
|
25
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
26
|
+
directPathAvailable: true,
|
|
27
|
+
path: [
|
|
28
|
+
{ x: 0, y: 0 },
|
|
29
|
+
{ x: 1, y: 0 },
|
|
30
|
+
{ x: 2, y: 0 },
|
|
31
|
+
{ x: 3, y: 0 },
|
|
32
|
+
{ x: 3, y: 1 },
|
|
33
|
+
{ x: 3, y: 2 },
|
|
34
|
+
{ x: 3, y: 3 }
|
|
35
|
+
]
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
(0, vitest_1.test)('should give the shortest path 1', () => {
|
|
39
|
+
let grid = grid_1.Grid.createByValues([
|
|
40
|
+
[true, true, true, true],
|
|
41
|
+
[true, false, false, true],
|
|
42
|
+
[true, false, false, true],
|
|
43
|
+
[true, false, false, true]
|
|
44
|
+
]);
|
|
45
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 3, y: 3 }, { includeDiagonals: true });
|
|
46
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
47
|
+
directPathAvailable: true,
|
|
48
|
+
path: [
|
|
49
|
+
{ x: 0, y: 0 },
|
|
50
|
+
{ x: 1, y: 0 },
|
|
51
|
+
{ x: 2, y: 0 },
|
|
52
|
+
{ x: 3, y: 1 },
|
|
53
|
+
{ x: 3, y: 2 },
|
|
54
|
+
{ x: 3, y: 3 }
|
|
55
|
+
]
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
(0, vitest_1.test)('should give the shortest path 2', () => {
|
|
59
|
+
let grid = grid_1.Grid.createByValues([
|
|
60
|
+
[true, true, true, false],
|
|
61
|
+
[true, false, false, false],
|
|
62
|
+
[true, true, false, true],
|
|
63
|
+
[true, false, true, true]
|
|
64
|
+
]);
|
|
65
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 3, y: 3 }, { includeDiagonals: true });
|
|
66
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
67
|
+
directPathAvailable: true,
|
|
68
|
+
path: [
|
|
69
|
+
{ x: 0, y: 0 },
|
|
70
|
+
{ x: 0, y: 1 },
|
|
71
|
+
{ x: 1, y: 2 },
|
|
72
|
+
{ x: 2, y: 3 },
|
|
73
|
+
{ x: 3, y: 3 }
|
|
74
|
+
]
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
(0, vitest_1.test)('should give the shortest path 3', () => {
|
|
78
|
+
let grid = grid_1.Grid.createByValues([
|
|
79
|
+
[true, false, false, true, false],
|
|
80
|
+
[true, false, true, false, true],
|
|
81
|
+
[true, false, true, false, true],
|
|
82
|
+
[false, true, false, false, true]
|
|
83
|
+
]);
|
|
84
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 4, y: 3 }, { includeDiagonals: true });
|
|
85
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
86
|
+
directPathAvailable: true,
|
|
87
|
+
path: [
|
|
88
|
+
{ x: 0, y: 0 },
|
|
89
|
+
{ x: 0, y: 1 },
|
|
90
|
+
{ x: 0, y: 2 },
|
|
91
|
+
{ x: 1, y: 3 },
|
|
92
|
+
{ x: 2, y: 2 },
|
|
93
|
+
{ x: 2, y: 1 },
|
|
94
|
+
{ x: 3, y: 0 },
|
|
95
|
+
{ x: 4, y: 1 },
|
|
96
|
+
{ x: 4, y: 2 },
|
|
97
|
+
{ x: 4, y: 3 }
|
|
98
|
+
]
|
|
99
|
+
});
|
|
100
|
+
});
|
|
101
|
+
(0, vitest_1.test)('should give the shortest path backwards 3', () => {
|
|
102
|
+
let grid = grid_1.Grid.createByValues([
|
|
103
|
+
[true, false, false, true, false],
|
|
104
|
+
[true, false, true, false, true],
|
|
105
|
+
[true, false, true, false, true],
|
|
106
|
+
[false, true, false, false, true]
|
|
107
|
+
]);
|
|
108
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 4, y: 3 }, { x: 0, y: 0 }, { includeDiagonals: true });
|
|
109
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
110
|
+
directPathAvailable: true,
|
|
111
|
+
path: [
|
|
112
|
+
{ x: 4, y: 3 },
|
|
113
|
+
{ x: 4, y: 2 },
|
|
114
|
+
{ x: 4, y: 1 },
|
|
115
|
+
{ x: 3, y: 0 },
|
|
116
|
+
{ x: 2, y: 1 },
|
|
117
|
+
{ x: 2, y: 2 },
|
|
118
|
+
{ x: 1, y: 3 },
|
|
119
|
+
{ x: 0, y: 2 },
|
|
120
|
+
{ x: 0, y: 1 },
|
|
121
|
+
{ x: 0, y: 0 }
|
|
122
|
+
]
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
(0, vitest_1.test)('should give the shortest path to closest position', () => {
|
|
126
|
+
let grid = grid_1.Grid.createByValues([
|
|
127
|
+
[true, true, true, false],
|
|
128
|
+
[true, false, false, false],
|
|
129
|
+
[true, false, false, false],
|
|
130
|
+
[true, true, false, true]
|
|
131
|
+
]);
|
|
132
|
+
let result = path_finder_1.PathFinder.findPath(grid, { x: 0, y: 0 }, { x: 3, y: 3 }, { includeDiagonals: true });
|
|
133
|
+
(0, vitest_1.expect)(result).toEqual({
|
|
134
|
+
directPathAvailable: false,
|
|
135
|
+
path: [
|
|
136
|
+
{ x: 0, y: 0 },
|
|
137
|
+
{ x: 0, y: 1 },
|
|
138
|
+
{ x: 0, y: 2 },
|
|
139
|
+
{ x: 1, y: 3 }
|
|
140
|
+
]
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
/*
|
|
144
|
+
test('stress test', () => {
|
|
145
|
+
let size = 800;
|
|
146
|
+
let centerPos = { x: Math.floor(size / 2), y: Math.floor(size / 2) };
|
|
147
|
+
|
|
148
|
+
let bigGrid = Grid.createNew({ x: size, y: size }, true);
|
|
149
|
+
for (let x = 0; x < size; x++) {
|
|
150
|
+
for (let y = 0; y < size; y++) {
|
|
151
|
+
if (Vector.getDistance(centerPos, { x, y }) < size / 4) {
|
|
152
|
+
bigGrid.set({ x, y }, false);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
let start = new Date();
|
|
158
|
+
PathFinder.findPath(bigGrid, { x: 0, y: 0 }, { x: size - 1, y: size - 1 }, { includeDiagonals: true });
|
|
159
|
+
let end = new Date();
|
|
160
|
+
|
|
161
|
+
console.info(end.getTime() - start.getTime());
|
|
162
|
+
});*/
|
|
163
|
+
});
|
|
164
|
+
//# sourceMappingURL=path-finder.test.js.map
|
|
@@ -0,0 +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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|