bard-legends-framework 0.0.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.
- package/.eslintrc.js +192 -0
- package/.vscode/settings.json +4 -0
- package/coverage/clover.xml +539 -0
- package/coverage/coverage-final.json +12 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/game-entities/controller.ts.html +235 -0
- package/coverage/lcov-report/game-entities/entity-base.ts.html +202 -0
- package/coverage/lcov-report/game-entities/entity.ts.html +526 -0
- package/coverage/lcov-report/game-entities/index.html +191 -0
- package/coverage/lcov-report/game-entities/service.ts.html +379 -0
- package/coverage/lcov-report/game-entities/store.ts.html +391 -0
- package/coverage/lcov-report/game-entities/view.ts.html +154 -0
- package/coverage/lcov-report/helpers/animator/animator.ts.html +658 -0
- package/coverage/lcov-report/helpers/animator/index.html +116 -0
- package/coverage/lcov-report/helpers/auto-destroy/auto-destroy.ts.html +184 -0
- package/coverage/lcov-report/helpers/auto-destroy/index.html +116 -0
- package/coverage/lcov-report/helpers/index.html +116 -0
- package/coverage/lcov-report/helpers/update-loop.ts.html +127 -0
- package/coverage/lcov-report/helpers/view-array/index.html +116 -0
- package/coverage/lcov-report/helpers/view-array/view-array.ts.html +388 -0
- package/coverage/lcov-report/index.html +191 -0
- package/coverage/lcov-report/lib/vector/index.html +116 -0
- package/coverage/lcov-report/lib/vector/vector.ts.html +484 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +196 -0
- package/coverage/lcov.info +1056 -0
- package/dist/_interfaces/index.d.ts +7 -0
- package/dist/_interfaces/index.js +3 -0
- package/dist/_interfaces/index.js.map +1 -0
- package/dist/app.d.ts +21 -0
- package/dist/app.js +54 -0
- package/dist/app.js.map +1 -0
- package/dist/game-assets/container/container.d.ts +26 -0
- package/dist/game-assets/container/container.js +94 -0
- package/dist/game-assets/container/container.js.map +1 -0
- package/dist/game-assets/display-object/container.d.ts +59 -0
- package/dist/game-assets/display-object/container.js +219 -0
- package/dist/game-assets/display-object/container.js.map +1 -0
- package/dist/game-assets/display-object/container.spec.js.map +1 -0
- package/dist/game-assets/display-object/display-object.d.ts +56 -0
- package/dist/game-assets/display-object/display-object.js +214 -0
- package/dist/game-assets/display-object/display-object.js.map +1 -0
- package/dist/game-assets/display-object/display-object.spec.js.map +1 -0
- package/dist/game-assets/display-object/interfaces.d.ts +23 -0
- package/dist/game-assets/display-object/interfaces.js +3 -0
- package/dist/game-assets/display-object/interfaces.js.map +1 -0
- package/dist/game-assets/display-object/objects/container.d.ts +9 -0
- package/dist/game-assets/display-object/objects/container.js +41 -0
- package/dist/game-assets/display-object/objects/container.js.map +1 -0
- package/dist/game-assets/display-object/objects/graphics.d.ts +23 -0
- package/dist/game-assets/display-object/objects/graphics.js +117 -0
- package/dist/game-assets/display-object/objects/graphics.js.map +1 -0
- package/dist/game-assets/display-object/objects/image.d.ts +29 -0
- package/dist/game-assets/display-object/objects/image.js +130 -0
- package/dist/game-assets/display-object/objects/image.js.map +1 -0
- package/dist/game-assets/display-object/objects/sprite.d.ts +34 -0
- package/dist/game-assets/display-object/objects/sprite.js +87 -0
- package/dist/game-assets/display-object/objects/sprite.js.map +1 -0
- package/dist/game-assets/display-object/premade-display-objects/image-with-glowing-shapes.d.ts +19 -0
- package/dist/game-assets/display-object/premade-display-objects/image-with-glowing-shapes.js +94 -0
- package/dist/game-assets/display-object/premade-display-objects/image-with-glowing-shapes.js.map +1 -0
- package/dist/game-assets/filters/filters.d.ts +38 -0
- package/dist/game-assets/filters/filters.js +162 -0
- package/dist/game-assets/filters/filters.js.map +1 -0
- package/dist/game-assets/filters/glow-filter.d.ts +11 -0
- package/dist/game-assets/filters/glow-filter.js +33 -0
- package/dist/game-assets/filters/glow-filter.js.map +1 -0
- package/dist/game-assets/filters/shaders.d.ts +8 -0
- package/dist/game-assets/filters/shaders.js +82 -0
- package/dist/game-assets/filters/shaders.js.map +1 -0
- package/dist/game-assets/game-assets.d.ts +14 -0
- package/dist/game-assets/game-assets.js +92 -0
- package/dist/game-assets/game-assets.js.map +1 -0
- package/dist/game-assets/graphics/graphics.d.ts +26 -0
- package/dist/game-assets/graphics/graphics.js +104 -0
- package/dist/game-assets/graphics/graphics.js.map +1 -0
- package/dist/game-assets/helpers/glow.helper.d.ts +1 -0
- package/dist/game-assets/helpers/glow.helper.js +77 -0
- package/dist/game-assets/helpers/glow.helper.js.map +1 -0
- package/dist/game-assets/image/image-creator.d.ts +23 -0
- package/dist/game-assets/image/image-creator.js +96 -0
- package/dist/game-assets/image/image-creator.js.map +1 -0
- package/dist/game-assets/image/image.d.ts +34 -0
- package/dist/game-assets/image/image.js +139 -0
- package/dist/game-assets/image/image.js.map +1 -0
- package/dist/game-assets/image-data.helper.d.ts +16 -0
- package/dist/game-assets/image-data.helper.js +53 -0
- package/dist/game-assets/image-data.helper.js.map +1 -0
- package/dist/game-assets/index.d.ts +8 -0
- package/dist/game-assets/index.js +34 -0
- package/dist/game-assets/index.js.map +1 -0
- package/dist/game-assets/pixel-perfect-interaction.d.ts +2 -0
- package/dist/game-assets/pixel-perfect-interaction.js +111 -0
- package/dist/game-assets/pixel-perfect-interaction.js.map +1 -0
- package/dist/game-entities/attachable/attachable.d.ts +24 -0
- package/dist/game-entities/attachable/attachable.js +80 -0
- package/dist/game-entities/attachable/attachable.js.map +1 -0
- package/dist/game-entities/attachable/attachable.spec.js.map +1 -0
- package/dist/game-entities/controller/controller.d.ts +10 -0
- package/dist/game-entities/controller/controller.js +53 -0
- package/dist/game-entities/controller/controller.js.map +1 -0
- package/dist/game-entities/controller/controller.spec.js.map +1 -0
- package/dist/game-entities/controller.d.ts +10 -0
- package/dist/game-entities/controller.js +53 -0
- package/dist/game-entities/controller.js.map +1 -0
- package/dist/game-entities/entity/entity.d.ts +20 -0
- package/dist/game-entities/entity/entity.js +98 -0
- package/dist/game-entities/entity/entity.js.map +1 -0
- package/dist/game-entities/entity/entity.spec.js.map +1 -0
- package/dist/game-entities/entity/helpers/entity-store.helper.d.ts +15 -0
- package/dist/game-entities/entity/helpers/entity-store.helper.js +97 -0
- package/dist/game-entities/entity/helpers/entity-store.helper.js.map +1 -0
- package/dist/game-entities/entity/helpers/view-creation.helper.d.ts +11 -0
- package/dist/game-entities/entity/helpers/view-creation.helper.js +56 -0
- package/dist/game-entities/entity/helpers/view-creation.helper.js.map +1 -0
- package/dist/game-entities/entity-base/entity-base.d.ts +10 -0
- package/dist/game-entities/entity-base/entity-base.js +38 -0
- package/dist/game-entities/entity-base/entity-base.js.map +1 -0
- package/dist/game-entities/entity-base/entity-base.spec.js.map +1 -0
- package/dist/game-entities/entity-base.d.ts +12 -0
- package/dist/game-entities/entity-base.js +55 -0
- package/dist/game-entities/entity-base.js.map +1 -0
- package/dist/game-entities/entity.d.ts +22 -0
- package/dist/game-entities/entity.js +126 -0
- package/dist/game-entities/entity.js.map +1 -0
- package/dist/game-entities/index.d.ts +5 -0
- package/dist/game-entities/index.js +19 -0
- package/dist/game-entities/index.js.map +1 -0
- package/dist/game-entities/scene/scene.d.ts +17 -0
- package/dist/game-entities/scene/scene.js +100 -0
- package/dist/game-entities/scene/scene.js.map +1 -0
- package/dist/game-entities/scene/scene.spec.js.map +1 -0
- package/dist/game-entities/service/service.d.ts +9 -0
- package/dist/game-entities/service/service.js +62 -0
- package/dist/game-entities/service/service.js.map +1 -0
- package/dist/game-entities/service/service.spec.js.map +1 -0
- package/dist/game-entities/service.d.ts +10 -0
- package/dist/game-entities/service.js +93 -0
- package/dist/game-entities/service.js.map +1 -0
- package/dist/game-entities/store/store.d.ts +19 -0
- package/dist/game-entities/store/store.js +131 -0
- package/dist/game-entities/store/store.js.map +1 -0
- package/dist/game-entities/store/store.spec.js.map +1 -0
- package/dist/game-entities/store.d.ts +18 -0
- package/dist/game-entities/store.js +121 -0
- package/dist/game-entities/store.js.map +1 -0
- package/dist/game-entities/tests/controller.spec.js.map +1 -0
- package/dist/game-entities/tests/entity-base.spec.js.map +1 -0
- package/dist/game-entities/tests/entity.spec.js.map +1 -0
- package/dist/game-entities/tests/service.spec.js.map +1 -0
- package/dist/game-entities/tests/store.spec.js.map +1 -0
- package/dist/game-entities/tests/view.spec.js.map +1 -0
- package/dist/game-entities/view/view.d.ts +20 -0
- package/dist/game-entities/view/view.js +82 -0
- package/dist/game-entities/view/view.js.map +1 -0
- package/dist/game-entities/view/view.spec.js.map +1 -0
- package/dist/game-entities/view.d.ts +9 -0
- package/dist/game-entities/view.js +20 -0
- package/dist/game-entities/view.js.map +1 -0
- package/dist/helpers/animator/animator.d.ts +35 -0
- package/dist/helpers/animator/animator.js +158 -0
- package/dist/helpers/animator/animator.js.map +1 -0
- package/dist/helpers/animator/animator.spec.js.map +1 -0
- package/dist/helpers/auto-destroy/auto-destroy.d.ts +5 -0
- package/dist/helpers/auto-destroy/auto-destroy.js +38 -0
- package/dist/helpers/auto-destroy/auto-destroy.js.map +1 -0
- package/dist/helpers/auto-destroy/auto-destroy.spec.js.map +1 -0
- package/dist/helpers/update-loop.d.ts +7 -0
- package/dist/helpers/update-loop.js +16 -0
- package/dist/helpers/update-loop.js.map +1 -0
- package/dist/helpers/vertice/vertice.helper.d.ts +4 -0
- package/dist/helpers/vertice/vertice.helper.js +23 -0
- package/dist/helpers/vertice/vertice.helper.js.map +1 -0
- package/dist/helpers/view-array/view-array.d.ts +28 -0
- package/dist/helpers/view-array/view-array.js +117 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/animator/animations.d.ts +25 -0
- package/dist/lib/animator/animations.js +58 -0
- package/dist/lib/animator/animations.js.map +1 -0
- package/dist/lib/animator/animator.d.ts +52 -0
- package/dist/lib/animator/animator.js +220 -0
- package/dist/lib/animator/animator.js.map +1 -0
- package/dist/lib/animator/animator.spec.js.map +1 -0
- package/dist/lib/animator/index.d.ts +2 -0
- package/dist/lib/animator/index.js +19 -0
- package/dist/lib/animator/index.js.map +1 -0
- package/dist/lib/common/common-lib.d.ts +6 -0
- package/dist/lib/common/common-lib.js +40 -0
- package/dist/lib/common/common-lib.js.map +1 -0
- package/dist/lib/path-finder/path-finder.d.ts +5 -0
- package/dist/lib/path-finder/path-finder.js +24 -0
- package/dist/lib/path-finder/path-finder.js.map +1 -0
- package/dist/lib/update-loop.d.ts +13 -0
- package/dist/lib/update-loop.js +34 -0
- package/dist/lib/update-loop.js.map +1 -0
- package/dist/lib/vector/vector-coordinate-convertion.spec.js.map +1 -0
- package/dist/lib/vector/vector-radian.spec.js.map +1 -0
- package/dist/lib/vector/vector.d.ts +28 -0
- package/dist/lib/vector/vector.js +114 -0
- package/dist/lib/vector/vector.js.map +1 -0
- package/dist/lib/vector/vector.spec.js.map +1 -0
- package/dist/services/keyboard/keyboard.d.ts +7 -0
- package/dist/services/keyboard/keyboard.js +36 -0
- package/dist/services/keyboard/keyboard.js.map +1 -0
- package/dist/services/mouse/mouse.d.ts +12 -0
- package/dist/services/mouse/mouse.js +57 -0
- package/dist/services/mouse/mouse.js.map +1 -0
- package/dist/services/mouse/mouse.service.d.ts +12 -0
- package/dist/services/mouse/mouse.service.js +56 -0
- package/dist/services/mouse/mouse.service.js.map +1 -0
- package/dist/services/mouse/mouser-target-focus.service.d.ts +16 -0
- package/dist/services/mouse/mouser-target-focus.service.js +89 -0
- package/dist/services/mouse/mouser-target-focus.service.js.map +1 -0
- package/dist/services/sound/sound.d.ts +3 -0
- package/dist/services/sound/sound.js +22 -0
- package/dist/services/sound/sound.js.map +1 -0
- package/package.json +71 -0
- package/tsconfig.json +24 -0
|
@@ -0,0 +1,92 @@
|
|
|
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.GameAssets = void 0;
|
|
27
|
+
const PIXI = __importStar(require("pixi.js"));
|
|
28
|
+
const helpers_lib_1 = require("helpers-lib");
|
|
29
|
+
const pixel_perfect_interaction_1 = require("./pixel-perfect-interaction");
|
|
30
|
+
const image_data_helper_1 = require("./image-data.helper");
|
|
31
|
+
class GameAssetsClass {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.resources = new Map();
|
|
34
|
+
}
|
|
35
|
+
getAsset(name) {
|
|
36
|
+
let resource = this.resources.get(name);
|
|
37
|
+
if (resource) {
|
|
38
|
+
return resource;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
throw new Error(`Game Assets: Resource not found! Key: '${name}'`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
async loadGameAssets(assetDefinitions) {
|
|
45
|
+
let urlToNameGroup = new Map();
|
|
46
|
+
let assetsToLoad = [];
|
|
47
|
+
assetDefinitions.forEach(definition => {
|
|
48
|
+
if (!helpers_lib_1.Comparator.isString(definition.url)) {
|
|
49
|
+
throw new Error(`GameAssets: source url should be a string: ${definition.url}`);
|
|
50
|
+
}
|
|
51
|
+
let nameGroup = urlToNameGroup.get(definition.url);
|
|
52
|
+
if (nameGroup) {
|
|
53
|
+
nameGroup.push(definition.name);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
urlToNameGroup.set(definition.url, [definition.name]);
|
|
57
|
+
assetsToLoad.push({
|
|
58
|
+
url: definition.url,
|
|
59
|
+
callback: (asset) => {
|
|
60
|
+
if (definition.pixelPerfectInteraction) {
|
|
61
|
+
(0, pixel_perfect_interaction_1.SetPixelPerfectIteraction)(this.getAsset(definition.name).texture.source);
|
|
62
|
+
}
|
|
63
|
+
if (definition.pixelAccess) {
|
|
64
|
+
image_data_helper_1.ImageDataHelper.registerImage(definition.name, this.getAsset(definition.name).texture.source);
|
|
65
|
+
}
|
|
66
|
+
nameGroup = urlToNameGroup.get(definition.url);
|
|
67
|
+
if (nameGroup) {
|
|
68
|
+
nameGroup.forEach(name => {
|
|
69
|
+
this.resources.set(name, asset);
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
throw new Error(`GameAssets: unexpected error, nameGroup is not found! "./"! ${definition}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return Promise.all(assetsToLoad.map(asset => PIXI.Assets.load(asset.url)))
|
|
80
|
+
.then(resources => {
|
|
81
|
+
resources.forEach((resource, index) => {
|
|
82
|
+
let assetToLoad = assetsToLoad[index];
|
|
83
|
+
assetToLoad.callback(resource);
|
|
84
|
+
});
|
|
85
|
+
})
|
|
86
|
+
.catch(error => {
|
|
87
|
+
throw new Error(`GameAssets: during asset loading, an error occured: ${error}`);
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.GameAssets = new GameAssetsClass();
|
|
92
|
+
//# sourceMappingURL=game-assets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"game-assets.js","sourceRoot":"","sources":["../../src/game-assets/game-assets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Vec2 } from 'helpers-lib';
|
|
2
|
+
import * as PIXI from 'pixi.js';
|
|
3
|
+
import { CanBeParent, Destroyable } from '../../_interfaces';
|
|
4
|
+
import { EntityBase } from '../../game-entities/entity-base';
|
|
5
|
+
export declare class Graphics implements Destroyable, CanBeParent {
|
|
6
|
+
graphics: PIXI.Graphics;
|
|
7
|
+
static drawRectengle(from: Vec2, to: Vec2, borderSize: number, color: PIXI.ColorSource): Graphics;
|
|
8
|
+
private constructor();
|
|
9
|
+
get position(): Vec2;
|
|
10
|
+
set position(value: Vec2);
|
|
11
|
+
get rotation(): number;
|
|
12
|
+
set rotation(value: number);
|
|
13
|
+
get zIndex(): number;
|
|
14
|
+
set zIndex(value: number);
|
|
15
|
+
get sortableChildren(): boolean;
|
|
16
|
+
set sortableChildren(value: boolean);
|
|
17
|
+
setPosition(value: Vec2): Graphics;
|
|
18
|
+
setRotation(value: number): Graphics;
|
|
19
|
+
setZIndex(value: number): Graphics;
|
|
20
|
+
setSortableChildren(value: boolean): Graphics;
|
|
21
|
+
addChild(child: PIXI.DisplayObject): Graphics;
|
|
22
|
+
parent(target: CanBeParent): Graphics;
|
|
23
|
+
attach(parent: EntityBase): Graphics;
|
|
24
|
+
on(event: string, callback: (_: PIXI.FederatedMouseEvent) => void): Graphics;
|
|
25
|
+
destroy(): void;
|
|
26
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
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 PIXI = __importStar(require("pixi.js"));
|
|
28
|
+
class Graphics {
|
|
29
|
+
static drawRectengle(from, to, borderSize, color) {
|
|
30
|
+
let graphics = new PIXI.Graphics();
|
|
31
|
+
graphics.beginFill(color);
|
|
32
|
+
graphics.drawRect(from.x, from.y, to.x - from.x, borderSize);
|
|
33
|
+
graphics.drawRect(from.x, from.y, borderSize, to.y - from.y);
|
|
34
|
+
graphics.drawRect(to.x - borderSize, from.y + borderSize, borderSize, to.y - from.y - borderSize);
|
|
35
|
+
graphics.drawRect(from.x + borderSize, to.y - borderSize, to.x - from.x - borderSize, borderSize);
|
|
36
|
+
graphics.endFill();
|
|
37
|
+
return new Graphics(graphics);
|
|
38
|
+
}
|
|
39
|
+
constructor(graphics) {
|
|
40
|
+
this.graphics = graphics;
|
|
41
|
+
}
|
|
42
|
+
get position() {
|
|
43
|
+
return { x: this.graphics.x, y: this.graphics.y };
|
|
44
|
+
}
|
|
45
|
+
set position(value) {
|
|
46
|
+
this.graphics.position.set(value.x, value.y);
|
|
47
|
+
}
|
|
48
|
+
get rotation() {
|
|
49
|
+
return this.graphics.rotation;
|
|
50
|
+
}
|
|
51
|
+
set rotation(value) {
|
|
52
|
+
this.graphics.rotation = value;
|
|
53
|
+
}
|
|
54
|
+
get zIndex() {
|
|
55
|
+
return this.graphics.zIndex;
|
|
56
|
+
}
|
|
57
|
+
set zIndex(value) {
|
|
58
|
+
this.graphics.zIndex = value;
|
|
59
|
+
}
|
|
60
|
+
get sortableChildren() {
|
|
61
|
+
return this.graphics.sortableChildren;
|
|
62
|
+
}
|
|
63
|
+
set sortableChildren(value) {
|
|
64
|
+
this.graphics.sortableChildren = value;
|
|
65
|
+
}
|
|
66
|
+
setPosition(value) {
|
|
67
|
+
this.position = value;
|
|
68
|
+
return this;
|
|
69
|
+
}
|
|
70
|
+
setRotation(value) {
|
|
71
|
+
this.rotation = value;
|
|
72
|
+
return this;
|
|
73
|
+
}
|
|
74
|
+
setZIndex(value) {
|
|
75
|
+
this.zIndex = value;
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
setSortableChildren(value) {
|
|
79
|
+
this.sortableChildren = value;
|
|
80
|
+
return this;
|
|
81
|
+
}
|
|
82
|
+
addChild(child) {
|
|
83
|
+
this.graphics.addChild(child);
|
|
84
|
+
return this;
|
|
85
|
+
}
|
|
86
|
+
parent(target) {
|
|
87
|
+
target.addChild(this.graphics);
|
|
88
|
+
return this;
|
|
89
|
+
}
|
|
90
|
+
attach(parent) {
|
|
91
|
+
// @ts-ignore
|
|
92
|
+
parent.setAttachment(this);
|
|
93
|
+
return this;
|
|
94
|
+
}
|
|
95
|
+
on(event, callback) {
|
|
96
|
+
this.graphics.on(event, callback);
|
|
97
|
+
return this;
|
|
98
|
+
}
|
|
99
|
+
destroy() {
|
|
100
|
+
this.graphics.destroy();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
exports.Graphics = Graphics;
|
|
104
|
+
//# sourceMappingURL=graphics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphics.js","sourceRoot":"","sources":["../../../src/game-assets/graphics/graphics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/*
|
|
4
|
+
export class GlowHelper {
|
|
5
|
+
private static glowTextureCache = new Map<string, PIXI.Texture>();
|
|
6
|
+
private static getGlowTexture(baseTexture: PIXI.Texture, blurRadius: number): PIXI.Texture {
|
|
7
|
+
let cachedTextureId = baseTexture.textureCacheIds.find(cacheId => GlowHelper.glowTextureCache.has(cacheId));
|
|
8
|
+
if (cachedTextureId) {
|
|
9
|
+
return GlowHelper.glowTextureCache.get(cachedTextureId) as PIXI.Texture;
|
|
10
|
+
} else {
|
|
11
|
+
let glowBaseSprite = new PIXI.Sprite(baseTexture);
|
|
12
|
+
this.extendBounds(glowBaseSprite, blurRadius);
|
|
13
|
+
|
|
14
|
+
let blurFilter = new PIXI.BlurFilter(blurRadius);
|
|
15
|
+
glowBaseSprite.filters = [
|
|
16
|
+
new PIXI.Filter(undefined, Shaders.getReplaceColorFrag({ r: 1, g: 1, b: 1 })),
|
|
17
|
+
blurFilter,
|
|
18
|
+
new BloomFilter()
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
let glowBaseTexture = Game.instance['pixiApp'].renderer.generateTexture(glowBaseSprite);
|
|
22
|
+
glowBaseSprite.destroy();
|
|
23
|
+
|
|
24
|
+
baseTexture.textureCacheIds.forEach(cacheId => GlowHelper.glowTextureCache.set(cacheId, glowBaseTexture));
|
|
25
|
+
return glowBaseTexture;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
private static setEquavelentAnchorByExtendedBounds(sprite: PIXI.Sprite, anchor: Vec2, extend: number) {
|
|
30
|
+
let width = sprite.width;
|
|
31
|
+
let height = sprite.height;
|
|
32
|
+
|
|
33
|
+
let x = (extend + (width - extend * 2) * anchor.x) / width;
|
|
34
|
+
let y = (extend + (height - extend * 2) * anchor.y) / height;
|
|
35
|
+
|
|
36
|
+
sprite.anchor.set(x, y);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
private static extendBounds(container: PIXI.Container, amount: number) {
|
|
40
|
+
if (container.isSprite) {
|
|
41
|
+
let graphics = new PIXI.Graphics();
|
|
42
|
+
container.addChild(graphics);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
let width = container.width;
|
|
46
|
+
let height = container.height;
|
|
47
|
+
container.calculateBounds = function () {
|
|
48
|
+
this._bounds.clear();
|
|
49
|
+
this._bounds.addFrame(this.transform, -amount, -amount, width + amount, height + amount);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
static createGlowSprite(sprite: PIXI.Sprite, color: RGBColor, options: GlowOptions): PIXI.Sprite {
|
|
54
|
+
if (options.glowingPower === undefined) {
|
|
55
|
+
options.glowingPower = 0.5;
|
|
56
|
+
}
|
|
57
|
+
if (!options.blurRadius) {
|
|
58
|
+
options.blurRadius = 5;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
let glowBaseTexture = this.getGlowTexture(sprite.texture, options.blurRadius);
|
|
62
|
+
|
|
63
|
+
let glowSprite = new PIXI.Sprite(glowBaseTexture);
|
|
64
|
+
this.setEquavelentAnchorByExtendedBounds(glowSprite, sprite.anchor, options.blurRadius);
|
|
65
|
+
glowSprite.blendMode = options.blendMode === 'luminosity' ? PIXI.BLEND_MODES.LUMINOSITY : PIXI.BLEND_MODES.ADD;
|
|
66
|
+
glowSprite.alpha = options.glowingPower;
|
|
67
|
+
glowSprite.tint = color;
|
|
68
|
+
|
|
69
|
+
return glowSprite;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
UpdateCycle.hardResetAction.subscribe(() => {
|
|
74
|
+
GlowHelper['glowTextureCache'].clear();
|
|
75
|
+
});
|
|
76
|
+
*/
|
|
77
|
+
//# sourceMappingURL=glow.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glow.helper.js","sourceRoot":"","sources":["../../../src/game-assets/helpers/glow.helper.ts"],"names":[],"mappings":";;AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyEE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as PIXI from 'pixi.js';
|
|
2
|
+
import { Vec2 } from 'helpers-lib';
|
|
3
|
+
import { Image } from './image';
|
|
4
|
+
import { CanBeParent, FilterDefinition } from '../../_interfaces';
|
|
5
|
+
export declare class ImageCreator {
|
|
6
|
+
private sprite;
|
|
7
|
+
private image;
|
|
8
|
+
constructor(imageName: string);
|
|
9
|
+
parent(target: CanBeParent): ImageCreator;
|
|
10
|
+
position(pos: Vec2): ImageCreator;
|
|
11
|
+
rotation(value: number): ImageCreator;
|
|
12
|
+
zIndex(value: number): ImageCreator;
|
|
13
|
+
scale(value: number): ImageCreator;
|
|
14
|
+
alpha(value: number): ImageCreator;
|
|
15
|
+
anchor(pos: Vec2): ImageCreator;
|
|
16
|
+
mirror(mirror?: boolean): ImageCreator;
|
|
17
|
+
filter(filterDefinition?: FilterDefinition): ImageCreator;
|
|
18
|
+
interactive(): ImageCreator;
|
|
19
|
+
pointer(): ImageCreator;
|
|
20
|
+
on(event: string, callback: (_: PIXI.FederatedMouseEvent) => void): ImageCreator;
|
|
21
|
+
activateColorFilter(): ImageCreator;
|
|
22
|
+
getImage(): Image;
|
|
23
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
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.ImageCreator = void 0;
|
|
27
|
+
const PIXI = __importStar(require("pixi.js"));
|
|
28
|
+
const game_assets_1 = require("../game-assets");
|
|
29
|
+
const image_1 = require("./image");
|
|
30
|
+
class ImageCreator {
|
|
31
|
+
constructor(imageName) {
|
|
32
|
+
this.sprite = new PIXI.Sprite(game_assets_1.GameAssets.getAsset(imageName));
|
|
33
|
+
this.image = new image_1.Image(this.sprite);
|
|
34
|
+
}
|
|
35
|
+
parent(target) {
|
|
36
|
+
target.addChild(this.sprite);
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
position(pos) {
|
|
40
|
+
this.sprite.x = pos.x;
|
|
41
|
+
this.sprite.y = pos.y;
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
rotation(value) {
|
|
45
|
+
this.sprite.rotation = value;
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
zIndex(value) {
|
|
49
|
+
this.sprite.zIndex = value;
|
|
50
|
+
return this;
|
|
51
|
+
}
|
|
52
|
+
scale(value) {
|
|
53
|
+
this.sprite.scale = new PIXI.Point(value, value);
|
|
54
|
+
return this;
|
|
55
|
+
}
|
|
56
|
+
alpha(value) {
|
|
57
|
+
this.sprite.alpha = value;
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
anchor(pos) {
|
|
61
|
+
this.sprite.anchor.x = pos.x;
|
|
62
|
+
this.sprite.anchor.y = pos.y;
|
|
63
|
+
return this;
|
|
64
|
+
}
|
|
65
|
+
mirror(mirror = false) {
|
|
66
|
+
if (mirror) {
|
|
67
|
+
this.sprite.scale.x *= -1;
|
|
68
|
+
}
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
filter(filterDefinition) {
|
|
72
|
+
filterDefinition && this.image.addFilter(filterDefinition);
|
|
73
|
+
return this;
|
|
74
|
+
}
|
|
75
|
+
interactive() {
|
|
76
|
+
this.sprite.interactive = true;
|
|
77
|
+
return this;
|
|
78
|
+
}
|
|
79
|
+
pointer() {
|
|
80
|
+
this.sprite.cursor = 'pointer';
|
|
81
|
+
return this;
|
|
82
|
+
}
|
|
83
|
+
on(event, callback) {
|
|
84
|
+
this.sprite.on(event, callback);
|
|
85
|
+
return this;
|
|
86
|
+
}
|
|
87
|
+
activateColorFilter() {
|
|
88
|
+
this.image.activateColorFilter();
|
|
89
|
+
return this;
|
|
90
|
+
}
|
|
91
|
+
getImage() {
|
|
92
|
+
return this.image;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.ImageCreator = ImageCreator;
|
|
96
|
+
//# sourceMappingURL=image-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-creator.js","sourceRoot":"","sources":["../../../src/game-assets/image/image-creator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAgC;AAGhC,gDAA4C;AAC5C,mCAAgC;AAGhC,MAAa,YAAY;IAIvB,YAAY,SAAiB;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,wBAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,MAAmB;QACxB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,GAAS;QAChB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,GAAS;QACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,SAAkB,KAAK;QAC5B,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,gBAAmC;QACxC,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,EAAE,CAAC,KAAa,EAAE,QAA+C;QAC/D,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAjFD,oCAiFC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import * as PIXI from 'pixi.js';
|
|
2
|
+
import { Vec2 } from 'helpers-lib';
|
|
3
|
+
import { EntityBase } from '../../game-entities/entity-base';
|
|
4
|
+
import { CanBeParent, Destroyable } from '../../_interfaces';
|
|
5
|
+
import { Filters } from '../filters/filters';
|
|
6
|
+
export declare class Image implements Destroyable, CanBeParent {
|
|
7
|
+
readonly sprite: PIXI.Sprite;
|
|
8
|
+
readonly filters: Filters;
|
|
9
|
+
constructor(image: string | PIXI.Sprite);
|
|
10
|
+
get position(): Vec2;
|
|
11
|
+
set position(value: Vec2);
|
|
12
|
+
get rotation(): number;
|
|
13
|
+
set rotation(value: number);
|
|
14
|
+
get zIndex(): number;
|
|
15
|
+
set zIndex(value: number);
|
|
16
|
+
get sortableChildren(): boolean;
|
|
17
|
+
set sortableChildren(value: boolean);
|
|
18
|
+
setPosition(value: Vec2): Image;
|
|
19
|
+
setRotation(value: number): Image;
|
|
20
|
+
setZIndex(value: number): Image;
|
|
21
|
+
setSortableChildren(value: boolean): Image;
|
|
22
|
+
setScale(value: number): Image;
|
|
23
|
+
setAlpha(value: number): Image;
|
|
24
|
+
setAnchor(pos: Vec2): Image;
|
|
25
|
+
setMirror(mirror?: boolean): Image;
|
|
26
|
+
setInteractive(): Image;
|
|
27
|
+
setPointer(): Image;
|
|
28
|
+
tint(tint: number): void;
|
|
29
|
+
addChild(child: PIXI.DisplayObject): Image;
|
|
30
|
+
parent(target: CanBeParent): Image;
|
|
31
|
+
attach(parent: EntityBase): Image;
|
|
32
|
+
on(event: string, callback: (_: PIXI.FederatedMouseEvent) => void): Image;
|
|
33
|
+
destroy(): void;
|
|
34
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
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.Image = void 0;
|
|
27
|
+
const PIXI = __importStar(require("pixi.js"));
|
|
28
|
+
const helpers_lib_1 = require("helpers-lib");
|
|
29
|
+
const game_assets_1 = require("../game-assets");
|
|
30
|
+
const filters_1 = require("../filters/filters");
|
|
31
|
+
class Image {
|
|
32
|
+
constructor(image) {
|
|
33
|
+
// TODO: remove PIXI.Sprite from constructor
|
|
34
|
+
if (helpers_lib_1.Comparator.isString(image)) {
|
|
35
|
+
this.sprite = new PIXI.Sprite(game_assets_1.GameAssets.getAsset(image));
|
|
36
|
+
}
|
|
37
|
+
else if (image instanceof Object && image.isSprite) {
|
|
38
|
+
this.sprite = image;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
throw new Error('Image constructor accepts only string or PIXI.Sprite');
|
|
42
|
+
}
|
|
43
|
+
this.filters = new filters_1.Filters(this.sprite, filters => {
|
|
44
|
+
this.sprite.filters = filters;
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
get position() {
|
|
48
|
+
return { x: this.sprite.x, y: this.sprite.y };
|
|
49
|
+
}
|
|
50
|
+
set position(value) {
|
|
51
|
+
this.sprite.position = value;
|
|
52
|
+
}
|
|
53
|
+
get rotation() {
|
|
54
|
+
return this.sprite.rotation;
|
|
55
|
+
}
|
|
56
|
+
set rotation(value) {
|
|
57
|
+
this.sprite.rotation = value;
|
|
58
|
+
}
|
|
59
|
+
get zIndex() {
|
|
60
|
+
return this.sprite.zIndex;
|
|
61
|
+
}
|
|
62
|
+
set zIndex(value) {
|
|
63
|
+
this.sprite.zIndex = value;
|
|
64
|
+
}
|
|
65
|
+
get sortableChildren() {
|
|
66
|
+
return this.sprite.sortableChildren;
|
|
67
|
+
}
|
|
68
|
+
set sortableChildren(value) {
|
|
69
|
+
this.sprite.sortableChildren = value;
|
|
70
|
+
}
|
|
71
|
+
setPosition(value) {
|
|
72
|
+
this.position = value;
|
|
73
|
+
return this;
|
|
74
|
+
}
|
|
75
|
+
setRotation(value) {
|
|
76
|
+
this.sprite.rotation = value;
|
|
77
|
+
return this;
|
|
78
|
+
}
|
|
79
|
+
setZIndex(value) {
|
|
80
|
+
this.zIndex = value;
|
|
81
|
+
return this;
|
|
82
|
+
}
|
|
83
|
+
setSortableChildren(value) {
|
|
84
|
+
this.sortableChildren = value;
|
|
85
|
+
return this;
|
|
86
|
+
}
|
|
87
|
+
setScale(value) {
|
|
88
|
+
this.sprite.scale = new PIXI.Point(value, value);
|
|
89
|
+
return this;
|
|
90
|
+
}
|
|
91
|
+
setAlpha(value) {
|
|
92
|
+
this.sprite.alpha = value;
|
|
93
|
+
return this;
|
|
94
|
+
}
|
|
95
|
+
setAnchor(pos) {
|
|
96
|
+
this.sprite.anchor.x = pos.x;
|
|
97
|
+
this.sprite.anchor.y = pos.y;
|
|
98
|
+
return this;
|
|
99
|
+
}
|
|
100
|
+
setMirror(mirror = false) {
|
|
101
|
+
if (mirror) {
|
|
102
|
+
this.sprite.scale.x *= -1;
|
|
103
|
+
}
|
|
104
|
+
return this;
|
|
105
|
+
}
|
|
106
|
+
setInteractive() {
|
|
107
|
+
this.sprite.interactive = true;
|
|
108
|
+
return this;
|
|
109
|
+
}
|
|
110
|
+
setPointer() {
|
|
111
|
+
this.sprite.cursor = 'pointer';
|
|
112
|
+
return this;
|
|
113
|
+
}
|
|
114
|
+
tint(tint) {
|
|
115
|
+
this.sprite.tint = tint;
|
|
116
|
+
}
|
|
117
|
+
addChild(child) {
|
|
118
|
+
this.sprite.addChild(child);
|
|
119
|
+
return this;
|
|
120
|
+
}
|
|
121
|
+
parent(target) {
|
|
122
|
+
target.addChild(this.sprite);
|
|
123
|
+
return this;
|
|
124
|
+
}
|
|
125
|
+
attach(parent) {
|
|
126
|
+
// @ts-ignore
|
|
127
|
+
parent.setAttachment(this);
|
|
128
|
+
return this;
|
|
129
|
+
}
|
|
130
|
+
on(event, callback) {
|
|
131
|
+
this.sprite.on(event, callback);
|
|
132
|
+
return this;
|
|
133
|
+
}
|
|
134
|
+
destroy() {
|
|
135
|
+
this.sprite.destroy();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.Image = Image;
|
|
139
|
+
//# sourceMappingURL=image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../../src/game-assets/image/image.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Vec2 } from 'helpers-lib';
|
|
2
|
+
export interface Pixel {
|
|
3
|
+
r: number;
|
|
4
|
+
g: number;
|
|
5
|
+
b: number;
|
|
6
|
+
a: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class ImageDataHelper {
|
|
9
|
+
private static helperMap;
|
|
10
|
+
static getInstance(name: string): ImageDataHelper | undefined;
|
|
11
|
+
private static registerImage;
|
|
12
|
+
readonly size: Vec2;
|
|
13
|
+
private imageData;
|
|
14
|
+
private constructor();
|
|
15
|
+
getPixel(position: Vec2): Pixel;
|
|
16
|
+
}
|