bard-legends-framework 0.9.6 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) 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.d.ts +4 -1
  21. package/dist/game-entities/entity/entity.js +5 -5
  22. package/dist/game-entities/entity/entity.spec.js +263 -293
  23. package/dist/game-entities/entity/helpers/view-creation.helper.d.ts +7 -7
  24. package/dist/game-entities/entity/helpers/view-creation.helper.js +48 -48
  25. package/dist/game-entities/scene/scene.spec.js +219 -223
  26. package/dist/game-entities/service/service.js +0 -4
  27. package/dist/game-entities/service/service.spec.js +265 -237
  28. package/dist/game-entities/service/service.test.js +4 -2
  29. package/dist/game-entities/update-loop.d.ts +18 -18
  30. package/dist/game-entities/update-loop.js +46 -28
  31. package/dist/game-entities/view/view.spec.js +490 -506
  32. package/dist/game-entities/view/view.test.js +1 -1
  33. package/dist/lib/animator/animations.d.ts +13 -13
  34. package/dist/lib/animator/animations.js +43 -40
  35. package/dist/lib/animator/animator.d.ts +41 -41
  36. package/dist/lib/animator/animator.js +194 -197
  37. package/dist/lib/animator/animator.spec.js +699 -612
  38. package/dist/lib/animator/index.js +24 -19
  39. package/dist/lib/libraries/animator/animations.d.ts +13 -13
  40. package/dist/lib/libraries/animator/animations.js +43 -40
  41. package/dist/lib/libraries/animator/animator.d.ts +41 -41
  42. package/dist/lib/libraries/animator/animator.js +194 -197
  43. package/dist/lib/libraries/animator/animator.spec.js +699 -612
  44. package/dist/lib/libraries/animator/index.js +24 -19
  45. package/dist/lib/libraries/path-finder/path-finder.d.ts +2 -2
  46. package/dist/lib/libraries/path-finder/path-finder.js +19 -20
  47. package/dist/lib/path-finder/path-finder.d.ts +2 -2
  48. package/dist/lib/path-finder/path-finder.js +19 -20
  49. package/dist/lib/services/keyboard/keyboard.d.ts +4 -4
  50. package/dist/lib/services/keyboard/keyboard.js +39 -31
  51. package/dist/lib/services/mouse/mouse.service.d.ts +8 -8
  52. package/dist/lib/services/mouse/mouse.service.js +65 -53
  53. package/dist/lib/services/mouse/mouser-target-focus.service.d.ts +11 -11
  54. package/dist/lib/services/mouse/mouser-target-focus.service.js +83 -81
  55. package/dist/lib/update-loop.d.ts +10 -10
  56. package/dist/lib/update-loop.js +35 -27
  57. package/dist/physics/entitity-types/immovable-physics-entity.d.ts +6 -6
  58. package/dist/physics/entitity-types/immovable-physics-entity.js +23 -24
  59. package/dist/physics/entitity-types/movable-entity.d.ts +6 -6
  60. package/dist/physics/entitity-types/movable-entity.js +21 -22
  61. package/dist/physics/entitity-types/movable-physics-entity.d.ts +14 -14
  62. package/dist/physics/entitity-types/movable-physics-entity.js +83 -88
  63. package/dist/physics/entitity-types/physics-entity.d.ts +23 -23
  64. package/dist/physics/entitity-types/physics-entity.js +97 -88
  65. package/dist/physics/helpers/closest-available-space.helper.d.ts +16 -16
  66. package/dist/physics/helpers/closest-available-space.helper.js +98 -96
  67. package/dist/physics/helpers/closest-available-space.helper.spec.js +115 -68
  68. package/dist/physics/helpers/p2js.helper.d.ts +3 -3
  69. package/dist/physics/helpers/p2js.helper.js +21 -22
  70. package/dist/physics/helpers/shape-factory.d.ts +9 -4
  71. package/dist/physics/helpers/shape-factory.js +99 -75
  72. package/dist/physics/libs/p2js.helper.js +1 -1
  73. package/dist/physics/libs/position-to-grid-position-converter.d.ts +3 -3
  74. package/dist/physics/libs/position-to-grid-position-converter.js +15 -13
  75. package/dist/physics/module//360/237/223/220services/availability-grid.service.d.ts +10 -5
  76. package/dist/physics/module//360/237/223/220services/availability-grid.service.js +77 -57
  77. package/dist/physics/module//360/237/223/220services/border.service.d.ts +2 -2
  78. package/dist/physics/module//360/237/223/220services/border.service.js +57 -37
  79. package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +1 -1
  80. package/dist/physics/module//360/237/223/220services/collisions.service.d.ts +7 -7
  81. package/dist/physics/module//360/237/223/220services/collisions.service.js +110 -98
  82. package/dist/physics/module//360/237/223/220services/debug-visuals.service.d.ts +28 -6
  83. package/dist/physics/module//360/237/223/220services/debug-visuals.service.js +121 -89
  84. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.d.ts +15 -7
  85. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.js +117 -93
  86. package/dist/physics/module//360/237/223/220services/explosion.service.d.ts +14 -7
  87. package/dist/physics/module//360/237/223/220services/explosion.service.js +102 -77
  88. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.d.ts +15 -7
  89. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.js +117 -93
  90. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.d.ts +14 -7
  91. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.js +102 -77
  92. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.d.ts +3 -3
  93. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.js +71 -67
  94. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.d.ts +3 -3
  95. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.js +71 -67
  96. package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +1 -1
  97. package/dist/physics/module//360/237/223/220services/materials.service.d.ts +16 -11
  98. package/dist/physics/module//360/237/223/220services/materials.service.js +118 -108
  99. package/dist/physics/module//360/237/223/220services/path-finder.service.d.ts +19 -8
  100. package/dist/physics/module//360/237/223/220services/path-finder.service.js +121 -82
  101. package/dist/physics/module//360/237/223/220services/physics-world.service.d.ts +30 -15
  102. package/dist/physics/module//360/237/223/220services/physics-world.service.js +122 -100
  103. package/dist/physics/module//360/237/223/220services/ray-casting.service.d.ts +3 -3
  104. package/dist/physics/module//360/237/223/220services/ray-casting.service.js +87 -86
  105. package/dist/physics/module//360/237/223/220services/shape-creation.service.d.ts +9 -4
  106. package/dist/physics/module//360/237/223/220services/shape-creation.service.js +113 -84
  107. package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +2 -1
  108. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.d.ts +8 -8
  109. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.js +32 -33
  110. package/dist/physics/physics-world.d.ts +50 -34
  111. package/dist/physics/physics-world.js +142 -133
  112. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.d.ts +3 -3
  113. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.js +15 -13
  114. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.d.ts +9 -9
  115. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.js +82 -77
  116. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.d.ts +18 -14
  117. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.js +91 -79
  118. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.d.ts +11 -11
  119. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.js +84 -76
  120. package/dist/physics/sub-elements/collisions/physics-collision.d.ts +7 -7
  121. package/dist/physics/sub-elements/collisions/physics-collision.js +43 -44
  122. package/dist/physics/sub-elements/elements/physics-body-groups.d.ts +11 -11
  123. package/dist/physics/sub-elements/elements/physics-body-groups.js +54 -54
  124. package/dist/physics/sub-elements/elements/physics-materials.d.ts +15 -10
  125. package/dist/physics/sub-elements/elements/physics-materials.js +101 -100
  126. package/dist/physics/sub-elements/elements/physics-world-borders.d.ts +3 -3
  127. package/dist/physics/sub-elements/elements/physics-world-borders.js +69 -45
  128. package/dist/physics/sub-elements/physics-body-groups.d.ts +8 -8
  129. package/dist/physics/sub-elements/physics-body-groups.js +41 -42
  130. package/dist/physics/sub-elements/physics-collision.d.ts +16 -16
  131. package/dist/physics/sub-elements/physics-collision.js +141 -121
  132. package/dist/physics/sub-elements/physics-materials.d.ts +15 -10
  133. package/dist/physics/sub-elements/physics-materials.js +101 -100
  134. package/dist/physics/sub-elements/physics-world-borders.d.ts +2 -2
  135. package/dist/physics/sub-elements/physics-world-borders.js +25 -26
  136. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.d.ts +15 -11
  137. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.js +59 -59
  138. package/dist/physics/sub-elements/raycasting/physics-explosion.d.ts +13 -6
  139. package/dist/physics/sub-elements/raycasting/physics-explosion.js +108 -73
  140. package/dist/physics/sub-elements/raycasting/ray-cast.d.ts +19 -19
  141. package/dist/physics/sub-elements/raycasting/ray-cast.js +93 -98
  142. package/dist/pixi/display-object/components/filters.d.ts +18 -18
  143. package/dist/pixi/display-object/components/filters.js +106 -81
  144. package/dist/pixi/display-object/components/glow-effect.d.ts +8 -8
  145. package/dist/pixi/display-object/components/glow-effect.js +33 -36
  146. package/dist/pixi/display-object/components/glow-filter.d.ts +8 -8
  147. package/dist/pixi/display-object/components/glow-filter.js +33 -36
  148. package/dist/pixi/display-object/container-attributes.js +1 -1
  149. package/dist/pixi/display-object/display-object-attributes.d.ts +41 -41
  150. package/dist/pixi/display-object/display-object-attributes.js +148 -150
  151. package/dist/pixi/display-object/display-object.d.ts +17 -17
  152. package/dist/pixi/display-object/display-object.js +79 -75
  153. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.d.ts +9 -4
  154. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.js +89 -77
  155. package/dist/pixi/display-object/filters/base-filters/blur.filter.js +30 -30
  156. package/dist/pixi/display-object/filters/base-filters/contrast-filter.d.ts +9 -4
  157. package/dist/pixi/display-object/filters/base-filters/contrast-filter.js +62 -53
  158. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.d.ts +10 -5
  159. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.js +93 -81
  160. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.d.ts +12 -7
  161. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.js +120 -109
  162. package/dist/pixi/display-object/filters/base-filters/expand-with-color.d.ts +10 -5
  163. package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +32 -32
  164. package/dist/pixi/display-object/filters/base-filters/expand-with-color.js +92 -85
  165. package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +28 -28
  166. package/dist/pixi/display-object/filters/templates/plane.template.js +20 -20
  167. package/dist/pixi/display-object/filters.js +20 -4
  168. package/dist/pixi/display-object/objects/components/filters.d.ts +18 -18
  169. package/dist/pixi/display-object/objects/components/filters.js +106 -81
  170. package/dist/pixi/display-object/objects/container.d.ts +2 -2
  171. package/dist/pixi/display-object/objects/container.js +39 -30
  172. package/dist/pixi/display-object/objects/graphics.d.ts +28 -28
  173. package/dist/pixi/display-object/objects/graphics.js +218 -202
  174. package/dist/pixi/display-object/objects/helpers/filters.d.ts +25 -25
  175. package/dist/pixi/display-object/objects/helpers/filters.js +150 -124
  176. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +7 -7
  177. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +114 -95
  178. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.d.ts +5 -5
  179. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.js +81 -57
  180. package/dist/pixi/display-object/objects/sprite.d.ts +43 -43
  181. package/dist/pixi/display-object/objects/sprite.js +248 -233
  182. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +1 -1
  183. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +9 -9
  184. package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +1 -1
  185. package/dist/pixi/display-object/objects/text.d.ts +25 -25
  186. package/dist/pixi/display-object/objects/text.js +111 -102
  187. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.d.ts +13 -9
  188. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.js +96 -67
  189. package/dist/pixi/game.d.ts +1 -1
  190. package/dist/pixi/game.js +2 -2
  191. package/dist/pixi/helpers/glow-sprite-generator.d.ts +6 -6
  192. package/dist/pixi/helpers/glow-sprite-generator.js +99 -84
  193. package/dist/pixi/helpers/pixi-container.helper.d.ts +1 -1
  194. package/dist/pixi/helpers/pixi-container.helper.js +10 -8
  195. package/dist/pixi/helpers/screen-position-to-stage.helper.d.ts +1 -1
  196. package/dist/pixi/helpers/screen-position-to-stage.helper.js +12 -12
  197. package/dist/pixi/helpers/screen-position-to-stage.helper.test.js +174 -79
  198. package/dist/pixi/modules/CAMERA/index.d.ts +1 -1
  199. package/dist/pixi/modules/CAMERA/index.js +3 -3
  200. package/dist/pixi/modules/CAMERA//360/237/247/212entities/camera.entity.js +1 -1
  201. package/dist/services/keyboard/keyboard.d.ts +4 -4
  202. package/dist/services/keyboard/keyboard.js +39 -31
  203. package/dist/services/mouse/mouse.service.d.ts +8 -8
  204. package/dist/services/mouse/mouse.service.js +65 -53
  205. package/dist/services/mouse/mouser-target-focus.service.d.ts +11 -11
  206. package/dist/services/mouse/mouser-target-focus.service.js +83 -81
  207. package/dist/utilities/libraries/animator/animating-content/state-animation.d.ts +29 -26
  208. package/dist/utilities/libraries/animator/animating-content/state-animation.js +159 -165
  209. package/dist/utilities/libraries/animator/animating-content/state-animation.test.js +386 -375
  210. package/dist/utilities/libraries/animator/animator.spec.js +765 -656
  211. package/dist/utilities/libraries/binary-heap/binary-heap.d.ts +11 -11
  212. package/dist/utilities/libraries/binary-heap/binary-heap.js +79 -81
  213. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.d.ts +11 -11
  214. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.js +79 -81
  215. package/dist/utilities/libraries/data-structures/grid/grid.d.ts +35 -31
  216. package/dist/utilities/libraries/data-structures/grid/grid.js +128 -117
  217. package/dist/utilities/libraries/data-structures/grid/grid.spec.js +176 -138
  218. package/dist/utilities/libraries/data-structures/grid/grid.test.js +218 -141
  219. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.d.ts +3 -3
  220. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.js +15 -13
  221. package/dist/utilities/libraries/data-structures/queue/queue.d.ts +21 -21
  222. package/dist/utilities/libraries/data-structures/queue/queue.js +63 -66
  223. package/dist/utilities/libraries/data-structures/queue/queue.test.js +54 -55
  224. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.spec.js +122 -68
  225. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.spec.js +140 -135
  226. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.spec.js +293 -229
  227. package/dist/utilities/libraries/path-finder/path-finder.d.ts +7 -7
  228. package/dist/utilities/libraries/path-finder/path-finder.js +113 -109
  229. package/dist/utilities/libraries/path-finder/path-finder.spec.js +131 -106
  230. package/dist/utilities/services/keyboard/keyboard.d.ts +4 -4
  231. package/dist/utilities/services/keyboard/keyboard.js +42 -34
  232. package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +1 -1
  233. package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +12 -12
  234. package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +168 -73
  235. package/dist/utilities/services/mouse/mouse-target-focus.service.d.ts +15 -15
  236. package/dist/utilities/services/mouse/mouse-target-focus.service.js +79 -76
  237. package/dist/utilities/services/mouse/mouse.service.d.ts +9 -9
  238. package/dist/utilities/services/mouse/mouse.service.js +86 -72
  239. package/dist/utilities/services/mouse/mouser-target-focus.service.d.ts +11 -11
  240. package/dist/utilities/services/mouse/mouser-target-focus.service.js +83 -81
  241. package/package.json +8 -13
@@ -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
  }