bard-legends-framework 0.9.6 → 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 (238) 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.spec.js +490 -506
  30. package/dist/game-entities/view/view.test.js +1 -1
  31. package/dist/lib/animator/animations.d.ts +13 -13
  32. package/dist/lib/animator/animations.js +43 -40
  33. package/dist/lib/animator/animator.d.ts +41 -41
  34. package/dist/lib/animator/animator.js +194 -197
  35. package/dist/lib/animator/animator.spec.js +699 -612
  36. package/dist/lib/animator/index.js +24 -19
  37. package/dist/lib/libraries/animator/animations.d.ts +13 -13
  38. package/dist/lib/libraries/animator/animations.js +43 -40
  39. package/dist/lib/libraries/animator/animator.d.ts +41 -41
  40. package/dist/lib/libraries/animator/animator.js +194 -197
  41. package/dist/lib/libraries/animator/animator.spec.js +699 -612
  42. package/dist/lib/libraries/animator/index.js +24 -19
  43. package/dist/lib/libraries/path-finder/path-finder.d.ts +2 -2
  44. package/dist/lib/libraries/path-finder/path-finder.js +19 -20
  45. package/dist/lib/path-finder/path-finder.d.ts +2 -2
  46. package/dist/lib/path-finder/path-finder.js +19 -20
  47. package/dist/lib/services/keyboard/keyboard.d.ts +4 -4
  48. package/dist/lib/services/keyboard/keyboard.js +39 -31
  49. package/dist/lib/services/mouse/mouse.service.d.ts +8 -8
  50. package/dist/lib/services/mouse/mouse.service.js +65 -53
  51. package/dist/lib/services/mouse/mouser-target-focus.service.d.ts +11 -11
  52. package/dist/lib/services/mouse/mouser-target-focus.service.js +83 -81
  53. package/dist/lib/update-loop.d.ts +10 -10
  54. package/dist/lib/update-loop.js +35 -27
  55. package/dist/physics/entitity-types/immovable-physics-entity.d.ts +6 -6
  56. package/dist/physics/entitity-types/immovable-physics-entity.js +23 -24
  57. package/dist/physics/entitity-types/movable-entity.d.ts +6 -6
  58. package/dist/physics/entitity-types/movable-entity.js +21 -22
  59. package/dist/physics/entitity-types/movable-physics-entity.d.ts +14 -14
  60. package/dist/physics/entitity-types/movable-physics-entity.js +83 -88
  61. package/dist/physics/entitity-types/physics-entity.d.ts +23 -23
  62. package/dist/physics/entitity-types/physics-entity.js +97 -88
  63. package/dist/physics/helpers/closest-available-space.helper.d.ts +16 -16
  64. package/dist/physics/helpers/closest-available-space.helper.js +98 -96
  65. package/dist/physics/helpers/closest-available-space.helper.spec.js +115 -68
  66. package/dist/physics/helpers/p2js.helper.d.ts +3 -3
  67. package/dist/physics/helpers/p2js.helper.js +21 -22
  68. package/dist/physics/helpers/shape-factory.d.ts +9 -4
  69. package/dist/physics/helpers/shape-factory.js +99 -75
  70. package/dist/physics/libs/p2js.helper.js +1 -1
  71. package/dist/physics/libs/position-to-grid-position-converter.d.ts +3 -3
  72. package/dist/physics/libs/position-to-grid-position-converter.js +15 -13
  73. package/dist/physics/module//360/237/223/220services/availability-grid.service.d.ts +10 -5
  74. package/dist/physics/module//360/237/223/220services/availability-grid.service.js +77 -57
  75. package/dist/physics/module//360/237/223/220services/border.service.d.ts +2 -2
  76. package/dist/physics/module//360/237/223/220services/border.service.js +57 -37
  77. package/dist/physics/module//360/237/223/220services/collision/physics-body-group.service.js +1 -1
  78. package/dist/physics/module//360/237/223/220services/collisions.service.d.ts +7 -7
  79. package/dist/physics/module//360/237/223/220services/collisions.service.js +110 -98
  80. package/dist/physics/module//360/237/223/220services/debug-visuals.service.d.ts +28 -6
  81. package/dist/physics/module//360/237/223/220services/debug-visuals.service.js +121 -89
  82. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.d.ts +15 -7
  83. package/dist/physics/module//360/237/223/220services/eliptic-explosion.service.js +117 -93
  84. package/dist/physics/module//360/237/223/220services/explosion.service.d.ts +14 -7
  85. package/dist/physics/module//360/237/223/220services/explosion.service.js +102 -77
  86. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.d.ts +15 -7
  87. package/dist/physics/module//360/237/223/220services/explosions/eliptic-explosion.service.js +117 -93
  88. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.d.ts +14 -7
  89. package/dist/physics/module//360/237/223/220services/explosions/explosion.service.js +102 -77
  90. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.d.ts +3 -3
  91. package/dist/physics/module//360/237/223/220services/explosions/helpers/ray-cast-hit-converter.js +71 -67
  92. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.d.ts +3 -3
  93. package/dist/physics/module//360/237/223/220services/helpers/ray-cast-hit-converter.js +71 -67
  94. package/dist/physics/module//360/237/223/220services/impact/eliptic-explosion.service.js +1 -1
  95. package/dist/physics/module//360/237/223/220services/materials.service.d.ts +16 -11
  96. package/dist/physics/module//360/237/223/220services/materials.service.js +118 -108
  97. package/dist/physics/module//360/237/223/220services/path-finder.service.d.ts +19 -8
  98. package/dist/physics/module//360/237/223/220services/path-finder.service.js +121 -82
  99. package/dist/physics/module//360/237/223/220services/physics-world.service.d.ts +30 -15
  100. package/dist/physics/module//360/237/223/220services/physics-world.service.js +122 -100
  101. package/dist/physics/module//360/237/223/220services/ray-casting.service.d.ts +3 -3
  102. package/dist/physics/module//360/237/223/220services/ray-casting.service.js +87 -86
  103. package/dist/physics/module//360/237/223/220services/shape-creation.service.d.ts +9 -4
  104. package/dist/physics/module//360/237/223/220services/shape-creation.service.js +113 -84
  105. package/dist/physics/module//360/237/223/220services/test-visuals/test-visuals.service.js +2 -1
  106. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.d.ts +8 -8
  107. package/dist/physics/module//360/237/247/212entities/data-structures/availability-grid-cache.js +32 -33
  108. package/dist/physics/physics-world.d.ts +50 -34
  109. package/dist/physics/physics-world.js +142 -133
  110. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.d.ts +3 -3
  111. package/dist/physics/sub-elements/available-spaces/helpers/availability-grid.helper.js +15 -13
  112. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.d.ts +9 -9
  113. package/dist/physics/sub-elements/available-spaces/physics-availability-grid.js +82 -77
  114. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.d.ts +18 -14
  115. package/dist/physics/sub-elements/available-spaces/physics-available-spaces.js +91 -79
  116. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.d.ts +11 -11
  117. package/dist/physics/sub-elements/collisions/contact-equation-orginiser.js +84 -76
  118. package/dist/physics/sub-elements/collisions/physics-collision.d.ts +7 -7
  119. package/dist/physics/sub-elements/collisions/physics-collision.js +43 -44
  120. package/dist/physics/sub-elements/elements/physics-body-groups.d.ts +11 -11
  121. package/dist/physics/sub-elements/elements/physics-body-groups.js +54 -54
  122. package/dist/physics/sub-elements/elements/physics-materials.d.ts +15 -10
  123. package/dist/physics/sub-elements/elements/physics-materials.js +101 -100
  124. package/dist/physics/sub-elements/elements/physics-world-borders.d.ts +3 -3
  125. package/dist/physics/sub-elements/elements/physics-world-borders.js +69 -45
  126. package/dist/physics/sub-elements/physics-body-groups.d.ts +8 -8
  127. package/dist/physics/sub-elements/physics-body-groups.js +41 -42
  128. package/dist/physics/sub-elements/physics-collision.d.ts +16 -16
  129. package/dist/physics/sub-elements/physics-collision.js +141 -121
  130. package/dist/physics/sub-elements/physics-materials.d.ts +15 -10
  131. package/dist/physics/sub-elements/physics-materials.js +101 -100
  132. package/dist/physics/sub-elements/physics-world-borders.d.ts +2 -2
  133. package/dist/physics/sub-elements/physics-world-borders.js +25 -26
  134. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.d.ts +15 -11
  135. package/dist/physics/sub-elements/raycasting/physics-body-explosion-hit.js +59 -59
  136. package/dist/physics/sub-elements/raycasting/physics-explosion.d.ts +13 -6
  137. package/dist/physics/sub-elements/raycasting/physics-explosion.js +108 -73
  138. package/dist/physics/sub-elements/raycasting/ray-cast.d.ts +19 -19
  139. package/dist/physics/sub-elements/raycasting/ray-cast.js +93 -98
  140. package/dist/pixi/display-object/components/filters.d.ts +18 -18
  141. package/dist/pixi/display-object/components/filters.js +106 -81
  142. package/dist/pixi/display-object/components/glow-effect.d.ts +8 -8
  143. package/dist/pixi/display-object/components/glow-effect.js +33 -36
  144. package/dist/pixi/display-object/components/glow-filter.d.ts +8 -8
  145. package/dist/pixi/display-object/components/glow-filter.js +33 -36
  146. package/dist/pixi/display-object/container-attributes.js +1 -1
  147. package/dist/pixi/display-object/display-object-attributes.d.ts +41 -41
  148. package/dist/pixi/display-object/display-object-attributes.js +148 -150
  149. package/dist/pixi/display-object/display-object.d.ts +17 -17
  150. package/dist/pixi/display-object/display-object.js +79 -75
  151. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.d.ts +9 -4
  152. package/dist/pixi/display-object/filters/base-filters/alpha-primer-color.filter.js +89 -77
  153. package/dist/pixi/display-object/filters/base-filters/blur.filter.js +30 -30
  154. package/dist/pixi/display-object/filters/base-filters/contrast-filter.d.ts +9 -4
  155. package/dist/pixi/display-object/filters/base-filters/contrast-filter.js +62 -53
  156. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.d.ts +10 -5
  157. package/dist/pixi/display-object/filters/base-filters/expand-with-alpha-color.js +93 -81
  158. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.d.ts +12 -7
  159. package/dist/pixi/display-object/filters/base-filters/expand-with-color-gradient.js +120 -109
  160. package/dist/pixi/display-object/filters/base-filters/expand-with-color.d.ts +10 -5
  161. package/dist/pixi/display-object/filters/base-filters/expand-with-color.filter.js +32 -32
  162. package/dist/pixi/display-object/filters/base-filters/expand-with-color.js +92 -85
  163. package/dist/pixi/display-object/filters/templates/checking-neighbors.template.js +28 -28
  164. package/dist/pixi/display-object/filters/templates/plane.template.js +20 -20
  165. package/dist/pixi/display-object/filters.js +20 -4
  166. package/dist/pixi/display-object/objects/components/filters.d.ts +18 -18
  167. package/dist/pixi/display-object/objects/components/filters.js +106 -81
  168. package/dist/pixi/display-object/objects/container.d.ts +2 -2
  169. package/dist/pixi/display-object/objects/container.js +39 -30
  170. package/dist/pixi/display-object/objects/graphics.d.ts +28 -28
  171. package/dist/pixi/display-object/objects/graphics.js +218 -202
  172. package/dist/pixi/display-object/objects/helpers/filters.d.ts +25 -25
  173. package/dist/pixi/display-object/objects/helpers/filters.js +150 -124
  174. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +7 -7
  175. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +114 -95
  176. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.d.ts +5 -5
  177. package/dist/pixi/display-object/objects/premade-objects/sprite-with-glowing-shapes.js +81 -57
  178. package/dist/pixi/display-object/objects/sprite.d.ts +43 -43
  179. package/dist/pixi/display-object/objects/sprite.js +248 -233
  180. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.js +1 -1
  181. package/dist/pixi/display-object/objects/text/helpers/process-steps/1-data-in-converter/rich-text-data-in-converter.test.js +9 -9
  182. package/dist/pixi/display-object/objects/text/helpers/rich-text-to-plane-text.d.ts +1 -1
  183. package/dist/pixi/display-object/objects/text.d.ts +25 -25
  184. package/dist/pixi/display-object/objects/text.js +111 -102
  185. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.d.ts +13 -9
  186. package/dist/pixi/display-object/premade-objects/sprite-with-glowing-shapes.js +96 -67
  187. package/dist/pixi/game.d.ts +1 -1
  188. package/dist/pixi/game.js +2 -2
  189. package/dist/pixi/helpers/glow-sprite-generator.d.ts +6 -6
  190. package/dist/pixi/helpers/glow-sprite-generator.js +99 -84
  191. package/dist/pixi/helpers/pixi-container.helper.d.ts +1 -1
  192. package/dist/pixi/helpers/pixi-container.helper.js +10 -8
  193. package/dist/pixi/helpers/screen-position-to-stage.helper.d.ts +1 -1
  194. package/dist/pixi/helpers/screen-position-to-stage.helper.js +12 -12
  195. package/dist/pixi/helpers/screen-position-to-stage.helper.test.js +174 -79
  196. package/dist/pixi/modules/CAMERA/index.d.ts +1 -1
  197. package/dist/pixi/modules/CAMERA/index.js +3 -3
  198. package/dist/services/keyboard/keyboard.d.ts +4 -4
  199. package/dist/services/keyboard/keyboard.js +39 -31
  200. package/dist/services/mouse/mouse.service.d.ts +8 -8
  201. package/dist/services/mouse/mouse.service.js +65 -53
  202. package/dist/services/mouse/mouser-target-focus.service.d.ts +11 -11
  203. package/dist/services/mouse/mouser-target-focus.service.js +83 -81
  204. package/dist/utilities/libraries/animator/animating-content/state-animation.d.ts +29 -26
  205. package/dist/utilities/libraries/animator/animating-content/state-animation.js +159 -165
  206. package/dist/utilities/libraries/animator/animating-content/state-animation.test.js +386 -375
  207. package/dist/utilities/libraries/animator/animator.spec.js +765 -656
  208. package/dist/utilities/libraries/binary-heap/binary-heap.d.ts +11 -11
  209. package/dist/utilities/libraries/binary-heap/binary-heap.js +79 -81
  210. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.d.ts +11 -11
  211. package/dist/utilities/libraries/data-structures/binary-heap/binary-heap.js +79 -81
  212. package/dist/utilities/libraries/data-structures/grid/grid.d.ts +35 -31
  213. package/dist/utilities/libraries/data-structures/grid/grid.js +128 -117
  214. package/dist/utilities/libraries/data-structures/grid/grid.spec.js +176 -138
  215. package/dist/utilities/libraries/data-structures/grid/grid.test.js +218 -141
  216. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.d.ts +3 -3
  217. package/dist/utilities/libraries/data-structures/grid/position-to-grid-position-converter.js +15 -13
  218. package/dist/utilities/libraries/data-structures/queue/queue.d.ts +21 -21
  219. package/dist/utilities/libraries/data-structures/queue/queue.js +63 -66
  220. package/dist/utilities/libraries/data-structures/queue/queue.test.js +54 -55
  221. package/dist/utilities/libraries/grid-algorithms/closest-available-space/closest-available-space.helper.spec.js +122 -68
  222. package/dist/utilities/libraries/grid-algorithms/path-finder/path-finder.spec.js +140 -135
  223. package/dist/utilities/libraries/grid-algorithms/vector-field-path-finder/vector-field-path-finder.spec.js +293 -229
  224. package/dist/utilities/libraries/path-finder/path-finder.d.ts +7 -7
  225. package/dist/utilities/libraries/path-finder/path-finder.js +113 -109
  226. package/dist/utilities/libraries/path-finder/path-finder.spec.js +131 -106
  227. package/dist/utilities/services/keyboard/keyboard.d.ts +4 -4
  228. package/dist/utilities/services/keyboard/keyboard.js +42 -34
  229. package/dist/utilities/services/mouse/helpers/mouse-position.helper.d.ts +1 -1
  230. package/dist/utilities/services/mouse/helpers/mouse-position.helper.js +12 -12
  231. package/dist/utilities/services/mouse/helpers/mouse-position.helper.test.js +168 -73
  232. package/dist/utilities/services/mouse/mouse-target-focus.service.d.ts +15 -15
  233. package/dist/utilities/services/mouse/mouse-target-focus.service.js +79 -76
  234. package/dist/utilities/services/mouse/mouse.service.d.ts +9 -9
  235. package/dist/utilities/services/mouse/mouse.service.js +86 -72
  236. package/dist/utilities/services/mouse/mouser-target-focus.service.d.ts +11 -11
  237. package/dist/utilities/services/mouse/mouser-target-focus.service.js +83 -81
  238. package/package.json +4 -10
@@ -1,213 +1,229 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
1
+ var __createBinding =
2
+ (this && this.__createBinding) ||
3
+ (Object.create
4
+ ? (o, m, k, k2) => {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: () => m[k] };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }
12
+ : (o, m, k, k2) => {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ });
16
+ var __setModuleDefault =
17
+ (this && this.__setModuleDefault) ||
18
+ (Object.create
19
+ ? (o, v) => {
20
+ Object.defineProperty(o, 'default', { enumerable: true, value: v });
21
+ }
22
+ : (o, v) => {
23
+ o['default'] = v;
24
+ });
25
+ var __importStar =
26
+ (this && this.__importStar) ||
27
+ (mod => {
19
28
  if (mod && mod.__esModule) return mod;
20
29
  var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
30
+ if (mod != null) for (var k in mod) if (k !== 'default' && Object.hasOwn(mod, k)) __createBinding(result, mod, k);
22
31
  __setModuleDefault(result, mod);
23
32
  return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
33
+ });
34
+ Object.defineProperty(exports, '__esModule', { value: true });
26
35
  exports.Graphics = void 0;
27
- const helpers_lib_1 = require("helpers-lib");
28
- const PIXI = __importStar(require("pixi.js"));
29
- const __1 = require("../..");
30
- const game_1 = require("../../game");
31
- const game_assets_1 = require("../../helpers/game-assets");
32
- const container_attributes_1 = require("../container-attributes");
36
+ const helpers_lib_1 = require('helpers-lib');
37
+ const PIXI = __importStar(require('pixi.js'));
38
+ const __1 = require('../..');
39
+ const game_1 = require('../../game');
40
+ const game_assets_1 = require('../../helpers/game-assets');
41
+ const container_attributes_1 = require('../container-attributes');
33
42
  class Graphics extends container_attributes_1.ContainerAttributes {
34
- static { this.drawnTextureCache = new Map(); }
35
- static createArrow(size, color) {
36
- let pixiGraphics = new PIXI.Graphics();
37
- let polygon = [
38
- [
39
- { x: 0, y: -size / 2 },
40
- { x: (size * 3) / 8, y: -size / 8 },
41
- { x: size / 4, y: 0 },
42
- { x: 0, y: -size / 4 },
43
- { x: -size / 4, y: 0 },
44
- { x: (-size * 3) / 8, y: -size / 8 }
45
- ],
46
- [
47
- { x: 0, y: -size / 4 },
48
- { x: size / 8 - size / 30, y: -size / 8 - size / 30 },
49
- { x: size / 8 - size / 30, y: (size * 7) / 16 },
50
- { x: -size / 8 + size / 30, y: (size * 7) / 16 },
51
- { x: -size / 8 + size / 30, y: -size / 8 - size / 30 }
52
- ]
53
- ];
54
- pixiGraphics.beginFill(color);
55
- polygon.forEach(vertices => {
56
- pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
57
- });
58
- pixiGraphics.endFill();
59
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'arrow', size, color }));
60
- }
61
- static createDashedLine(from, to, partialOptions) {
62
- let options = {
63
- width: 2,
64
- dashLength: 10,
65
- dashGap: 4,
66
- lineStartGap: 0,
67
- lineEndGap: 0,
68
- color: helpers_lib_1.ColorHelper.white,
69
- ...partialOptions
70
- };
71
- let pixiGraphics = new PIXI.Graphics();
72
- pixiGraphics.lineStyle(options.width, options.color);
73
- let fromTo = helpers_lib_1.Vector.fromTo(from, to);
74
- let direction = fromTo.normalize();
75
- let totalDistance = fromTo.length;
76
- let availableDistance = totalDistance - options.lineStartGap - options.lineEndGap;
77
- if (availableDistance > 0) {
78
- let dashCycle = options.dashLength + options.dashGap;
79
- let dashCount = Math.floor(availableDistance / dashCycle);
80
- let penPosition = from.add(direction.normalize(options.lineStartGap));
81
- for (let i = 0; i < dashCount; i++) {
82
- let drawTo = penPosition.add(direction.normalize(options.dashLength));
83
- pixiGraphics.moveTo(penPosition.x, penPosition.y).lineTo(drawTo.x, drawTo.y);
84
- penPosition = drawTo.add(direction.normalize(options.dashGap));
85
- }
86
- let remainingDistance = totalDistance - options.lineEndGap - helpers_lib_1.Vector.fromTo(from, penPosition).length;
87
- if (remainingDistance > 0) {
88
- let drawTo = penPosition.add(direction.normalize(remainingDistance));
89
- pixiGraphics.moveTo(penPosition.x, penPosition.y).lineTo(drawTo.x, drawTo.y);
90
- }
91
- }
92
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'dashedLine', from, to, options }));
93
- }
94
- static createVector(from, to, color) {
95
- let pixiGraphics = new PIXI.Graphics();
96
- pixiGraphics.lineStyle(2, color);
97
- pixiGraphics.moveTo(from.x, from.y);
98
- pixiGraphics.lineTo(to.x, to.y);
99
- pixiGraphics.lineStyle(1, color);
100
- pixiGraphics.beginFill(helpers_lib_1.ColorHelper.white);
101
- pixiGraphics.drawCircle(from.x, from.y, 3);
102
- pixiGraphics.endFill();
103
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'line', start: from, end: to, color }));
104
- }
105
- static createRectangleBorders(size, borderSize, color) {
106
- let pixiGraphics = new PIXI.Graphics();
107
- pixiGraphics.beginFill(color);
108
- pixiGraphics.drawRect(0, 0, size.x, borderSize);
109
- pixiGraphics.drawRect(0, borderSize, borderSize, size.y - borderSize * 2);
110
- pixiGraphics.drawRect(size.x - borderSize, borderSize, borderSize, size.y - borderSize * 2);
111
- pixiGraphics.drawRect(0, size.y - borderSize, size.x, borderSize);
112
- pixiGraphics.endFill();
113
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle-borders', size, borderSize, color }));
114
- }
115
- static createRectangle(size, color = helpers_lib_1.ColorHelper.white) {
116
- let pixiGraphics = new PIXI.Graphics();
117
- pixiGraphics.beginFill(color);
118
- pixiGraphics.drawRect(0, 0, size.x, size.y);
119
- pixiGraphics.endFill();
120
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle', size, color }));
121
- }
122
- static createCircle(radius, color) {
123
- let pixiGraphics = new PIXI.Graphics();
124
- pixiGraphics.beginFill(color);
125
- pixiGraphics.drawCircle(0, 0, radius);
126
- pixiGraphics.endFill();
127
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'circle', radius, color }));
128
- }
129
- static createElipse(size, color) {
130
- let pixiGraphics = new PIXI.Graphics();
131
- pixiGraphics.beginFill(color);
132
- pixiGraphics.drawEllipse(0, 0, size.x, size.y);
133
- pixiGraphics.endFill();
134
- return new Graphics(pixiGraphics, JSON.stringify({ type: 'elipse', size, color }));
43
+ static {
44
+ Graphics.drawnTextureCache = new Map();
45
+ }
46
+ static createArrow(size, color) {
47
+ const pixiGraphics = new PIXI.Graphics();
48
+ const polygon = [
49
+ [
50
+ { x: 0, y: -size / 2 },
51
+ { x: (size * 3) / 8, y: -size / 8 },
52
+ { x: size / 4, y: 0 },
53
+ { x: 0, y: -size / 4 },
54
+ { x: -size / 4, y: 0 },
55
+ { x: (-size * 3) / 8, y: -size / 8 }
56
+ ],
57
+ [
58
+ { x: 0, y: -size / 4 },
59
+ { x: size / 8 - size / 30, y: -size / 8 - size / 30 },
60
+ { x: size / 8 - size / 30, y: (size * 7) / 16 },
61
+ { x: -size / 8 + size / 30, y: (size * 7) / 16 },
62
+ { x: -size / 8 + size / 30, y: -size / 8 - size / 30 }
63
+ ]
64
+ ];
65
+ pixiGraphics.beginFill(color);
66
+ polygon.forEach(vertices => {
67
+ pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
68
+ });
69
+ pixiGraphics.endFill();
70
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'arrow', size, color }));
71
+ }
72
+ static createDashedLine(from, to, partialOptions) {
73
+ const options = {
74
+ width: 2,
75
+ dashLength: 10,
76
+ dashGap: 4,
77
+ lineStartGap: 0,
78
+ lineEndGap: 0,
79
+ color: helpers_lib_1.ColorHelper.white,
80
+ ...partialOptions
81
+ };
82
+ const pixiGraphics = new PIXI.Graphics();
83
+ pixiGraphics.lineStyle(options.width, options.color);
84
+ const fromTo = helpers_lib_1.Vector.fromTo(from, to);
85
+ const direction = fromTo.normalize();
86
+ const totalDistance = fromTo.length;
87
+ const availableDistance = totalDistance - options.lineStartGap - options.lineEndGap;
88
+ if (availableDistance > 0) {
89
+ const dashCycle = options.dashLength + options.dashGap;
90
+ const dashCount = Math.floor(availableDistance / dashCycle);
91
+ let penPosition = from.add(direction.normalize(options.lineStartGap));
92
+ for (let i = 0; i < dashCount; i++) {
93
+ const drawTo = penPosition.add(direction.normalize(options.dashLength));
94
+ pixiGraphics.moveTo(penPosition.x, penPosition.y).lineTo(drawTo.x, drawTo.y);
95
+ penPosition = drawTo.add(direction.normalize(options.dashGap));
96
+ }
97
+ const remainingDistance = totalDistance - options.lineEndGap - helpers_lib_1.Vector.fromTo(from, penPosition).length;
98
+ if (remainingDistance > 0) {
99
+ const drawTo = penPosition.add(direction.normalize(remainingDistance));
100
+ pixiGraphics.moveTo(penPosition.x, penPosition.y).lineTo(drawTo.x, drawTo.y);
101
+ }
135
102
  }
136
- static createPolygon(polygon, color) {
137
- let pixiGraphics = new PIXI.Graphics();
138
- let cacheName = JSON.stringify({ type: 'polygon', polygon, color });
139
- pixiGraphics.beginFill(color);
140
- polygon.forEach(vertices => {
141
- pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
142
- });
143
- pixiGraphics.endFill();
144
- return new Graphics(pixiGraphics, cacheName);
145
- }
146
- static createRegularPolygon(sides, radius, color) {
147
- let polygon = new PIXI.Graphics();
148
- let anglePerStep = new helpers_lib_1.Radian(helpers_lib_1.PI_360 / sides);
149
- polygon.beginFill(color);
150
- polygon.moveTo(radius, 0);
151
- for (let i = 1; i <= sides; i++) {
152
- let angle = anglePerStep.multiply(i);
153
- let angleVector = angle.vector.normalize(radius);
154
- let nextX = radius + angleVector.x;
155
- let nextY = radius + angleVector.y;
156
- polygon.lineTo(nextX, nextY);
157
- }
158
- polygon.endFill();
159
- return new Graphics(polygon, JSON.stringify({ type: 'regular-polygon', sides, radius, color }));
160
- }
161
- constructor(pixiGraphics, cacheName) {
162
- super();
163
- this.pixiContainer.addChild(pixiGraphics);
164
- this.pixiGraphics = pixiGraphics;
165
- this.cacheName = cacheName;
166
- }
167
- destroySelf() {
168
- super.destroySelf();
169
- !this.pixiGraphics.destroyed && this.pixiGraphics.destroy();
170
- }
171
- toSprite(partialOptions) {
172
- let options = {
173
- cacheName: this.cacheName,
174
- keepBounds: true,
175
- cache: false,
176
- ...partialOptions
177
- };
178
- let textureConversion = this.getTexture(options.cacheName, options.cache);
179
- let spriteDefinition = {
180
- id: textureConversion.assetId,
181
- scale: 1,
182
- size: textureConversion.bounds,
183
- anchor: { x: 0, y: 0 },
184
- boundingShapes: undefined,
185
- destroyAssetOnDestroy: !options.cache
186
- };
187
- let sprite = new __1.Sprite(spriteDefinition, { texturePosition: textureConversion.bounds, ignoreAnchor: true });
188
- this.skipAttachCheck();
189
- this.destroy();
190
- return sprite;
191
- }
192
- getTexture(cacheName, cache) {
193
- if (cache) {
194
- let textureOfGraphics = Graphics.drawnTextureCache.get(cacheName);
195
- if (!textureOfGraphics) {
196
- textureOfGraphics = this.createTextureFromGraphics();
197
- Graphics.drawnTextureCache.set(cacheName, textureOfGraphics);
198
- }
199
- return textureOfGraphics;
200
- }
201
- else {
202
- return this.createTextureFromGraphics();
203
- }
103
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'dashedLine', from, to, options }));
104
+ }
105
+ static createVector(from, to, color) {
106
+ const pixiGraphics = new PIXI.Graphics();
107
+ pixiGraphics.lineStyle(2, color);
108
+ pixiGraphics.moveTo(from.x, from.y);
109
+ pixiGraphics.lineTo(to.x, to.y);
110
+ pixiGraphics.lineStyle(1, color);
111
+ pixiGraphics.beginFill(helpers_lib_1.ColorHelper.white);
112
+ pixiGraphics.drawCircle(from.x, from.y, 3);
113
+ pixiGraphics.endFill();
114
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'line', start: from, end: to, color }));
115
+ }
116
+ static createRectangleBorders(size, borderSize, color) {
117
+ const pixiGraphics = new PIXI.Graphics();
118
+ pixiGraphics.beginFill(color);
119
+ pixiGraphics.drawRect(0, 0, size.x, borderSize);
120
+ pixiGraphics.drawRect(0, borderSize, borderSize, size.y - borderSize * 2);
121
+ pixiGraphics.drawRect(size.x - borderSize, borderSize, borderSize, size.y - borderSize * 2);
122
+ pixiGraphics.drawRect(0, size.y - borderSize, size.x, borderSize);
123
+ pixiGraphics.endFill();
124
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle-borders', size, borderSize, color }));
125
+ }
126
+ static createRectangle(size, color = helpers_lib_1.ColorHelper.white) {
127
+ const pixiGraphics = new PIXI.Graphics();
128
+ pixiGraphics.beginFill(color);
129
+ pixiGraphics.drawRect(0, 0, size.x, size.y);
130
+ pixiGraphics.endFill();
131
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle', size, color }));
132
+ }
133
+ static createCircle(radius, color) {
134
+ const pixiGraphics = new PIXI.Graphics();
135
+ pixiGraphics.beginFill(color);
136
+ pixiGraphics.drawCircle(0, 0, radius);
137
+ pixiGraphics.endFill();
138
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'circle', radius, color }));
139
+ }
140
+ static createElipse(size, color) {
141
+ const pixiGraphics = new PIXI.Graphics();
142
+ pixiGraphics.beginFill(color);
143
+ pixiGraphics.drawEllipse(0, 0, size.x, size.y);
144
+ pixiGraphics.endFill();
145
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'elipse', size, color }));
146
+ }
147
+ static createPolygon(polygon, color) {
148
+ const pixiGraphics = new PIXI.Graphics();
149
+ const cacheName = JSON.stringify({ type: 'polygon', polygon, color });
150
+ pixiGraphics.beginFill(color);
151
+ polygon.forEach(vertices => {
152
+ pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
153
+ });
154
+ pixiGraphics.endFill();
155
+ return new Graphics(pixiGraphics, cacheName);
156
+ }
157
+ static createRegularPolygon(sides, radius, color) {
158
+ const polygon = new PIXI.Graphics();
159
+ const anglePerStep = new helpers_lib_1.Radian(helpers_lib_1.PI_360 / sides);
160
+ polygon.beginFill(color);
161
+ polygon.moveTo(radius, 0);
162
+ for (let i = 1; i <= sides; i++) {
163
+ const angle = anglePerStep.multiply(i);
164
+ const angleVector = angle.vector.normalize(radius);
165
+ const nextX = radius + angleVector.x;
166
+ const nextY = radius + angleVector.y;
167
+ polygon.lineTo(nextX, nextY);
204
168
  }
205
- createTextureFromGraphics() {
206
- let texture = game_1.Game.instance.renderer.generateTexture(this.pixiGraphics);
207
- texture.id = game_assets_1.GameAssets.insertAsset(texture);
208
- let graphicsBounds = this.pixiGraphics.getBounds();
209
- return { assetId: texture.id, bounds: new helpers_lib_1.Vector(graphicsBounds.x, graphicsBounds.y) };
169
+ polygon.endFill();
170
+ return new Graphics(polygon, JSON.stringify({ type: 'regular-polygon', sides, radius, color }));
171
+ }
172
+ constructor(pixiGraphics, cacheName) {
173
+ super();
174
+ this.pixiContainer.addChild(pixiGraphics);
175
+ this.pixiGraphics = pixiGraphics;
176
+ this.cacheName = cacheName;
177
+ }
178
+ destroySelf() {
179
+ super.destroySelf();
180
+ !this.pixiGraphics.destroyed && this.pixiGraphics.destroy();
181
+ }
182
+ toSprite(partialOptions) {
183
+ const options = {
184
+ cacheName: this.cacheName,
185
+ keepBounds: true,
186
+ cache: false,
187
+ ...partialOptions
188
+ };
189
+ const textureConversion = this.getTexture(options.cacheName, options.cache);
190
+ const spriteDefinition = {
191
+ id: textureConversion.assetId,
192
+ scale: 1,
193
+ size: textureConversion.bounds,
194
+ anchor: { x: 0, y: 0 },
195
+ boundingShapes: undefined,
196
+ destroyAssetOnDestroy: !options.cache
197
+ };
198
+ const sprite = new __1.Sprite(spriteDefinition, {
199
+ texturePosition: textureConversion.bounds,
200
+ ignoreAnchor: true
201
+ });
202
+ this.skipAttachCheck();
203
+ this.destroy();
204
+ return sprite;
205
+ }
206
+ getTexture(cacheName, cache) {
207
+ if (cache) {
208
+ let textureOfGraphics = Graphics.drawnTextureCache.get(cacheName);
209
+ if (!textureOfGraphics) {
210
+ textureOfGraphics = this.createTextureFromGraphics();
211
+ Graphics.drawnTextureCache.set(cacheName, textureOfGraphics);
212
+ }
213
+ return textureOfGraphics;
214
+ } else {
215
+ return this.createTextureFromGraphics();
210
216
  }
217
+ }
218
+ createTextureFromGraphics() {
219
+ const texture = game_1.Game.instance.renderer.generateTexture(this.pixiGraphics);
220
+ texture.id = game_assets_1.GameAssets.insertAsset(texture);
221
+ const graphicsBounds = this.pixiGraphics.getBounds();
222
+ return {
223
+ assetId: texture.id,
224
+ bounds: new helpers_lib_1.Vector(graphicsBounds.x, graphicsBounds.y)
225
+ };
226
+ }
211
227
  }
212
228
  exports.Graphics = Graphics;
213
- //# sourceMappingURL=graphics.js.map
229
+ //# sourceMappingURL=graphics.js.map
@@ -1,29 +1,29 @@
1
1
  import { Vector } from 'helpers-lib';
2
2
  import * as PIXI from 'pixi.js';
3
3
  export declare class Filters {
4
- private container;
5
- private colorMatrix;
6
- private _red;
7
- get red(): number;
8
- set red(value: number);
9
- private _green;
10
- get green(): number;
11
- set green(value: number);
12
- private _blue;
13
- get blue(): number;
14
- set blue(value: number);
15
- private _brightness;
16
- get brightness(): number;
17
- set brightness(value: number);
18
- private _contrast;
19
- get contrast(): number;
20
- set contrast(value: number);
21
- private blurFilter;
22
- private _blur;
23
- get blur(): Vector | undefined;
24
- set blur(value: Vector | number | undefined);
25
- constructor(container: PIXI.Container);
26
- removeColorFilter(): void;
27
- private refreshColorMatrix;
28
- private onFilterChange;
4
+ private container;
5
+ private colorMatrix;
6
+ private _red;
7
+ get red(): number;
8
+ set red(value: number);
9
+ private _green;
10
+ get green(): number;
11
+ set green(value: number);
12
+ private _blue;
13
+ get blue(): number;
14
+ set blue(value: number);
15
+ private _brightness;
16
+ get brightness(): number;
17
+ set brightness(value: number);
18
+ private _contrast;
19
+ get contrast(): number;
20
+ set contrast(value: number);
21
+ private blurFilter;
22
+ private _blur;
23
+ get blur(): Vector | undefined;
24
+ set blur(value: Vector | number | undefined);
25
+ constructor(container: PIXI.Container);
26
+ removeColorFilter(): void;
27
+ private refreshColorMatrix;
28
+ private onFilterChange;
29
29
  }