bard-legends-framework 0.8.12 → 0.8.14

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 (47) hide show
  1. package/dist/pixi/components/scroll-area.ui.d.ts +0 -2
  2. package/dist/pixi/components/scroll-area.ui.js +1 -12
  3. package/dist/pixi/components/scroll-area.ui.js.map +1 -1
  4. package/dist/pixi/components/scroll-mask.ui.d.ts +2 -1
  5. package/dist/pixi/components/scroll-mask.ui.js +30 -26
  6. package/dist/pixi/components/scroll-mask.ui.js.map +1 -1
  7. package/dist/pixi/display-object/container-attributes.js +4 -2
  8. package/dist/pixi/display-object/container-attributes.js.map +1 -1
  9. package/dist/pixi/display-object/container.d.ts +2 -9
  10. package/dist/pixi/display-object/container.js +1 -57
  11. package/dist/pixi/display-object/container.js.map +1 -1
  12. package/dist/pixi/display-object/filters.d.ts +29 -0
  13. package/dist/pixi/display-object/filters.js +135 -0
  14. package/dist/pixi/display-object/filters.js.map +1 -0
  15. package/dist/pixi/display-object/index.d.ts +3 -2
  16. package/dist/pixi/display-object/index.js +2 -2
  17. package/dist/pixi/display-object/index.js.map +1 -1
  18. package/dist/pixi/display-object/objects/graphics/graphics.d.ts +33 -0
  19. package/dist/pixi/display-object/objects/graphics/graphics.js +199 -0
  20. package/dist/pixi/display-object/objects/graphics/graphics.js.map +1 -0
  21. package/dist/pixi/display-object/objects/graphics/helpers/dashed-line.helper.d.ts +16 -0
  22. package/dist/pixi/display-object/objects/graphics/helpers/dashed-line.helper.js +41 -0
  23. package/dist/pixi/display-object/objects/graphics/helpers/dashed-line.helper.js.map +1 -0
  24. package/dist/pixi/display-object/objects/graphics.d.ts +4 -2
  25. package/dist/pixi/display-object/objects/graphics.js +22 -13
  26. package/dist/pixi/display-object/objects/graphics.js.map +1 -1
  27. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.d.ts +2 -1
  28. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js +25 -15
  29. package/dist/pixi/display-object/objects/helpers/glow-sprite-generator.js.map +1 -1
  30. package/dist/pixi/display-object/objects/sprite/glow-sprite-generator.d.ts +11 -0
  31. package/dist/pixi/display-object/objects/sprite/glow-sprite-generator.js +110 -0
  32. package/dist/pixi/display-object/objects/sprite/glow-sprite-generator.js.map +1 -0
  33. package/dist/pixi/display-object/objects/sprite/sprite.d.ts +51 -0
  34. package/dist/pixi/display-object/objects/sprite/sprite.js +258 -0
  35. package/dist/pixi/display-object/objects/sprite/sprite.js.map +1 -0
  36. package/dist/pixi/display-object/objects/sprite.d.ts +1 -1
  37. package/dist/pixi/display-object/objects/sprite.js +31 -10
  38. package/dist/pixi/display-object/objects/sprite.js.map +1 -1
  39. package/dist/pixi/index.d.ts +1 -0
  40. package/dist/utilities/libraries/animator/animating-content/slide-in-content.d.ts +0 -2
  41. package/dist/utilities/libraries/animator/animating-content/slide-in-content.js +2 -10
  42. package/dist/utilities/libraries/animator/animating-content/slide-in-content.js.map +1 -1
  43. package/dist/utilities/libraries/animator/state-animation/visit-disappear-state-animation.d.ts +5 -0
  44. package/dist/utilities/libraries/animator/state-animation/visit-disappear-state-animation.js +5 -0
  45. package/dist/utilities/libraries/animator/state-animation/visit-disappear-state-animation.js.map +1 -1
  46. package/package.json +1 -1
  47. package/package.json.bak +1 -1
@@ -0,0 +1,199 @@
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) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ 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");
33
+ const dashed_line_helper_1 = require("./helpers/dashed-line.helper");
34
+ class Graphics extends container_attributes_1.ContainerAttributes {
35
+ static { this.drawnTextureCache = new Map(); }
36
+ static createArrow(size, color) {
37
+ let pixiGraphics = new PIXI.Graphics();
38
+ let polygon = [
39
+ [
40
+ { x: 0, y: -size / 2 },
41
+ { x: (size * 3) / 8, y: -size / 8 },
42
+ { x: size / 4, y: 0 },
43
+ { x: 0, y: -size / 4 },
44
+ { x: -size / 4, y: 0 },
45
+ { x: (-size * 3) / 8, y: -size / 8 }
46
+ ],
47
+ [
48
+ { x: 0, y: -size / 4 },
49
+ { x: size / 8 - size / 30, y: -size / 8 - size / 30 },
50
+ { x: size / 8 - size / 30, y: (size * 7) / 16 },
51
+ { x: -size / 8 + size / 30, y: (size * 7) / 16 },
52
+ { x: -size / 8 + size / 30, y: -size / 8 - size / 30 }
53
+ ]
54
+ ];
55
+ pixiGraphics.beginFill(color);
56
+ polygon.forEach(vertices => {
57
+ pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
58
+ });
59
+ pixiGraphics.endFill();
60
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'arrow', size, color }));
61
+ }
62
+ static createDashedLine(from, to, partialOptions) {
63
+ let options = {
64
+ width: 2,
65
+ dashLength: 10,
66
+ dashGap: 4,
67
+ lineStartGap: 0,
68
+ lineEndGap: 0,
69
+ color: helpers_lib_1.ColorHelper.white,
70
+ ...partialOptions
71
+ };
72
+ let pixiGraphics = new PIXI.Graphics();
73
+ pixiGraphics.lineStyle(options.width, options.color);
74
+ let lines = dashed_line_helper_1.DashedLineHelper.getLines(from, to, options);
75
+ lines.forEach(line => {
76
+ pixiGraphics.moveTo(line.from.x, line.from.y).lineTo(line.to.x, line.to.y);
77
+ });
78
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'dashedLine', from, to, options }));
79
+ }
80
+ static createVector(from, to, color) {
81
+ let pixiGraphics = new PIXI.Graphics();
82
+ pixiGraphics.lineStyle(2, color);
83
+ pixiGraphics.moveTo(from.x, from.y);
84
+ pixiGraphics.lineTo(to.x, to.y);
85
+ pixiGraphics.lineStyle(1, color);
86
+ pixiGraphics.beginFill(helpers_lib_1.ColorHelper.white);
87
+ pixiGraphics.drawCircle(from.x, from.y, 3);
88
+ pixiGraphics.endFill();
89
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'line', start: from, end: to, color }));
90
+ }
91
+ static createRectangleBorders(size, borderSize, color) {
92
+ let pixiGraphics = new PIXI.Graphics();
93
+ pixiGraphics.beginFill(color);
94
+ pixiGraphics.drawRect(0, 0, size.x, borderSize);
95
+ pixiGraphics.drawRect(0, borderSize, borderSize, size.y - borderSize * 2);
96
+ pixiGraphics.drawRect(size.x - borderSize, borderSize, borderSize, size.y - borderSize * 2);
97
+ pixiGraphics.drawRect(0, size.y - borderSize, size.x, borderSize);
98
+ pixiGraphics.endFill();
99
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle-borders', size, borderSize, color }));
100
+ }
101
+ static createRectangle(size, color = helpers_lib_1.ColorHelper.white) {
102
+ let pixiGraphics = new PIXI.Graphics();
103
+ pixiGraphics.beginFill(color);
104
+ pixiGraphics.drawRect(0, 0, size.x, size.y);
105
+ pixiGraphics.endFill();
106
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'rectangle', size, color }));
107
+ }
108
+ static createCircle(radius, color) {
109
+ let pixiGraphics = new PIXI.Graphics();
110
+ pixiGraphics.beginFill(color);
111
+ pixiGraphics.drawCircle(0, 0, radius);
112
+ pixiGraphics.endFill();
113
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'circle', radius, color }));
114
+ }
115
+ static createElipse(size, color) {
116
+ let pixiGraphics = new PIXI.Graphics();
117
+ pixiGraphics.beginFill(color);
118
+ pixiGraphics.drawEllipse(0, 0, size.x, size.y);
119
+ pixiGraphics.endFill();
120
+ return new Graphics(pixiGraphics, JSON.stringify({ type: 'elipse', size, color }));
121
+ }
122
+ static createPolygon(polygon, color) {
123
+ let pixiGraphics = new PIXI.Graphics();
124
+ let cacheName = JSON.stringify({ type: 'polygon', polygon, color });
125
+ pixiGraphics.beginFill(color);
126
+ polygon.forEach(vertices => {
127
+ pixiGraphics.drawPolygon(vertices.map(vertex => new PIXI.Point(vertex.x, vertex.y)));
128
+ });
129
+ pixiGraphics.endFill();
130
+ return new Graphics(pixiGraphics, cacheName);
131
+ }
132
+ static createRegularPolygon(sides, radius, color) {
133
+ let polygon = new PIXI.Graphics();
134
+ let anglePerStep = new helpers_lib_1.Radian(helpers_lib_1.PI_360 / sides);
135
+ polygon.beginFill(color);
136
+ polygon.moveTo(radius, 0);
137
+ for (let i = 1; i <= sides; i++) {
138
+ let angle = anglePerStep.multiply(i);
139
+ let angleVector = angle.vector.normalize(radius);
140
+ let nextX = radius + angleVector.x;
141
+ let nextY = radius + angleVector.y;
142
+ polygon.lineTo(nextX, nextY);
143
+ }
144
+ polygon.endFill();
145
+ return new Graphics(polygon, JSON.stringify({ type: 'regular-polygon', sides, radius, color }));
146
+ }
147
+ constructor(pixiGraphics, cacheName) {
148
+ super();
149
+ this.pixiContainer.addChild(pixiGraphics);
150
+ this.pixiGraphics = pixiGraphics;
151
+ this.cacheName = cacheName;
152
+ }
153
+ destroySelf() {
154
+ super.destroySelf();
155
+ !this.pixiGraphics.destroyed && this.pixiGraphics.destroy();
156
+ }
157
+ toSprite(partialOptions) {
158
+ let options = {
159
+ cacheName: this.cacheName,
160
+ keepBounds: true,
161
+ cache: false,
162
+ ...partialOptions
163
+ };
164
+ let textureConversion = this.getTexture(options.cacheName, options.cache);
165
+ let spriteDefinition = {
166
+ id: textureConversion.assetId,
167
+ scale: 1,
168
+ size: textureConversion.bounds,
169
+ anchor: { x: 0, y: 0 },
170
+ boundingShapes: undefined,
171
+ destroyAssetOnDestroy: !options.cache
172
+ };
173
+ let sprite = new __1.Sprite(spriteDefinition, { texturePosition: textureConversion.bounds, ignoreAnchor: true });
174
+ this.skipAttachCheck();
175
+ this.destroy();
176
+ return sprite;
177
+ }
178
+ getTexture(cacheName, cache) {
179
+ if (cache) {
180
+ let textureOfGraphics = Graphics.drawnTextureCache.get(cacheName);
181
+ if (!textureOfGraphics) {
182
+ textureOfGraphics = this.createTextureFromGraphics();
183
+ Graphics.drawnTextureCache.set(cacheName, textureOfGraphics);
184
+ }
185
+ return textureOfGraphics;
186
+ }
187
+ else {
188
+ return this.createTextureFromGraphics();
189
+ }
190
+ }
191
+ createTextureFromGraphics() {
192
+ let texture = game_1.Game.instance.renderer.generateTexture(this.pixiGraphics);
193
+ texture.id = game_assets_1.GameAssets.insertAsset(texture);
194
+ let graphicsBounds = this.pixiGraphics.getBounds();
195
+ return { assetId: texture.id, bounds: new helpers_lib_1.Vector(graphicsBounds.x, graphicsBounds.y) };
196
+ }
197
+ }
198
+ exports.Graphics = Graphics;
199
+ //# sourceMappingURL=graphics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphics.js","sourceRoot":"","sources":["../../../../../src/pixi/display-object/objects/graphics/graphics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { RGBColor, Vector } from 'helpers-lib';
2
+ export interface CreateDashedLineOptions {
3
+ readonly color: RGBColor;
4
+ readonly width: number;
5
+ readonly dashLength: number;
6
+ readonly dashGap: number;
7
+ readonly lineStartGap: number;
8
+ readonly lineEndGap: number;
9
+ }
10
+ export interface Line {
11
+ readonly from: Vector;
12
+ readonly to: Vector;
13
+ }
14
+ export declare class DashedLineHelper {
15
+ static getLines(from: Vector, to: Vector, options: CreateDashedLineOptions): Line[];
16
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DashedLineHelper = void 0;
4
+ const helpers_lib_1 = require("helpers-lib");
5
+ class DashedLineHelper {
6
+ static getLines(from, to, options) {
7
+ let fromTo = helpers_lib_1.Vector.fromTo(from, to);
8
+ let direction = fromTo.normalize();
9
+ let availableSpace = fromTo.length - options.lineStartGap - options.lineEndGap;
10
+ let lines = [];
11
+ if (availableSpace <= 0) {
12
+ return lines;
13
+ }
14
+ let penPosition = from.add(direction.normalize(options.lineStartGap));
15
+ if (availableSpace <= options.dashGap + options.dashLength * 0.5) {
16
+ lines.push({ from: penPosition, to: penPosition.add(direction.normalize(availableSpace)) });
17
+ return lines;
18
+ }
19
+ let regularlySplitSpace = availableSpace - options.dashGap;
20
+ let iterationLength = options.dashLength + options.dashGap;
21
+ let regularDashCount = Math.floor(regularlySplitSpace / iterationLength);
22
+ let leftOverDistance = regularlySplitSpace - iterationLength * regularDashCount;
23
+ let startEndVector = direction.normalize(leftOverDistance / 2);
24
+ let gapVector = direction.normalize(options.dashGap);
25
+ lines.push({ from: penPosition, to: penPosition.add(startEndVector) });
26
+ penPosition = penPosition.add(startEndVector);
27
+ if (regularDashCount > 0) {
28
+ let dashVector = direction.normalize(options.dashLength);
29
+ helpers_lib_1.ArrayHelper.createEmptyArray(regularDashCount).forEach(() => {
30
+ penPosition = penPosition.add(gapVector);
31
+ lines.push({ from: penPosition, to: penPosition.add(dashVector) });
32
+ penPosition = penPosition.add(dashVector);
33
+ });
34
+ }
35
+ penPosition = penPosition.add(gapVector);
36
+ lines.push({ from: penPosition, to: penPosition.add(startEndVector) });
37
+ return lines;
38
+ }
39
+ }
40
+ exports.DashedLineHelper = DashedLineHelper;
41
+ //# sourceMappingURL=dashed-line.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashed-line.helper.js","sourceRoot":"","sources":["../../../../../../src/pixi/display-object/objects/graphics/helpers/dashed-line.helper.ts"],"names":[],"mappings":";;;AAAA,6CAA4D;AAgB5D,MAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,IAAY,EAAE,EAAU,EAAE,OAAgC;QACxE,IAAI,MAAM,GAAG,oBAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QACnC,IAAI,cAAc,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;QAE/E,IAAI,KAAK,GAAW,EAAE,CAAC;QACvB,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QAEtE,IAAI,cAAc,IAAI,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;YACjE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5F,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,mBAAmB,GAAG,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;QAC3D,IAAI,eAAe,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;QAC3D,IAAI,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,eAAe,CAAC,CAAC;QACzE,IAAI,gBAAgB,GAAG,mBAAmB,GAAG,eAAe,GAAG,gBAAgB,CAAC;QAEhF,IAAI,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAErD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACvE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAE9C,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAEzD,yBAAW,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC1D,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACzC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBACnE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;QACL,CAAC;QAED,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAEvE,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA5CD,4CA4CC"}
@@ -3,10 +3,11 @@ import * as PIXI from 'pixi.js';
3
3
  import { PolygonDefinition, Sprite } from '../..';
4
4
  import { ContainerAttributes } from '../container-attributes';
5
5
  export interface TextureOfGraphics {
6
- readonly texture: PIXI.Texture;
6
+ readonly assetId: string;
7
7
  readonly bounds: Vector;
8
8
  }
9
9
  export interface ToSpriteOptions {
10
+ readonly cache: boolean;
10
11
  readonly cacheName: string;
11
12
  readonly keepBounds: boolean;
12
13
  }
@@ -34,5 +35,6 @@ export declare class Graphics extends ContainerAttributes {
34
35
  protected constructor(pixiGraphics: PIXI.Graphics, cacheName: string);
35
36
  protected destroySelf(): void;
36
37
  toSprite(partialOptions?: Partial<ToSpriteOptions>): Sprite;
37
- private convertGraphicsToTexture;
38
+ private getTexture;
39
+ private createTextureFromGraphics;
38
40
  }
@@ -172,32 +172,41 @@ class Graphics extends container_attributes_1.ContainerAttributes {
172
172
  let options = {
173
173
  cacheName: this.cacheName,
174
174
  keepBounds: true,
175
+ cache: false,
175
176
  ...partialOptions
176
177
  };
177
- let textureConversion = this.convertGraphicsToTexture(options.cacheName);
178
- let assetId = game_assets_1.GameAssets.insertAsset(textureConversion.texture);
178
+ let textureConversion = this.getTexture(options.cacheName, options.cache);
179
179
  let spriteDefinition = {
180
- id: assetId,
180
+ id: textureConversion.assetId,
181
181
  scale: 1,
182
182
  size: textureConversion.bounds,
183
183
  anchor: { x: 0, y: 0 },
184
- boundingShapes: undefined
184
+ boundingShapes: undefined,
185
+ destroyAssetOnDestroy: !options.cache
185
186
  };
186
187
  let sprite = new __1.Sprite(spriteDefinition, { texturePosition: textureConversion.bounds, ignoreAnchor: true });
187
188
  this.skipAttachCheck();
188
189
  this.destroy();
189
190
  return sprite;
190
191
  }
191
- convertGraphicsToTexture(cacheName) {
192
- let textureOfGraphics = Graphics.drawnTextureCache.get(cacheName);
193
- if (!textureOfGraphics) {
194
- let texture = game_1.Game.instance.renderer.generateTexture(this.pixiGraphics);
195
- texture.id = cacheName;
196
- let graphicsBounds = this.pixiGraphics.getBounds();
197
- textureOfGraphics = { texture, bounds: new helpers_lib_1.Vector(graphicsBounds.x, graphicsBounds.y) };
198
- Graphics.drawnTextureCache.set(cacheName, textureOfGraphics);
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();
199
203
  }
200
- return textureOfGraphics;
204
+ }
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) };
201
210
  }
202
211
  }
203
212
  exports.Graphics = Graphics;
@@ -1 +1 @@
1
- {"version":3,"file":"graphics.js","sourceRoot":"","sources":["../../../../src/pixi/display-object/objects/graphics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphics.js","sourceRoot":"","sources":["../../../../src/pixi/display-object/objects/graphics.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@ import * as PIXI from 'pixi.js';
2
2
  import { GlowEffectOptions } from '../../..';
3
3
  export declare class GlowSpriteGenerator {
4
4
  private static glowTextureCache;
5
- static createGlowSpriteFromSprite(pixiSprite: PIXI.Sprite, partialOptions: GlowEffectOptions): PIXI.Sprite;
5
+ static createGlowSpriteFromSprite(pixiSprite: PIXI.Sprite, partialOptions: GlowEffectOptions, cache: boolean): PIXI.Sprite;
6
6
  private static getGlowTexture;
7
+ private static getGlowTextureFromSprite;
7
8
  private static setEquavelentAnchorByExtendedBounds;
8
9
  private static extendBounds;
9
10
  private static completeOptions;
@@ -24,44 +24,54 @@ var __importStar = (this && this.__importStar) || function (mod) {
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.GlowSpriteGenerator = void 0;
27
- const PIXI = __importStar(require("pixi.js"));
28
27
  const helpers_lib_1 = require("helpers-lib");
28
+ const PIXI = __importStar(require("pixi.js"));
29
29
  const __1 = require("../../..");
30
30
  const update_cycle_1 = require("../../../../game-entities/update-cycle");
31
+ const game_assets_1 = require("../../../helpers/game-assets");
31
32
  const glow_filter_1 = require("../../filters/composite-filters/glow-filter");
32
33
  class GlowSpriteGenerator {
33
34
  static { this.glowTextureCache = new Map(); }
34
- static createGlowSpriteFromSprite(pixiSprite, partialOptions) {
35
+ static createGlowSpriteFromSprite(pixiSprite, partialOptions, cache) {
35
36
  let options = this.completeOptions(partialOptions);
36
37
  let blurRadiusVector = helpers_lib_1.Comparator.isNumber(options.blurRadius)
37
38
  ? new helpers_lib_1.Vector(options.blurRadius, options.blurRadius)
38
39
  : options.blurRadius;
39
- let glowBaseTexture = this.getGlowTexture(pixiSprite.texture, blurRadiusVector, options.expand, options.color);
40
+ let glowBaseTexture = this.getGlowTexture(pixiSprite.texture, blurRadiusVector, options.expand, options.color, cache);
40
41
  let glowSprite = new PIXI.Sprite(glowBaseTexture);
41
42
  this.setEquavelentAnchorByExtendedBounds(glowSprite, helpers_lib_1.Vector.fromVec2(pixiSprite.anchor), Math.max(blurRadiusVector.x, blurRadiusVector.y) + options.expand);
42
43
  glowSprite.alpha = options.glowAlpha;
43
44
  glowSprite.blendMode = options.blendMode;
44
45
  return glowSprite;
45
46
  }
46
- static getGlowTexture(baseTexture, blurRadius, expand, color) {
47
+ static getGlowTexture(baseTexture, blurRadius, expand, color, cache) {
47
48
  if (!baseTexture.id) {
48
49
  throw new Error('GlowSpriteGenerator: baseTexture should have an id');
49
50
  }
50
- let cacheName = `${baseTexture.id}-${expand}-${blurRadius.x}-${blurRadius.y}-${color.r}-${color.g}-${color.b}`;
51
- if (GlowSpriteGenerator.glowTextureCache.has(cacheName)) {
52
- return GlowSpriteGenerator.glowTextureCache.get(cacheName);
51
+ if (cache) {
52
+ let cacheName = `${baseTexture.id}-${expand}-${blurRadius.x}-${blurRadius.y}-${color.r}-${color.g}-${color.b}`;
53
+ if (GlowSpriteGenerator.glowTextureCache.has(cacheName)) {
54
+ return GlowSpriteGenerator.glowTextureCache.get(cacheName);
55
+ }
56
+ else {
57
+ let texture = this.getGlowTextureFromSprite(baseTexture, blurRadius, expand, color);
58
+ GlowSpriteGenerator.glowTextureCache.set(cacheName, texture);
59
+ return texture;
60
+ }
53
61
  }
54
62
  else {
55
- let glowBaseSprite = new PIXI.Sprite(baseTexture);
56
- this.extendBounds(glowBaseSprite, Math.max(blurRadius.x, blurRadius.y) + expand);
57
- glowBaseSprite.filters = [new glow_filter_1.GlowFilter({ blurRadius, expand, color })];
58
- let texture = __1.Game.instance.renderer.generateTexture(glowBaseSprite);
59
- texture.id = cacheName;
60
- glowBaseSprite.destroy();
61
- GlowSpriteGenerator.glowTextureCache.set(cacheName, texture);
62
- return texture;
63
+ return this.getGlowTextureFromSprite(baseTexture, blurRadius, expand, color);
63
64
  }
64
65
  }
66
+ static getGlowTextureFromSprite(baseTexture, blurRadius, expand, color) {
67
+ let glowBaseSprite = new PIXI.Sprite(baseTexture);
68
+ this.extendBounds(glowBaseSprite, Math.max(blurRadius.x, blurRadius.y) + expand);
69
+ glowBaseSprite.filters = [new glow_filter_1.GlowFilter({ blurRadius, expand, color })];
70
+ let texture = __1.Game.instance.renderer.generateTexture(glowBaseSprite);
71
+ texture.id = game_assets_1.GameAssets.insertAsset(texture);
72
+ glowBaseSprite.destroy();
73
+ return texture;
74
+ }
65
75
  static setEquavelentAnchorByExtendedBounds(sprite, anchor, amount) {
66
76
  let x = (amount + (sprite.width - amount * 2) * anchor.x) / sprite.width;
67
77
  let y = (amount + (sprite.height - amount * 2) * anchor.y) / sprite.height;
@@ -1 +1 @@
1
- {"version":3,"file":"glow-sprite-generator.js","sourceRoot":"","sources":["../../../../../src/pixi/display-object/objects/helpers/glow-sprite-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"glow-sprite-generator.js","sourceRoot":"","sources":["../../../../../src/pixi/display-object/objects/helpers/glow-sprite-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import * as PIXI from 'pixi.js';
2
+ import { GlowEffectOptions } from '../../..';
3
+ export declare class GlowSpriteGenerator {
4
+ private static glowTextureCache;
5
+ static createGlowSpriteFromSprite(pixiSprite: PIXI.Sprite, partialOptions: GlowEffectOptions, cache: boolean): PIXI.Sprite;
6
+ private static getGlowTexture;
7
+ private static getGlowTextureFromSprite;
8
+ private static setEquavelentAnchorByExtendedBounds;
9
+ private static extendBounds;
10
+ private static completeOptions;
11
+ }
@@ -0,0 +1,110 @@
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) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.GlowSpriteGenerator = void 0;
27
+ const helpers_lib_1 = require("helpers-lib");
28
+ const PIXI = __importStar(require("pixi.js"));
29
+ const __1 = require("../../..");
30
+ const update_cycle_1 = require("../../../../game-entities/update-cycle");
31
+ const game_assets_1 = require("../../../helpers/game-assets");
32
+ const glow_filter_1 = require("../../filters/composite-filters/glow-filter");
33
+ class GlowSpriteGenerator {
34
+ static { this.glowTextureCache = new Map(); }
35
+ static createGlowSpriteFromSprite(pixiSprite, partialOptions, cache) {
36
+ let options = this.completeOptions(partialOptions);
37
+ let blurRadiusVector = helpers_lib_1.Comparator.isNumber(options.blurRadius)
38
+ ? new helpers_lib_1.Vector(options.blurRadius, options.blurRadius)
39
+ : options.blurRadius;
40
+ let glowBaseTexture = this.getGlowTexture(pixiSprite.texture, blurRadiusVector, options.expand, options.color, cache);
41
+ let glowSprite = new PIXI.Sprite(glowBaseTexture);
42
+ this.setEquavelentAnchorByExtendedBounds(glowSprite, helpers_lib_1.Vector.fromVec2(pixiSprite.anchor), Math.max(blurRadiusVector.x, blurRadiusVector.y) + options.expand);
43
+ glowSprite.alpha = options.glowAlpha;
44
+ glowSprite.blendMode = options.blendMode;
45
+ return glowSprite;
46
+ }
47
+ static getGlowTexture(baseTexture, blurRadius, expand, color, cache) {
48
+ if (!baseTexture.id) {
49
+ throw new Error('GlowSpriteGenerator: baseTexture should have an id');
50
+ }
51
+ if (cache) {
52
+ let cacheName = `${baseTexture.id}-${expand}-${blurRadius.x}-${blurRadius.y}-${color.r}-${color.g}-${color.b}`;
53
+ if (GlowSpriteGenerator.glowTextureCache.has(cacheName)) {
54
+ return GlowSpriteGenerator.glowTextureCache.get(cacheName);
55
+ }
56
+ else {
57
+ let texture = this.getGlowTextureFromSprite(baseTexture, blurRadius, expand, color);
58
+ GlowSpriteGenerator.glowTextureCache.set(cacheName, texture);
59
+ return texture;
60
+ }
61
+ }
62
+ else {
63
+ return this.getGlowTextureFromSprite(baseTexture, blurRadius, expand, color);
64
+ }
65
+ }
66
+ static getGlowTextureFromSprite(baseTexture, blurRadius, expand, color) {
67
+ let glowBaseSprite = new PIXI.Sprite(baseTexture);
68
+ this.extendBounds(glowBaseSprite, Math.max(blurRadius.x, blurRadius.y) + expand);
69
+ glowBaseSprite.filters = [new glow_filter_1.GlowFilter({ blurRadius, expand, color })];
70
+ let texture = __1.Game.instance.renderer.generateTexture(glowBaseSprite);
71
+ texture.id = game_assets_1.GameAssets.insertAsset(texture);
72
+ glowBaseSprite.destroy();
73
+ return texture;
74
+ }
75
+ static setEquavelentAnchorByExtendedBounds(sprite, anchor, amount) {
76
+ let x = (amount + (sprite.width - amount * 2) * anchor.x) / sprite.width;
77
+ let y = (amount + (sprite.height - amount * 2) * anchor.y) / sprite.height;
78
+ sprite.anchor.set(x, y);
79
+ }
80
+ static extendBounds(container, amount) {
81
+ if (container.isSprite) {
82
+ let graphics = new PIXI.Graphics();
83
+ container.addChild(graphics);
84
+ }
85
+ let width = container.width;
86
+ let height = container.height;
87
+ container.calculateBounds = function () {
88
+ this._bounds.clear();
89
+ this._bounds.addFrame(this.transform, -amount, -amount, width + amount, height + amount);
90
+ };
91
+ }
92
+ static completeOptions(partialOptions) {
93
+ let options = {
94
+ glowAlpha: 1,
95
+ blurRadius: 5,
96
+ expand: 0,
97
+ color: helpers_lib_1.ColorHelper.white,
98
+ blendMode: __1.BlendMode.add
99
+ };
100
+ if (partialOptions) {
101
+ options = { ...options, ...partialOptions };
102
+ }
103
+ return options;
104
+ }
105
+ }
106
+ exports.GlowSpriteGenerator = GlowSpriteGenerator;
107
+ update_cycle_1.UpdateCycle.hardResetAction.subscribe(() => {
108
+ GlowSpriteGenerator['glowTextureCache'].clear();
109
+ });
110
+ //# sourceMappingURL=glow-sprite-generator.js.map