bard-legends-framework 0.9.5 → 0.9.7

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 (239) hide show
  1. package/dist/_interfaces/index.d.ts +2 -2
  2. package/dist/_interfaces/index.js +2 -3
  3. package/dist/game-entities/attachable/attachable.d.ts +6 -6
  4. package/dist/game-entities/attachable/attachable.js +28 -30
  5. package/dist/game-entities/attachable/attachable.spec.js +129 -128
  6. package/dist/game-entities/attachable/attachable.store.d.ts +5 -5
  7. package/dist/game-entities/attachable/attachable.store.js +34 -32
  8. package/dist/game-entities/attachable/attachable.test.js +132 -131
  9. package/dist/game-entities/attachable/destroyable.d.ts +13 -13
  10. package/dist/game-entities/attachable/destroyable.js +64 -69
  11. package/dist/game-entities/attachable/helpers/decorate-actions-lib.d.ts +15 -15
  12. package/dist/game-entities/attachable/helpers/decorate-actions-lib.js +125 -116
  13. package/dist/game-entities/attachable/helpers/referance-variable.d.ts +15 -15
  14. package/dist/game-entities/attachable/helpers/referance-variable.js +47 -48
  15. package/dist/game-entities/attachable/interfaces.d.ts +6 -6
  16. package/dist/game-entities/attachable/interfaces.js +2 -3
  17. package/dist/game-entities/base/helpers/decorate-actions-lib.js +0 -1
  18. package/dist/game-entities/controller/controller.js +0 -1
  19. package/dist/game-entities/controller/controller.spec.js +128 -125
  20. package/dist/game-entities/entity/entity.spec.js +263 -293
  21. package/dist/game-entities/entity/helpers/view-creation.helper.d.ts +7 -7
  22. package/dist/game-entities/entity/helpers/view-creation.helper.js +48 -48
  23. package/dist/game-entities/scene/scene.spec.js +219 -223
  24. package/dist/game-entities/service/service.js +0 -4
  25. package/dist/game-entities/service/service.spec.js +265 -237
  26. package/dist/game-entities/service/service.test.js +4 -2
  27. package/dist/game-entities/update-loop.d.ts +18 -18
  28. package/dist/game-entities/update-loop.js +46 -28
  29. package/dist/game-entities/view/view.js +1 -1
  30. package/dist/game-entities/view/view.spec.js +490 -506
  31. package/dist/game-entities/view/view.test.js +1 -1
  32. package/dist/lib/animator/animations.d.ts +13 -13
  33. package/dist/lib/animator/animations.js +43 -40
  34. package/dist/lib/animator/animator.d.ts +41 -41
  35. package/dist/lib/animator/animator.js +194 -197
  36. package/dist/lib/animator/animator.spec.js +699 -612
  37. package/dist/lib/animator/index.js +24 -19
  38. package/dist/lib/libraries/animator/animations.d.ts +13 -13
  39. package/dist/lib/libraries/animator/animations.js +43 -40
  40. package/dist/lib/libraries/animator/animator.d.ts +41 -41
  41. package/dist/lib/libraries/animator/animator.js +194 -197
  42. package/dist/lib/libraries/animator/animator.spec.js +699 -612
  43. package/dist/lib/libraries/animator/index.js +24 -19
  44. package/dist/lib/libraries/path-finder/path-finder.d.ts +2 -2
  45. package/dist/lib/libraries/path-finder/path-finder.js +19 -20
  46. package/dist/lib/path-finder/path-finder.d.ts +2 -2
  47. package/dist/lib/path-finder/path-finder.js +19 -20
  48. package/dist/lib/services/keyboard/keyboard.d.ts +4 -4
  49. package/dist/lib/services/keyboard/keyboard.js +39 -31
  50. package/dist/lib/services/mouse/mouse.service.d.ts +8 -8
  51. package/dist/lib/services/mouse/mouse.service.js +65 -53
  52. package/dist/lib/services/mouse/mouser-target-focus.service.d.ts +11 -11
  53. package/dist/lib/services/mouse/mouser-target-focus.service.js +83 -81
  54. package/dist/lib/update-loop.d.ts +10 -10
  55. package/dist/lib/update-loop.js +35 -27
  56. package/dist/physics/entitity-types/immovable-physics-entity.d.ts +6 -6
  57. package/dist/physics/entitity-types/immovable-physics-entity.js +23 -24
  58. package/dist/physics/entitity-types/movable-entity.d.ts +6 -6
  59. package/dist/physics/entitity-types/movable-entity.js +21 -22
  60. package/dist/physics/entitity-types/movable-physics-entity.d.ts +14 -14
  61. package/dist/physics/entitity-types/movable-physics-entity.js +83 -88
  62. package/dist/physics/entitity-types/physics-entity.d.ts +23 -23
  63. package/dist/physics/entitity-types/physics-entity.js +97 -88
  64. package/dist/physics/helpers/closest-available-space.helper.d.ts +16 -16
  65. package/dist/physics/helpers/closest-available-space.helper.js +98 -96
  66. package/dist/physics/helpers/closest-available-space.helper.spec.js +115 -68
  67. package/dist/physics/helpers/p2js.helper.d.ts +3 -3
  68. package/dist/physics/helpers/p2js.helper.js +21 -22
  69. package/dist/physics/helpers/shape-factory.d.ts +9 -4
  70. package/dist/physics/helpers/shape-factory.js +99 -75
  71. package/dist/physics/libs/p2js.helper.js +1 -1
  72. package/dist/physics/libs/position-to-grid-position-converter.d.ts +3 -3
  73. package/dist/physics/libs/position-to-grid-position-converter.js +15 -13
  74. package/dist/physics/module//360/237/223/220services/availability-grid.service.d.ts +10 -5
  75. package/dist/physics/module//360/237/223/220services/availability-grid.service.js +77 -57
  76. package/dist/physics/module//360/237/223/220services/border.service.d.ts +2 -2
  77. package/dist/physics/module//360/237/223/220services/border.service.js +57 -37
  78. package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +1 -1
  79. package/dist/physics/module//360/237/223/220services/collisions.service.d.ts +7 -7
  80. package/dist/physics/module//360/237/223/220services/collisions.service.js +110 -98
  81. package/dist/physics/module//360/237/223/220services/debug-visuals.service.d.ts +28 -6
  82. package/dist/physics/module//360/237/223/220services/debug-visuals.service.js +121 -89
  83. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.d.ts +15 -7
  84. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.js +117 -93
  85. package/dist/physics/module//360/237/223/220services/explosion.service.d.ts +14 -7
  86. package/dist/physics/module//360/237/223/220services/explosion.service.js +102 -77
  87. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.d.ts +15 -7
  88. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.js +117 -93
  89. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.d.ts +14 -7
  90. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.js +102 -77
  91. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.d.ts +3 -3
  92. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.js +71 -67
  93. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.d.ts +3 -3
  94. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.js +71 -67
  95. package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +1 -1
  96. package/dist/physics/module//360/237/223/220services/materials.service.d.ts +16 -11
  97. package/dist/physics/module//360/237/223/220services/materials.service.js +118 -108
  98. package/dist/physics/module//360/237/223/220services/path-finder.service.d.ts +19 -8
  99. package/dist/physics/module//360/237/223/220services/path-finder.service.js +121 -82
  100. package/dist/physics/module//360/237/223/220services/physics-world.service.d.ts +30 -15
  101. package/dist/physics/module//360/237/223/220services/physics-world.service.js +122 -100
  102. package/dist/physics/module//360/237/223/220services/ray-casting.service.d.ts +3 -3
  103. package/dist/physics/module//360/237/223/220services/ray-casting.service.js +87 -86
  104. package/dist/physics/module//360/237/223/220services/shape-creation.service.d.ts +9 -4
  105. package/dist/physics/module//360/237/223/220services/shape-creation.service.js +113 -84
  106. package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +2 -1
  107. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.d.ts +8 -8
  108. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.js +32 -33
  109. package/dist/physics/physics-world.d.ts +50 -34
  110. package/dist/physics/physics-world.js +142 -133
  111. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.d.ts +3 -3
  112. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.js +15 -13
  113. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.d.ts +9 -9
  114. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.js +82 -77
  115. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.d.ts +18 -14
  116. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.js +91 -79
  117. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.d.ts +11 -11
  118. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.js +84 -76
  119. package/dist/physics/sub-elements/collisions/physics-collision.d.ts +7 -7
  120. package/dist/physics/sub-elements/collisions/physics-collision.js +43 -44
  121. package/dist/physics/sub-elements/elements/physics-body-groups.d.ts +11 -11
  122. package/dist/physics/sub-elements/elements/physics-body-groups.js +54 -54
  123. package/dist/physics/sub-elements/elements/physics-materials.d.ts +15 -10
  124. package/dist/physics/sub-elements/elements/physics-materials.js +101 -100
  125. package/dist/physics/sub-elements/elements/physics-world-borders.d.ts +3 -3
  126. package/dist/physics/sub-elements/elements/physics-world-borders.js +69 -45
  127. package/dist/physics/sub-elements/physics-body-groups.d.ts +8 -8
  128. package/dist/physics/sub-elements/physics-body-groups.js +41 -42
  129. package/dist/physics/sub-elements/physics-collision.d.ts +16 -16
  130. package/dist/physics/sub-elements/physics-collision.js +141 -121
  131. package/dist/physics/sub-elements/physics-materials.d.ts +15 -10
  132. package/dist/physics/sub-elements/physics-materials.js +101 -100
  133. package/dist/physics/sub-elements/physics-world-borders.d.ts +2 -2
  134. package/dist/physics/sub-elements/physics-world-borders.js +25 -26
  135. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.d.ts +15 -11
  136. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.js +59 -59
  137. package/dist/physics/sub-elements/raycasting/physics-explosion.d.ts +13 -6
  138. package/dist/physics/sub-elements/raycasting/physics-explosion.js +108 -73
  139. package/dist/physics/sub-elements/raycasting/ray-cast.d.ts +19 -19
  140. package/dist/physics/sub-elements/raycasting/ray-cast.js +93 -98
  141. package/dist/pixi/display-object/components/filters.d.ts +18 -18
  142. package/dist/pixi/display-object/components/filters.js +106 -81
  143. package/dist/pixi/display-object/components/glow-effect.d.ts +8 -8
  144. package/dist/pixi/display-object/components/glow-effect.js +33 -36
  145. package/dist/pixi/display-object/components/glow-filter.d.ts +8 -8
  146. package/dist/pixi/display-object/components/glow-filter.js +33 -36
  147. package/dist/pixi/display-object/container-attributes.js +1 -1
  148. package/dist/pixi/display-object/display-object-attributes.d.ts +41 -41
  149. package/dist/pixi/display-object/display-object-attributes.js +148 -150
  150. package/dist/pixi/display-object/display-object.d.ts +17 -17
  151. package/dist/pixi/display-object/display-object.js +79 -75
  152. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.d.ts +9 -4
  153. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.js +89 -77
  154. package/dist/pixi/display-object/filters/base-filters/blur.filter.js +30 -30
  155. package/dist/pixi/display-object/filters/base-filters/contrast-filter.d.ts +9 -4
  156. package/dist/pixi/display-object/filters/base-filters/contrast-filter.js +62 -53
  157. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.d.ts +10 -5
  158. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.js +93 -81
  159. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.d.ts +12 -7
  160. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.js +120 -109
  161. package/dist/pixi/display-object/filters/base-filters/expand-with-color.d.ts +10 -5
  162. package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +32 -32
  163. package/dist/pixi/display-object/filters/base-filters/expand-with-color.js +92 -85
  164. package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +28 -28
  165. package/dist/pixi/display-object/filters/templates/plane.template.js +20 -20
  166. package/dist/pixi/display-object/filters.js +20 -4
  167. package/dist/pixi/display-object/objects/components/filters.d.ts +18 -18
  168. package/dist/pixi/display-object/objects/components/filters.js +106 -81
  169. package/dist/pixi/display-object/objects/container.d.ts +2 -2
  170. package/dist/pixi/display-object/objects/container.js +39 -30
  171. package/dist/pixi/display-object/objects/graphics.d.ts +28 -28
  172. package/dist/pixi/display-object/objects/graphics.js +218 -202
  173. package/dist/pixi/display-object/objects/helpers/filters.d.ts +25 -25
  174. package/dist/pixi/display-object/objects/helpers/filters.js +150 -124
  175. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +7 -7
  176. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +114 -95
  177. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.d.ts +5 -5
  178. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.js +81 -57
  179. package/dist/pixi/display-object/objects/sprite.d.ts +43 -43
  180. package/dist/pixi/display-object/objects/sprite.js +248 -233
  181. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +1 -1
  182. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +9 -9
  183. package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +1 -1
  184. package/dist/pixi/display-object/objects/text.d.ts +25 -25
  185. package/dist/pixi/display-object/objects/text.js +111 -102
  186. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.d.ts +13 -9
  187. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.js +96 -67
  188. package/dist/pixi/game.d.ts +1 -1
  189. package/dist/pixi/game.js +2 -2
  190. package/dist/pixi/helpers/glow-sprite-generator.d.ts +6 -6
  191. package/dist/pixi/helpers/glow-sprite-generator.js +99 -84
  192. package/dist/pixi/helpers/pixi-container.helper.d.ts +1 -1
  193. package/dist/pixi/helpers/pixi-container.helper.js +10 -8
  194. package/dist/pixi/helpers/screen-position-to-stage.helper.d.ts +1 -1
  195. package/dist/pixi/helpers/screen-position-to-stage.helper.js +12 -12
  196. package/dist/pixi/helpers/screen-position-to-stage.helper.test.js +174 -79
  197. package/dist/pixi/modules/CAMERA/index.d.ts +1 -1
  198. package/dist/pixi/modules/CAMERA/index.js +3 -3
  199. package/dist/services/keyboard/keyboard.d.ts +4 -4
  200. package/dist/services/keyboard/keyboard.js +39 -31
  201. package/dist/services/mouse/mouse.service.d.ts +8 -8
  202. package/dist/services/mouse/mouse.service.js +65 -53
  203. package/dist/services/mouse/mouser-target-focus.service.d.ts +11 -11
  204. package/dist/services/mouse/mouser-target-focus.service.js +83 -81
  205. package/dist/utilities/libraries/animator/animating-content/state-animation.d.ts +29 -26
  206. package/dist/utilities/libraries/animator/animating-content/state-animation.js +159 -165
  207. package/dist/utilities/libraries/animator/animating-content/state-animation.test.js +386 -375
  208. package/dist/utilities/libraries/animator/animator.spec.js +765 -656
  209. package/dist/utilities/libraries/binary-heap/binary-heap.d.ts +11 -11
  210. package/dist/utilities/libraries/binary-heap/binary-heap.js +79 -81
  211. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.d.ts +11 -11
  212. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.js +79 -81
  213. package/dist/utilities/libraries/data-structures/grid/grid.d.ts +35 -31
  214. package/dist/utilities/libraries/data-structures/grid/grid.js +128 -117
  215. package/dist/utilities/libraries/data-structures/grid/grid.spec.js +176 -138
  216. package/dist/utilities/libraries/data-structures/grid/grid.test.js +218 -141
  217. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.d.ts +3 -3
  218. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.js +15 -13
  219. package/dist/utilities/libraries/data-structures/queue/queue.d.ts +21 -21
  220. package/dist/utilities/libraries/data-structures/queue/queue.js +63 -66
  221. package/dist/utilities/libraries/data-structures/queue/queue.test.js +54 -55
  222. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.spec.js +122 -68
  223. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.spec.js +140 -135
  224. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.spec.js +293 -229
  225. package/dist/utilities/libraries/path-finder/path-finder.d.ts +7 -7
  226. package/dist/utilities/libraries/path-finder/path-finder.js +113 -109
  227. package/dist/utilities/libraries/path-finder/path-finder.spec.js +131 -106
  228. package/dist/utilities/services/keyboard/keyboard.d.ts +4 -4
  229. package/dist/utilities/services/keyboard/keyboard.js +42 -34
  230. package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +1 -1
  231. package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +12 -12
  232. package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +168 -73
  233. package/dist/utilities/services/mouse/mouse-target-focus.service.d.ts +15 -15
  234. package/dist/utilities/services/mouse/mouse-target-focus.service.js +79 -76
  235. package/dist/utilities/services/mouse/mouse.service.d.ts +9 -9
  236. package/dist/utilities/services/mouse/mouse.service.js +86 -72
  237. package/dist/utilities/services/mouse/mouser-target-focus.service.d.ts +11 -11
  238. package/dist/utilities/services/mouse/mouser-target-focus.service.js +83 -81
  239. package/package.json +6 -12
@@ -1,26 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ Object.defineProperty(exports, '__esModule', { value: true });
3
2
  exports.P2JSHelper = void 0;
4
- const helpers_lib_1 = require("helpers-lib");
3
+ const helpers_lib_1 = require('helpers-lib');
5
4
  class P2JSHelper {
6
- static aabbToBoundingBox(aabb) {
7
- return helpers_lib_1.Rectangle.fromRect({
8
- topLeft: {
9
- x: aabb.lowerBound[0],
10
- y: aabb.lowerBound[1]
11
- },
12
- bottomRight: {
13
- x: aabb.upperBound[0],
14
- y: aabb.upperBound[1]
15
- }
16
- });
17
- }
18
- static arrayToVector(array) {
19
- return new helpers_lib_1.Vector(array[0], array[1]);
20
- }
21
- static vectorToArray(vector) {
22
- return [vector.x, vector.y];
23
- }
5
+ static aabbToBoundingBox(aabb) {
6
+ return helpers_lib_1.Rectangle.fromRect({
7
+ topLeft: {
8
+ x: aabb.lowerBound[0],
9
+ y: aabb.lowerBound[1]
10
+ },
11
+ bottomRight: {
12
+ x: aabb.upperBound[0],
13
+ y: aabb.upperBound[1]
14
+ }
15
+ });
16
+ }
17
+ static arrayToVector(array) {
18
+ return new helpers_lib_1.Vector(array[0], array[1]);
19
+ }
20
+ static vectorToArray(vector) {
21
+ return [vector.x, vector.y];
22
+ }
24
23
  }
25
24
  exports.P2JSHelper = P2JSHelper;
26
- //# sourceMappingURL=p2js.helper.js.map
25
+ //# sourceMappingURL=p2js.helper.js.map
@@ -1,8 +1,13 @@
1
1
  import p2 from 'p2';
2
2
  import { MaterialDefinition, PhysicsEntityDefinition } from '../interfaces';
3
3
  export declare class ShapeFactory {
4
- static createBody(physicsEntityDefinition: PhysicsEntityDefinition, material: p2.Material, materialDefinition: MaterialDefinition, type: 'dynamic' | 'static'): p2.Body;
5
- private static createCircleBody;
6
- private static createPolygonBody;
7
- private static createRectangleBody;
4
+ static createBody(
5
+ physicsEntityDefinition: PhysicsEntityDefinition,
6
+ material: p2.Material,
7
+ materialDefinition: MaterialDefinition,
8
+ type: 'dynamic' | 'static'
9
+ ): p2.Body;
10
+ private static createCircleBody;
11
+ private static createPolygonBody;
12
+ private static createRectangleBody;
8
13
  }
@@ -1,85 +1,109 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ var __importDefault = (this && this.__importDefault) || (mod => (mod && mod.__esModule ? mod : { default: mod }));
2
+ Object.defineProperty(exports, '__esModule', { value: true });
6
3
  exports.ShapeFactory = void 0;
7
- const p2_1 = __importDefault(require("p2"));
8
- const interfaces_1 = require("../interfaces");
9
- const physics_body_groups_1 = require("../sub-elements/elements/physics-body-groups");
4
+ const p2_1 = __importDefault(require('p2'));
5
+ const interfaces_1 = require('../interfaces');
6
+ const physics_body_groups_1 = require('../sub-elements/elements/physics-body-groups');
10
7
  class ShapeFactory {
11
- static createBody(physicsEntityDefinition, material, materialDefinition, type) {
12
- switch (physicsEntityDefinition.shapeDefinition.shapeType) {
13
- case interfaces_1.PhysicsShapeType.point:
14
- return this.createCircleBody(undefined, material, materialDefinition, physicsEntityDefinition.shapeDefinition.group, type);
15
- case interfaces_1.PhysicsShapeType.circle:
16
- return this.createCircleBody(physicsEntityDefinition.shapeDefinition.shapeData, material, materialDefinition, physicsEntityDefinition.shapeDefinition.group, type);
17
- case interfaces_1.PhysicsShapeType.polygon:
18
- return this.createPolygonBody(physicsEntityDefinition.shapeDefinition.shapeData, material, materialDefinition, physicsEntityDefinition.shapeDefinition.group, type);
19
- case interfaces_1.PhysicsShapeType.rectangle:
20
- return this.createRectangleBody(physicsEntityDefinition.shapeDefinition.shapeData, material, materialDefinition, physicsEntityDefinition.shapeDefinition.group, type);
21
- }
8
+ static createBody(physicsEntityDefinition, material, materialDefinition, type) {
9
+ switch (physicsEntityDefinition.shapeDefinition.shapeType) {
10
+ case interfaces_1.PhysicsShapeType.point:
11
+ return ShapeFactory.createCircleBody(
12
+ undefined,
13
+ material,
14
+ materialDefinition,
15
+ physicsEntityDefinition.shapeDefinition.group,
16
+ type
17
+ );
18
+ case interfaces_1.PhysicsShapeType.circle:
19
+ return ShapeFactory.createCircleBody(
20
+ physicsEntityDefinition.shapeDefinition.shapeData,
21
+ material,
22
+ materialDefinition,
23
+ physicsEntityDefinition.shapeDefinition.group,
24
+ type
25
+ );
26
+ case interfaces_1.PhysicsShapeType.polygon:
27
+ return ShapeFactory.createPolygonBody(
28
+ physicsEntityDefinition.shapeDefinition.shapeData,
29
+ material,
30
+ materialDefinition,
31
+ physicsEntityDefinition.shapeDefinition.group,
32
+ type
33
+ );
34
+ case interfaces_1.PhysicsShapeType.rectangle:
35
+ return ShapeFactory.createRectangleBody(
36
+ physicsEntityDefinition.shapeDefinition.shapeData,
37
+ material,
38
+ materialDefinition,
39
+ physicsEntityDefinition.shapeDefinition.group,
40
+ type
41
+ );
22
42
  }
23
- static createCircleBody(shapeData, material, materialDefinition, group, type) {
24
- let shape = new p2_1.default.Circle({
25
- collisionGroup: physics_body_groups_1.PhysicsBodyGroups.getGroupConstant(group),
26
- collisionMask: physics_body_groups_1.PhysicsBodyGroups.getMaskConstant(group),
27
- radius: shapeData?.radius
28
- });
29
- shape.material = material;
30
- let p2Body = new p2_1.default.Body({
31
- type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
32
- mass: materialDefinition.density,
33
- damping: materialDefinition.velocityDrag,
34
- angularDamping: materialDefinition.rotationalDrag
35
- });
36
- p2Body.addShape(shape);
37
- return p2Body;
38
- }
39
- static createPolygonBody(polygonShapeData, material, materialDefinition, group, type) {
40
- let shapes = polygonShapeData.boundingShapeVertices
41
- .map(vertices => new p2_1.default.Convex({
43
+ }
44
+ static createCircleBody(shapeData, material, materialDefinition, group, type) {
45
+ const shape = new p2_1.default.Circle({
46
+ collisionGroup: physics_body_groups_1.PhysicsBodyGroups.getGroupConstant(group),
47
+ collisionMask: physics_body_groups_1.PhysicsBodyGroups.getMaskConstant(group),
48
+ radius: shapeData?.radius
49
+ });
50
+ shape.material = material;
51
+ const p2Body = new p2_1.default.Body({
52
+ type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
53
+ mass: materialDefinition.density,
54
+ damping: materialDefinition.velocityDrag,
55
+ angularDamping: materialDefinition.rotationalDrag
56
+ });
57
+ p2Body.addShape(shape);
58
+ return p2Body;
59
+ }
60
+ static createPolygonBody(polygonShapeData, material, materialDefinition, group, type) {
61
+ const shapes = polygonShapeData.boundingShapeVertices
62
+ .map(
63
+ vertices =>
64
+ new p2_1.default.Convex({
42
65
  vertices: vertices.map(vertex => [
43
- (vertex.x - polygonShapeData.size.x * polygonShapeData.anchor.x) * polygonShapeData.scale,
44
- (vertex.y - polygonShapeData.size.y * polygonShapeData.anchor.y) * polygonShapeData.scale
66
+ (vertex.x - polygonShapeData.size.x * polygonShapeData.anchor.x) * polygonShapeData.scale,
67
+ (vertex.y - polygonShapeData.size.y * polygonShapeData.anchor.y) * polygonShapeData.scale
45
68
  ]),
46
69
  collisionGroup: physics_body_groups_1.PhysicsBodyGroups.getGroupConstant(group),
47
70
  collisionMask: physics_body_groups_1.PhysicsBodyGroups.getMaskConstant(group)
48
- }))
49
- .map(shape => {
50
- shape.material = material;
51
- return shape;
52
- });
53
- let area = shapes.reduce((acc, shape) => acc + shape.area, 0);
54
- let p2Body = new p2_1.default.Body({
55
- type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
56
- mass: area,
57
- damping: materialDefinition.velocityDrag,
58
- angularDamping: materialDefinition.rotationalDrag
59
- });
60
- shapes.forEach(shape => p2Body.addShape(shape));
61
- p2Body.setDensity(materialDefinition.density);
62
- return p2Body;
63
- }
64
- static createRectangleBody(rectangleShapeData, material, materialDefinition, group, type) {
65
- let shape = new p2_1.default.Box({
66
- width: rectangleShapeData.size.x,
67
- height: rectangleShapeData.size.y,
68
- collisionGroup: physics_body_groups_1.PhysicsBodyGroups.getGroupConstant(group),
69
- collisionMask: physics_body_groups_1.PhysicsBodyGroups.getMaskConstant(group)
70
- });
71
+ })
72
+ )
73
+ .map(shape => {
71
74
  shape.material = material;
72
- let area = rectangleShapeData.size.x * rectangleShapeData.size.y;
73
- let p2Body = new p2_1.default.Body({
74
- type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
75
- mass: area,
76
- damping: materialDefinition.velocityDrag,
77
- angularDamping: materialDefinition.rotationalDrag
78
- });
79
- p2Body.addShape(shape);
80
- p2Body.setDensity(materialDefinition.density);
81
- return p2Body;
82
- }
75
+ return shape;
76
+ });
77
+ const area = shapes.reduce((acc, shape) => acc + shape.area, 0);
78
+ const p2Body = new p2_1.default.Body({
79
+ type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
80
+ mass: area,
81
+ damping: materialDefinition.velocityDrag,
82
+ angularDamping: materialDefinition.rotationalDrag
83
+ });
84
+ shapes.forEach(shape => p2Body.addShape(shape));
85
+ p2Body.setDensity(materialDefinition.density);
86
+ return p2Body;
87
+ }
88
+ static createRectangleBody(rectangleShapeData, material, materialDefinition, group, type) {
89
+ const shape = new p2_1.default.Box({
90
+ width: rectangleShapeData.size.x,
91
+ height: rectangleShapeData.size.y,
92
+ collisionGroup: physics_body_groups_1.PhysicsBodyGroups.getGroupConstant(group),
93
+ collisionMask: physics_body_groups_1.PhysicsBodyGroups.getMaskConstant(group)
94
+ });
95
+ shape.material = material;
96
+ const area = rectangleShapeData.size.x * rectangleShapeData.size.y;
97
+ const p2Body = new p2_1.default.Body({
98
+ type: type === 'dynamic' ? p2_1.default.Body.DYNAMIC : p2_1.default.Body.STATIC,
99
+ mass: area,
100
+ damping: materialDefinition.velocityDrag,
101
+ angularDamping: materialDefinition.rotationalDrag
102
+ });
103
+ p2Body.addShape(shape);
104
+ p2Body.setDensity(materialDefinition.density);
105
+ return p2Body;
106
+ }
83
107
  }
84
108
  exports.ShapeFactory = ShapeFactory;
85
- //# sourceMappingURL=shape-factory.js.map
109
+ //# sourceMappingURL=shape-factory.js.map
@@ -26,7 +26,7 @@ class P2JSHelper {
26
26
  return [vector.x, vector.y];
27
27
  }
28
28
  static arePhysicsGroupsCollidable(groupA, maskA, groupB, maskB) {
29
- // eslint-disable-next-line no-bitwise
29
+ // biome-ignore lint/suspicious/noBitwiseOperators: accepted
30
30
  return (groupA & maskB) !== 0 && (groupB & maskA) !== 0;
31
31
  }
32
32
  static canCollideWith(p2BodyA, p2BodyB) {
@@ -1,6 +1,6 @@
1
1
  import { Rectangle, Vector } from 'helpers-lib';
2
2
  export declare class PositionToGridPositionConverter {
3
- static areaToGridArea(boundingBox: Rectangle, cellSize: number): Rectangle;
4
- static positionToGridPosition(point: Vector, cellSize: number): Vector;
5
- static gridPositionToPosition(gridPosition: Vector, cellSize: number): Vector;
3
+ static areaToGridArea(boundingBox: Rectangle, cellSize: number): Rectangle;
4
+ static positionToGridPosition(point: Vector, cellSize: number): Vector;
5
+ static gridPositionToPosition(gridPosition: Vector, cellSize: number): Vector;
6
6
  }
@@ -1,17 +1,19 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ Object.defineProperty(exports, '__esModule', { value: true });
3
2
  exports.PositionToGridPositionConverter = void 0;
4
- const helpers_lib_1 = require("helpers-lib");
3
+ const helpers_lib_1 = require('helpers-lib');
5
4
  class PositionToGridPositionConverter {
6
- static areaToGridArea(boundingBox, cellSize) {
7
- return new helpers_lib_1.Rectangle(this.positionToGridPosition(boundingBox.topLeft, cellSize), this.positionToGridPosition(boundingBox.bottomRight, cellSize));
8
- }
9
- static positionToGridPosition(point, cellSize) {
10
- return point.divide(cellSize).floor();
11
- }
12
- static gridPositionToPosition(gridPosition, cellSize) {
13
- return gridPosition.add(new helpers_lib_1.Vector(0.5, 0.5)).multiply(cellSize);
14
- }
5
+ static areaToGridArea(boundingBox, cellSize) {
6
+ return new helpers_lib_1.Rectangle(
7
+ PositionToGridPositionConverter.positionToGridPosition(boundingBox.topLeft, cellSize),
8
+ PositionToGridPositionConverter.positionToGridPosition(boundingBox.bottomRight, cellSize)
9
+ );
10
+ }
11
+ static positionToGridPosition(point, cellSize) {
12
+ return point.divide(cellSize).floor();
13
+ }
14
+ static gridPositionToPosition(gridPosition, cellSize) {
15
+ return gridPosition.add(new helpers_lib_1.Vector(0.5, 0.5)).multiply(cellSize);
16
+ }
15
17
  }
16
18
  exports.PositionToGridPositionConverter = PositionToGridPositionConverter;
17
- //# sourceMappingURL=position-to-grid-position-converter.js.map
19
+ //# sourceMappingURL=position-to-grid-position-converter.js.map
@@ -4,9 +4,14 @@ import { PhysicsBodyGroup } from '../../libs/physics-body-groups';
4
4
  import { PhysicsWorldEntity } from '../🧊entities/physics-world.entity';
5
5
  import { Grid } from '../../../utilities/libraries/data-structures/grid/grid';
6
6
  export declare class AvailabilityGridService {
7
- onBodyAdded(physicsWorld: PhysicsWorldEntity, body: p2.Body, physicsBodyGroup: PhysicsBodyGroup): void;
8
- findClosestAvailableSpace(physicsWorld: PhysicsWorldEntity, body: p2.Body, physicsBodyGroup: PhysicsBodyGroup, gridCellSize?: number): Vector | undefined;
9
- getAvilabilityGrid(physicsWorld: PhysicsWorldEntity, cellSize: number, physicsBodyGroup?: PhysicsBodyGroup): Grid<boolean>;
10
- private createGrid;
11
- private getGridSpaceBoundingBox;
7
+ onBodyAdded(physicsWorld: PhysicsWorldEntity, body: p2.Body, physicsBodyGroup: PhysicsBodyGroup): void;
8
+ findClosestAvailableSpace(
9
+ physicsWorld: PhysicsWorldEntity,
10
+ body: p2.Body,
11
+ physicsBodyGroup: PhysicsBodyGroup,
12
+ gridCellSize?: number
13
+ ): Vector | undefined;
14
+ getAvilabilityGrid(physicsWorld: PhysicsWorldEntity, cellSize: number, physicsBodyGroup?: PhysicsBodyGroup): Grid<boolean>;
15
+ private createGrid;
16
+ private getGridSpaceBoundingBox;
12
17
  }
@@ -1,63 +1,83 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1
+ var __decorate =
2
+ (this && this.__decorate) ||
3
+ ((decorators, target, key, desc) => {
4
+ var c = arguments.length,
5
+ r = c < 3 ? target : desc === null ? (desc = Object.getOwnPropertyDescriptor(target, key)) : desc,
6
+ d;
7
+ if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
8
+ r = Reflect.decorate(decorators, target, key, desc);
9
+ else
10
+ for (var i = decorators.length - 1; i >= 0; i--)
11
+ if ((d = decorators[i])) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
12
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
13
+ });
14
+ Object.defineProperty(exports, '__esModule', { value: true });
9
15
  exports.AvailabilityGridService = void 0;
10
- const helpers_lib_1 = require("helpers-lib");
11
- const game_entities_1 = require("../../../game-entities");
12
- const p2js_helper_1 = require("../../libs/p2js.helper");
13
- const position_to_grid_position_converter_1 = require("../../libs/position-to-grid-position-converter");
14
- const physics_body_groups_1 = require("../../libs/physics-body-groups");
15
- const grid_1 = require("../../../utilities/libraries/data-structures/grid/grid");
16
- const physics_entity_1 = require("../../entity-types/physics-entity");
17
- const path_finder_service_1 = require("./path-finder.service");
18
- const utilities_1 = require("../../../utilities");
16
+ const helpers_lib_1 = require('helpers-lib');
17
+ const game_entities_1 = require('../../../game-entities');
18
+ const p2js_helper_1 = require('../../libs/p2js.helper');
19
+ const position_to_grid_position_converter_1 = require('../../libs/position-to-grid-position-converter');
20
+ const physics_body_groups_1 = require('../../libs/physics-body-groups');
21
+ const grid_1 = require('../../../utilities/libraries/data-structures/grid/grid');
22
+ const physics_entity_1 = require('../../entity-types/physics-entity');
23
+ const path_finder_service_1 = require('./path-finder.service');
24
+ const utilities_1 = require('../../../utilities');
19
25
  let AvailabilityGridService = class AvailabilityGridService {
20
- onBodyAdded(physicsWorld, body, physicsBodyGroup) {
21
- body.aabbNeedsUpdate = true;
22
- body.updateAABB();
23
- let boundingBox = p2js_helper_1.P2JSHelper.aabbToBoundingBox(body.aabb);
24
- physicsWorld.availabilityGridCache.getCollidableGrids(physicsBodyGroup).forEach(item => {
25
- let gridSpaceBoundingBox = position_to_grid_position_converter_1.PositionToGridPositionConverter.areaToGridArea(boundingBox, item.cellSize);
26
- item.grid.safeSetArea(gridSpaceBoundingBox, false);
27
- });
28
- }
29
- findClosestAvailableSpace(physicsWorld, body, physicsBodyGroup, gridCellSize = path_finder_service_1.DEFAULT_GRID_CELL_SIZE) {
30
- body.aabbNeedsUpdate = true;
31
- body.updateAABB();
32
- let changeVector = utilities_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(this.getAvilabilityGrid(physicsWorld, gridCellSize, physicsBodyGroup), p2js_helper_1.P2JSHelper.aabbToBoundingBox(body.aabb), gridCellSize);
33
- return changeVector;
34
- }
35
- getAvilabilityGrid(physicsWorld, cellSize, physicsBodyGroup = physics_body_groups_1.PhysicsBodyGroup.none) {
36
- let grid = physicsWorld.availabilityGridCache.get(cellSize, physicsBodyGroup);
37
- if (!grid) {
38
- grid = this.createGrid(physicsWorld, cellSize, physicsBodyGroup);
39
- physicsWorld.availabilityGridCache.set(cellSize, physicsBodyGroup, grid);
40
- }
41
- return grid;
42
- }
43
- createGrid(physicsWorld, cellSize, physicsBodyGroup) {
44
- let grid = grid_1.Grid.createNew(new helpers_lib_1.Vector(Math.floor(physicsWorld.mapSize.x / cellSize), Math.floor(physicsWorld.mapSize.y / cellSize)), true);
45
- physicsWorld.p2World.bodies.forEach(p2Body => {
46
- let physicsEntity = physics_entity_1.PhysicsEntity.getFromP2BodyIdOrFail(p2Body.id);
47
- if (physicsEntity.includeInPathfinding && physics_body_groups_1.PhysicsBodyGroups.canCollide(physicsEntity.physicsBodyGroup, physicsBodyGroup)) {
48
- let gridSpaceBoundingBox = this.getGridSpaceBoundingBox(p2Body, cellSize);
49
- grid?.safeSetArea(gridSpaceBoundingBox, false);
50
- }
51
- });
52
- return grid;
53
- }
54
- getGridSpaceBoundingBox(p2Body, cellSize) {
55
- let boundingBox = p2js_helper_1.P2JSHelper.aabbToBoundingBox(p2Body.aabb);
56
- return position_to_grid_position_converter_1.PositionToGridPositionConverter.areaToGridArea(boundingBox, cellSize);
26
+ onBodyAdded(physicsWorld, body, physicsBodyGroup) {
27
+ body.aabbNeedsUpdate = true;
28
+ body.updateAABB();
29
+ const boundingBox = p2js_helper_1.P2JSHelper.aabbToBoundingBox(body.aabb);
30
+ physicsWorld.availabilityGridCache.getCollidableGrids(physicsBodyGroup).forEach(item => {
31
+ const gridSpaceBoundingBox = position_to_grid_position_converter_1.PositionToGridPositionConverter.areaToGridArea(
32
+ boundingBox,
33
+ item.cellSize
34
+ );
35
+ item.grid.safeSetArea(gridSpaceBoundingBox, false);
36
+ });
37
+ }
38
+ findClosestAvailableSpace(physicsWorld, body, physicsBodyGroup, gridCellSize = path_finder_service_1.DEFAULT_GRID_CELL_SIZE) {
39
+ body.aabbNeedsUpdate = true;
40
+ body.updateAABB();
41
+ const changeVector = utilities_1.ClosestAvailableSpaceHelper.findByConvertingGridSpace(
42
+ this.getAvilabilityGrid(physicsWorld, gridCellSize, physicsBodyGroup),
43
+ p2js_helper_1.P2JSHelper.aabbToBoundingBox(body.aabb),
44
+ gridCellSize
45
+ );
46
+ return changeVector;
47
+ }
48
+ getAvilabilityGrid(physicsWorld, cellSize, physicsBodyGroup = physics_body_groups_1.PhysicsBodyGroup.none) {
49
+ let grid = physicsWorld.availabilityGridCache.get(cellSize, physicsBodyGroup);
50
+ if (!grid) {
51
+ grid = this.createGrid(physicsWorld, cellSize, physicsBodyGroup);
52
+ physicsWorld.availabilityGridCache.set(cellSize, physicsBodyGroup, grid);
57
53
  }
54
+ return grid;
55
+ }
56
+ createGrid(physicsWorld, cellSize, physicsBodyGroup) {
57
+ const grid = grid_1.Grid.createNew(
58
+ new helpers_lib_1.Vector(Math.floor(physicsWorld.mapSize.x / cellSize), Math.floor(physicsWorld.mapSize.y / cellSize)),
59
+ true
60
+ );
61
+ physicsWorld.p2World.bodies.forEach(p2Body => {
62
+ const physicsEntity = physics_entity_1.PhysicsEntity.getFromP2BodyIdOrFail(p2Body.id);
63
+ if (
64
+ physicsEntity.includeInPathfinding &&
65
+ physics_body_groups_1.PhysicsBodyGroups.canCollide(physicsEntity.physicsBodyGroup, physicsBodyGroup)
66
+ ) {
67
+ const gridSpaceBoundingBox = this.getGridSpaceBoundingBox(p2Body, cellSize);
68
+ grid?.safeSetArea(gridSpaceBoundingBox, false);
69
+ }
70
+ });
71
+ return grid;
72
+ }
73
+ getGridSpaceBoundingBox(p2Body, cellSize) {
74
+ const boundingBox = p2js_helper_1.P2JSHelper.aabbToBoundingBox(p2Body.aabb);
75
+ return position_to_grid_position_converter_1.PositionToGridPositionConverter.areaToGridArea(boundingBox, cellSize);
76
+ }
58
77
  };
59
78
  exports.AvailabilityGridService = AvailabilityGridService;
60
- exports.AvailabilityGridService = AvailabilityGridService = __decorate([
61
- (0, game_entities_1.ServiceDecorator)()
62
- ], AvailabilityGridService);
63
- //# sourceMappingURL=availability-grid.service.js.map
79
+ exports.AvailabilityGridService = AvailabilityGridService = __decorate(
80
+ [(0, game_entities_1.ServiceDecorator)()],
81
+ AvailabilityGridService
82
+ );
83
+ //# sourceMappingURL=availability-grid.service.js.map
@@ -1,5 +1,5 @@
1
1
  import { Vector } from 'helpers-lib';
2
2
  export declare class BorderService {
3
- createBorders(physicsWorldId: string, mapSize: Vector): void;
4
- private createBorder;
3
+ createBorders(physicsWorldId: string, mapSize: Vector): void;
4
+ private createBorder;
5
5
  }
@@ -1,42 +1,62 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1
+ var __decorate =
2
+ (this && this.__decorate) ||
3
+ ((decorators, target, key, desc) => {
4
+ var c = arguments.length,
5
+ r = c < 3 ? target : desc === null ? (desc = Object.getOwnPropertyDescriptor(target, key)) : desc,
6
+ d;
7
+ if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
8
+ r = Reflect.decorate(decorators, target, key, desc);
9
+ else
10
+ for (var i = decorators.length - 1; i >= 0; i--)
11
+ if ((d = decorators[i])) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
12
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
13
+ });
14
+ Object.defineProperty(exports, '__esModule', { value: true });
9
15
  exports.BorderService = void 0;
10
- const helpers_lib_1 = require("helpers-lib");
11
- const __gateways_1 = require("../\u269C\uFE0Fgateways");
12
- const game_entities_1 = require("../../../game-entities");
13
- const border_entity_1 = require("../\uD83E\uDDCAentities/border.entity");
14
- const physics_body_groups_1 = require("../../libs/physics-body-groups");
15
- const interfaces_1 = require("../../interfaces");
16
+ const helpers_lib_1 = require('helpers-lib');
17
+ const __gateways_1 = require('../\u269C\uFE0Fgateways');
18
+ const game_entities_1 = require('../../../game-entities');
19
+ const border_entity_1 = require('../\uD83E\uDDCAentities/border.entity');
20
+ const physics_body_groups_1 = require('../../libs/physics-body-groups');
21
+ const interfaces_1 = require('../../interfaces');
16
22
  let BorderService = class BorderService {
17
- createBorders(physicsWorldId, mapSize) {
18
- this.createBorder(physicsWorldId, new helpers_lib_1.Vector(mapSize.x / 2, -50), new helpers_lib_1.Vector(mapSize.x + 200, 100)); // Top border
19
- this.createBorder(physicsWorldId, new helpers_lib_1.Vector(mapSize.x / 2, mapSize.y + 50), new helpers_lib_1.Vector(mapSize.x + 200, 100)); // Bottom border
20
- this.createBorder(physicsWorldId, new helpers_lib_1.Vector(-50, mapSize.y / 2), new helpers_lib_1.Vector(100, mapSize.y + 200)); // Left border
21
- this.createBorder(physicsWorldId, new helpers_lib_1.Vector(mapSize.x + 50, mapSize.y / 2), new helpers_lib_1.Vector(100, mapSize.y + 200)); // Right border
22
- }
23
- createBorder(physicsWorldId, position, size) {
24
- return new border_entity_1.BorderEntity(physicsWorldId, {
25
- shapeDefinition: {
26
- materialName: __gateways_1.BORDER_MATERIAL_NAME,
27
- group: physics_body_groups_1.PhysicsBodyGroup.border,
28
- shapeType: interfaces_1.PhysicsShapeType.rectangle,
29
- shapeData: { size }
30
- },
31
- position,
32
- rotation: 0,
33
- addInEmptySpace: false,
34
- includeOnPathfinding: true
35
- }).attach(physicsWorldId);
36
- }
23
+ createBorders(physicsWorldId, mapSize) {
24
+ this.createBorder(
25
+ physicsWorldId,
26
+ new helpers_lib_1.Vector(mapSize.x / 2, -50),
27
+ new helpers_lib_1.Vector(mapSize.x + 200, 100)
28
+ ); // Top border
29
+ this.createBorder(
30
+ physicsWorldId,
31
+ new helpers_lib_1.Vector(mapSize.x / 2, mapSize.y + 50),
32
+ new helpers_lib_1.Vector(mapSize.x + 200, 100)
33
+ ); // Bottom border
34
+ this.createBorder(
35
+ physicsWorldId,
36
+ new helpers_lib_1.Vector(-50, mapSize.y / 2),
37
+ new helpers_lib_1.Vector(100, mapSize.y + 200)
38
+ ); // Left border
39
+ this.createBorder(
40
+ physicsWorldId,
41
+ new helpers_lib_1.Vector(mapSize.x + 50, mapSize.y / 2),
42
+ new helpers_lib_1.Vector(100, mapSize.y + 200)
43
+ ); // Right border
44
+ }
45
+ createBorder(physicsWorldId, position, size) {
46
+ return new border_entity_1.BorderEntity(physicsWorldId, {
47
+ shapeDefinition: {
48
+ materialName: __gateways_1.BORDER_MATERIAL_NAME,
49
+ group: physics_body_groups_1.PhysicsBodyGroup.border,
50
+ shapeType: interfaces_1.PhysicsShapeType.rectangle,
51
+ shapeData: { size }
52
+ },
53
+ position,
54
+ rotation: 0,
55
+ addInEmptySpace: false,
56
+ includeOnPathfinding: true
57
+ }).attach(physicsWorldId);
58
+ }
37
59
  };
38
60
  exports.BorderService = BorderService;
39
- exports.BorderService = BorderService = __decorate([
40
- (0, game_entities_1.ServiceDecorator)()
41
- ], BorderService);
42
- //# sourceMappingURL=border.service.js.map
61
+ exports.BorderService = BorderService = __decorate([(0, game_entities_1.ServiceDecorator)()], BorderService);
62
+ //# sourceMappingURL=border.service.js.map
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.PhysicsBodyGroupService = void 0;
10
- /* eslint-disable no-bitwise */
10
+ /** biome-ignore-all lint/suspicious/noBitwiseOperators: accepted */
11
11
  const game_entities_1 = require("../../../../game-entities");
12
12
  const physics_world_entity_1 = require("../../\uD83E\uDDCAentities/physics-world.entity");
13
13
  let PhysicsBodyGroupService = class PhysicsBodyGroupService {
@@ -1,10 +1,10 @@
1
1
  import { PhysicsWorldEntity } from '../🧊entities/physics-world.entity';
2
2
  export declare class CollisionsService {
3
- registerPhysicsWorld(physicsWorld: PhysicsWorldEntity): void;
4
- step(physicsWorld: PhysicsWorldEntity, time: number, delta: number): void;
5
- private handleSpeedLimit;
6
- private registerContactEquation;
7
- private getCollisionDetails;
8
- private getCollisionDetail;
9
- private getNormals;
3
+ registerPhysicsWorld(physicsWorld: PhysicsWorldEntity): void;
4
+ step(physicsWorld: PhysicsWorldEntity, time: number, delta: number): void;
5
+ private handleSpeedLimit;
6
+ private registerContactEquation;
7
+ private getCollisionDetails;
8
+ private getCollisionDetail;
9
+ private getNormals;
10
10
  }