@combos-fun/plugin-renderer-tiling-sprite 0.0.1
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/README.md +3 -0
- package/dist/plugin-renderer-tiling-sprite.cjs.js +126 -0
- package/dist/plugin-renderer-tiling-sprite.cjs.js.map +1 -0
- package/dist/plugin-renderer-tiling-sprite.cjs.prod.js +1 -0
- package/dist/plugin-renderer-tiling-sprite.d.ts +39 -0
- package/dist/plugin-renderer-tiling-sprite.esm.js +123 -0
- package/dist/plugin-renderer-tiling-sprite.esm.js.map +1 -0
- package/index.js +7 -0
- package/package.json +29 -0
package/README.md
ADDED
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var engine = require('@combos-fun/engine');
|
|
5
|
+
var inspectorDecorator = require('@combos-fun/inspector-decorator');
|
|
6
|
+
var pluginRenderer = require('@combos-fun/plugin-renderer');
|
|
7
|
+
var rendererAdapter = require('@combos-fun/renderer-adapter');
|
|
8
|
+
|
|
9
|
+
let TilingSprite$1 = class TilingSprite extends engine.Component {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
this.resource = '';
|
|
13
|
+
this.tileScale = {
|
|
14
|
+
x: 1,
|
|
15
|
+
y: 1,
|
|
16
|
+
};
|
|
17
|
+
this.tilePosition = {
|
|
18
|
+
x: 0,
|
|
19
|
+
y: 0,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
static { this.componentName = 'TilingSprite'; }
|
|
23
|
+
init(obj) {
|
|
24
|
+
if (obj) {
|
|
25
|
+
this.resource = obj.resource;
|
|
26
|
+
this.tileScale = obj.tileScale;
|
|
27
|
+
this.tilePosition = obj.tilePosition;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
tslib.__decorate([
|
|
32
|
+
inspectorDecorator.type('string')
|
|
33
|
+
], TilingSprite$1.prototype, "resource", void 0);
|
|
34
|
+
tslib.__decorate([
|
|
35
|
+
inspectorDecorator.type('vector2'),
|
|
36
|
+
inspectorDecorator.step(0.1)
|
|
37
|
+
], TilingSprite$1.prototype, "tileScale", void 0);
|
|
38
|
+
tslib.__decorate([
|
|
39
|
+
inspectorDecorator.type('vector2'),
|
|
40
|
+
inspectorDecorator.step(1)
|
|
41
|
+
], TilingSprite$1.prototype, "tilePosition", void 0);
|
|
42
|
+
|
|
43
|
+
let TilingSprite = class TilingSprite extends pluginRenderer.Renderer {
|
|
44
|
+
constructor() {
|
|
45
|
+
super(...arguments);
|
|
46
|
+
this.name = 'TilingSprite';
|
|
47
|
+
this.imgs = {};
|
|
48
|
+
}
|
|
49
|
+
init() {
|
|
50
|
+
this.renderSystem = this.game.getSystem(pluginRenderer.RendererSystem);
|
|
51
|
+
this.renderSystem.rendererManager.register(this);
|
|
52
|
+
}
|
|
53
|
+
rendererUpdate(gameObject) {
|
|
54
|
+
const { width, height } = gameObject.transform.size;
|
|
55
|
+
const img = this.imgs[gameObject.id];
|
|
56
|
+
if (img) {
|
|
57
|
+
img.tilingSprite.width = width;
|
|
58
|
+
img.tilingSprite.height = height;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async componentChanged(changed) {
|
|
62
|
+
const gameObjectId = changed.gameObject.id;
|
|
63
|
+
if (changed.componentName === 'TilingSprite') {
|
|
64
|
+
const component = changed.component;
|
|
65
|
+
if (changed.type === engine.OBSERVER_TYPE.ADD) {
|
|
66
|
+
const sprite = new rendererAdapter.TilingSprite(null);
|
|
67
|
+
this.imgs[changed.gameObject.id] = sprite;
|
|
68
|
+
this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
|
|
69
|
+
this.setProp(changed.gameObject.id, component);
|
|
70
|
+
const asyncId = this.increaseAsyncId(gameObjectId);
|
|
71
|
+
const { data } = await engine.resource.getResource(component.resource);
|
|
72
|
+
if (!this.validateAsyncId(gameObjectId, asyncId))
|
|
73
|
+
return;
|
|
74
|
+
if (!data) {
|
|
75
|
+
console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
sprite.image = data.image;
|
|
79
|
+
}
|
|
80
|
+
else if (changed.type === engine.OBSERVER_TYPE.CHANGE) {
|
|
81
|
+
if (changed.prop.prop[0] === 'resource') {
|
|
82
|
+
const asyncId = this.increaseAsyncId(gameObjectId);
|
|
83
|
+
const { data } = await engine.resource.getResource(component.resource);
|
|
84
|
+
if (!this.validateAsyncId(gameObjectId, asyncId))
|
|
85
|
+
return;
|
|
86
|
+
if (!data) {
|
|
87
|
+
console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
this.imgs[changed.gameObject.id].image = data.image;
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
this.setProp(changed.gameObject.id, component);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
else if (changed.type === engine.OBSERVER_TYPE.REMOVE) {
|
|
97
|
+
this.increaseAsyncId(gameObjectId);
|
|
98
|
+
const sprite = this.imgs[changed.gameObject.id];
|
|
99
|
+
this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
|
|
100
|
+
sprite.tilingSprite.destroy({
|
|
101
|
+
children: true
|
|
102
|
+
});
|
|
103
|
+
delete this.imgs[changed.gameObject.id];
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
setProp(id, component) {
|
|
108
|
+
// bug possible
|
|
109
|
+
this.imgs[id].tilingSprite.tilePosition = component.tilePosition;
|
|
110
|
+
this.imgs[id].tilingSprite.tileScale = component.tileScale;
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
TilingSprite = tslib.__decorate([
|
|
114
|
+
engine.decorators.componentObserver({
|
|
115
|
+
TilingSprite: [
|
|
116
|
+
{ prop: ['resource'], deep: false },
|
|
117
|
+
{ prop: ['tileScale'], deep: true },
|
|
118
|
+
{ prop: ['tilePosition'], deep: true },
|
|
119
|
+
],
|
|
120
|
+
})
|
|
121
|
+
], TilingSprite);
|
|
122
|
+
var TilingSprite_default = TilingSprite;
|
|
123
|
+
|
|
124
|
+
exports.TilingSprite = TilingSprite$1;
|
|
125
|
+
exports.TilingSpriteSystem = TilingSprite_default;
|
|
126
|
+
//# sourceMappingURL=plugin-renderer-tiling-sprite.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-renderer-tiling-sprite.cjs.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import {Component} from '@combos-fun/engine';\nimport {type, step} from '@combos-fun/inspector-decorator';\n\nexport interface TilingSpriteParams {\n resource: string;\n tileScale: { x: number; y: number };\n tilePosition: { x: number; y: number };\n}\n\nexport default class TilingSprite extends Component<TilingSpriteParams> {\n static componentName: string = 'TilingSprite';\n @type('string') resource: string = '';\n @type('vector2') @step(0.1) tileScale: TilingSpriteParams['tileScale'] = {\n x: 1,\n y: 1,\n };\n @type('vector2') @step(1) tilePosition: TilingSpriteParams['tilePosition'] = {\n x: 0,\n y: 0,\n };\n init(obj?: TilingSpriteParams) {\n if (obj) {\n this.resource = obj.resource;\n this.tileScale = obj.tileScale;\n this.tilePosition = obj.tilePosition;\n }\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer } from '@combos-fun/plugin-renderer';\nimport TilingSpriteComponent from './component';\nimport { TilingSprite as TilingSpriteEngine } from '@combos-fun/renderer-adapter';\nimport type { Point } from 'pixi.js';\n\n@decorators.componentObserver({\n TilingSprite: [\n { prop: ['resource'], deep: false },\n { prop: ['tileScale'], deep: true },\n { prop: ['tilePosition'], deep: true },\n ],\n})\nexport default class TilingSprite extends Renderer {\n name: string = 'TilingSprite';\n imgs: { [propName: number]: TilingSpriteEngine } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.transform.size;\n const img = this.imgs[gameObject.id];\n if (img) {\n img.tilingSprite.width = width;\n img.tilingSprite.height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n if (changed.componentName === 'TilingSprite') {\n const component: TilingSpriteComponent = changed.component as TilingSpriteComponent;\n if (changed.type === OBSERVER_TYPE.ADD) {\n const sprite = new TilingSpriteEngine(null);\n this.imgs[changed.gameObject.id] = sprite;\n this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);\n this.setProp(changed.gameObject.id, component);\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);\n return\n }\n sprite.image = data.image;\n } else if (changed.type === OBSERVER_TYPE.CHANGE) {\n if (changed.prop.prop[0] === 'resource') {\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);\n return\n }\n this.imgs[changed.gameObject.id].image = data.image;\n } else {\n this.setProp(changed.gameObject.id, component);\n }\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.increaseAsyncId(gameObjectId);\n const sprite = this.imgs[changed.gameObject.id];\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);\n sprite.tilingSprite.destroy({\n children: true\n });\n delete this.imgs[changed.gameObject.id];\n }\n }\n }\n setProp(id: number, component: TilingSpriteComponent) {\n // bug possible\n this.imgs[id].tilingSprite.tilePosition = component.tilePosition as Point;\n this.imgs[id].tilingSprite.tileScale = component.tileScale as Point;\n }\n}\n"],"names":["Component","__decorate","type","TilingSprite","step","Renderer","RendererSystem","OBSERVER_TYPE","TilingSpriteEngine","resource","decorators"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var e=require("tslib"),t=require("@combos-fun/engine"),i=require("@combos-fun/inspector-decorator"),r=require("@combos-fun/plugin-renderer"),s=require("@combos-fun/renderer-adapter");let o=class extends t.Component{constructor(){super(...arguments),this.resource="",this.tileScale={x:1,y:1},this.tilePosition={x:0,y:0}}static{this.componentName="TilingSprite"}init(e){e&&(this.resource=e.resource,this.tileScale=e.tileScale,this.tilePosition=e.tilePosition)}};e.__decorate([i.type("string")],o.prototype,"resource",void 0),e.__decorate([i.type("vector2"),i.step(.1)],o.prototype,"tileScale",void 0),e.__decorate([i.type("vector2"),i.step(1)],o.prototype,"tilePosition",void 0);let n=class extends r.Renderer{constructor(){super(...arguments),this.name="TilingSprite",this.imgs={}}init(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)}rendererUpdate(e){const{width:t,height:i}=e.transform.size,r=this.imgs[e.id];r&&(r.tilingSprite.width=t,r.tilingSprite.height=i)}async componentChanged(e){const i=e.gameObject.id;if("TilingSprite"===e.componentName){const r=e.component;if(e.type===t.OBSERVER_TYPE.ADD){const o=new s.TilingSprite(null);this.imgs[e.gameObject.id]=o,this.containerManager.getContainer(e.gameObject.id).addChildAt(o.tilingSprite,0),this.setProp(e.gameObject.id,r);const n=this.increaseAsyncId(i),{data:c}=await t.resource.getResource(r.resource);if(!this.validateAsyncId(i,n))return;if(!c)return void console.error(`GameObject:${e.gameObject.name}'s TilingSprite resource load error`);o.image=c.image}else if(e.type===t.OBSERVER_TYPE.CHANGE)if("resource"===e.prop.prop[0]){const s=this.increaseAsyncId(i),{data:o}=await t.resource.getResource(r.resource);if(!this.validateAsyncId(i,s))return;if(!o)return void console.error(`GameObject:${e.gameObject.name}'s TilingSprite resource load error`);this.imgs[e.gameObject.id].image=o.image}else this.setProp(e.gameObject.id,r);else if(e.type===t.OBSERVER_TYPE.REMOVE){this.increaseAsyncId(i);const t=this.imgs[e.gameObject.id];this.containerManager.getContainer(e.gameObject.id).removeChild(t.tilingSprite),t.tilingSprite.destroy({children:!0}),delete this.imgs[e.gameObject.id]}}}setProp(e,t){this.imgs[e].tilingSprite.tilePosition=t.tilePosition,this.imgs[e].tilingSprite.tileScale=t.tileScale}};n=e.__decorate([t.decorators.componentObserver({TilingSprite:[{prop:["resource"],deep:!1},{prop:["tileScale"],deep:!0},{prop:["tilePosition"],deep:!0}]})],n);var c=n;exports.TilingSprite=o,exports.TilingSpriteSystem=c;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, GameObject, ComponentChanged } from '@combos-fun/engine';
|
|
2
|
+
import { Renderer, RendererSystem, RendererManager, ContainerManager } from '@combos-fun/plugin-renderer';
|
|
3
|
+
import { TilingSprite as TilingSprite$2 } from '@combos-fun/renderer-adapter';
|
|
4
|
+
|
|
5
|
+
interface TilingSpriteParams {
|
|
6
|
+
resource: string;
|
|
7
|
+
tileScale: {
|
|
8
|
+
x: number;
|
|
9
|
+
y: number;
|
|
10
|
+
};
|
|
11
|
+
tilePosition: {
|
|
12
|
+
x: number;
|
|
13
|
+
y: number;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
declare class TilingSprite$1 extends Component<TilingSpriteParams> {
|
|
17
|
+
static componentName: string;
|
|
18
|
+
resource: string;
|
|
19
|
+
tileScale: TilingSpriteParams['tileScale'];
|
|
20
|
+
tilePosition: TilingSpriteParams['tilePosition'];
|
|
21
|
+
init(obj?: TilingSpriteParams): void;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
declare class TilingSprite extends Renderer {
|
|
25
|
+
name: string;
|
|
26
|
+
imgs: {
|
|
27
|
+
[propName: number]: TilingSprite$2;
|
|
28
|
+
};
|
|
29
|
+
renderSystem: RendererSystem;
|
|
30
|
+
rendererManager: RendererManager;
|
|
31
|
+
containerManager: ContainerManager;
|
|
32
|
+
init(): void;
|
|
33
|
+
rendererUpdate(gameObject: GameObject): void;
|
|
34
|
+
componentChanged(changed: ComponentChanged): Promise<void>;
|
|
35
|
+
setProp(id: number, component: TilingSprite$1): void;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export { TilingSprite$1 as TilingSprite, TilingSprite as TilingSpriteSystem };
|
|
39
|
+
export type { TilingSpriteParams };
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import { Component, decorators, OBSERVER_TYPE, resource } from '@combos-fun/engine';
|
|
3
|
+
import { type, step } from '@combos-fun/inspector-decorator';
|
|
4
|
+
import { Renderer, RendererSystem } from '@combos-fun/plugin-renderer';
|
|
5
|
+
import { TilingSprite as TilingSprite$2 } from '@combos-fun/renderer-adapter';
|
|
6
|
+
|
|
7
|
+
let TilingSprite$1 = class TilingSprite extends Component {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.resource = '';
|
|
11
|
+
this.tileScale = {
|
|
12
|
+
x: 1,
|
|
13
|
+
y: 1,
|
|
14
|
+
};
|
|
15
|
+
this.tilePosition = {
|
|
16
|
+
x: 0,
|
|
17
|
+
y: 0,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
static { this.componentName = 'TilingSprite'; }
|
|
21
|
+
init(obj) {
|
|
22
|
+
if (obj) {
|
|
23
|
+
this.resource = obj.resource;
|
|
24
|
+
this.tileScale = obj.tileScale;
|
|
25
|
+
this.tilePosition = obj.tilePosition;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
__decorate([
|
|
30
|
+
type('string')
|
|
31
|
+
], TilingSprite$1.prototype, "resource", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
type('vector2'),
|
|
34
|
+
step(0.1)
|
|
35
|
+
], TilingSprite$1.prototype, "tileScale", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
type('vector2'),
|
|
38
|
+
step(1)
|
|
39
|
+
], TilingSprite$1.prototype, "tilePosition", void 0);
|
|
40
|
+
|
|
41
|
+
let TilingSprite = class TilingSprite extends Renderer {
|
|
42
|
+
constructor() {
|
|
43
|
+
super(...arguments);
|
|
44
|
+
this.name = 'TilingSprite';
|
|
45
|
+
this.imgs = {};
|
|
46
|
+
}
|
|
47
|
+
init() {
|
|
48
|
+
this.renderSystem = this.game.getSystem(RendererSystem);
|
|
49
|
+
this.renderSystem.rendererManager.register(this);
|
|
50
|
+
}
|
|
51
|
+
rendererUpdate(gameObject) {
|
|
52
|
+
const { width, height } = gameObject.transform.size;
|
|
53
|
+
const img = this.imgs[gameObject.id];
|
|
54
|
+
if (img) {
|
|
55
|
+
img.tilingSprite.width = width;
|
|
56
|
+
img.tilingSprite.height = height;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async componentChanged(changed) {
|
|
60
|
+
const gameObjectId = changed.gameObject.id;
|
|
61
|
+
if (changed.componentName === 'TilingSprite') {
|
|
62
|
+
const component = changed.component;
|
|
63
|
+
if (changed.type === OBSERVER_TYPE.ADD) {
|
|
64
|
+
const sprite = new TilingSprite$2(null);
|
|
65
|
+
this.imgs[changed.gameObject.id] = sprite;
|
|
66
|
+
this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);
|
|
67
|
+
this.setProp(changed.gameObject.id, component);
|
|
68
|
+
const asyncId = this.increaseAsyncId(gameObjectId);
|
|
69
|
+
const { data } = await resource.getResource(component.resource);
|
|
70
|
+
if (!this.validateAsyncId(gameObjectId, asyncId))
|
|
71
|
+
return;
|
|
72
|
+
if (!data) {
|
|
73
|
+
console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
sprite.image = data.image;
|
|
77
|
+
}
|
|
78
|
+
else if (changed.type === OBSERVER_TYPE.CHANGE) {
|
|
79
|
+
if (changed.prop.prop[0] === 'resource') {
|
|
80
|
+
const asyncId = this.increaseAsyncId(gameObjectId);
|
|
81
|
+
const { data } = await resource.getResource(component.resource);
|
|
82
|
+
if (!this.validateAsyncId(gameObjectId, asyncId))
|
|
83
|
+
return;
|
|
84
|
+
if (!data) {
|
|
85
|
+
console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
this.imgs[changed.gameObject.id].image = data.image;
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this.setProp(changed.gameObject.id, component);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
else if (changed.type === OBSERVER_TYPE.REMOVE) {
|
|
95
|
+
this.increaseAsyncId(gameObjectId);
|
|
96
|
+
const sprite = this.imgs[changed.gameObject.id];
|
|
97
|
+
this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);
|
|
98
|
+
sprite.tilingSprite.destroy({
|
|
99
|
+
children: true
|
|
100
|
+
});
|
|
101
|
+
delete this.imgs[changed.gameObject.id];
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
setProp(id, component) {
|
|
106
|
+
// bug possible
|
|
107
|
+
this.imgs[id].tilingSprite.tilePosition = component.tilePosition;
|
|
108
|
+
this.imgs[id].tilingSprite.tileScale = component.tileScale;
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
TilingSprite = __decorate([
|
|
112
|
+
decorators.componentObserver({
|
|
113
|
+
TilingSprite: [
|
|
114
|
+
{ prop: ['resource'], deep: false },
|
|
115
|
+
{ prop: ['tileScale'], deep: true },
|
|
116
|
+
{ prop: ['tilePosition'], deep: true },
|
|
117
|
+
],
|
|
118
|
+
})
|
|
119
|
+
], TilingSprite);
|
|
120
|
+
var TilingSprite_default = TilingSprite;
|
|
121
|
+
|
|
122
|
+
export { TilingSprite$1 as TilingSprite, TilingSprite_default as TilingSpriteSystem };
|
|
123
|
+
//# sourceMappingURL=plugin-renderer-tiling-sprite.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-renderer-tiling-sprite.esm.js","sources":["../lib/component.ts","../lib/system.ts"],"sourcesContent":["import {Component} from '@combos-fun/engine';\nimport {type, step} from '@combos-fun/inspector-decorator';\n\nexport interface TilingSpriteParams {\n resource: string;\n tileScale: { x: number; y: number };\n tilePosition: { x: number; y: number };\n}\n\nexport default class TilingSprite extends Component<TilingSpriteParams> {\n static componentName: string = 'TilingSprite';\n @type('string') resource: string = '';\n @type('vector2') @step(0.1) tileScale: TilingSpriteParams['tileScale'] = {\n x: 1,\n y: 1,\n };\n @type('vector2') @step(1) tilePosition: TilingSpriteParams['tilePosition'] = {\n x: 0,\n y: 0,\n };\n init(obj?: TilingSpriteParams) {\n if (obj) {\n this.resource = obj.resource;\n this.tileScale = obj.tileScale;\n this.tilePosition = obj.tilePosition;\n }\n }\n}\n","import { GameObject, decorators, resource, ComponentChanged, OBSERVER_TYPE } from '@combos-fun/engine';\nimport { RendererManager, ContainerManager, RendererSystem, Renderer } from '@combos-fun/plugin-renderer';\nimport TilingSpriteComponent from './component';\nimport { TilingSprite as TilingSpriteEngine } from '@combos-fun/renderer-adapter';\nimport type { Point } from 'pixi.js';\n\n@decorators.componentObserver({\n TilingSprite: [\n { prop: ['resource'], deep: false },\n { prop: ['tileScale'], deep: true },\n { prop: ['tilePosition'], deep: true },\n ],\n})\nexport default class TilingSprite extends Renderer {\n name: string = 'TilingSprite';\n imgs: { [propName: number]: TilingSpriteEngine } = {};\n renderSystem: RendererSystem;\n rendererManager: RendererManager;\n containerManager: ContainerManager;\n init() {\n this.renderSystem = this.game.getSystem(RendererSystem) as RendererSystem;\n this.renderSystem.rendererManager.register(this);\n }\n rendererUpdate(gameObject: GameObject) {\n const { width, height } = gameObject.transform.size;\n const img = this.imgs[gameObject.id];\n if (img) {\n img.tilingSprite.width = width;\n img.tilingSprite.height = height;\n }\n }\n async componentChanged(changed: ComponentChanged) {\n const gameObjectId = changed.gameObject.id;\n if (changed.componentName === 'TilingSprite') {\n const component: TilingSpriteComponent = changed.component as TilingSpriteComponent;\n if (changed.type === OBSERVER_TYPE.ADD) {\n const sprite = new TilingSpriteEngine(null);\n this.imgs[changed.gameObject.id] = sprite;\n this.containerManager.getContainer(changed.gameObject.id).addChildAt(sprite.tilingSprite, 0);\n this.setProp(changed.gameObject.id, component);\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);\n return\n }\n sprite.image = data.image;\n } else if (changed.type === OBSERVER_TYPE.CHANGE) {\n if (changed.prop.prop[0] === 'resource') {\n const asyncId = this.increaseAsyncId(gameObjectId);\n const { data } = await resource.getResource(component.resource);\n if (!this.validateAsyncId(gameObjectId, asyncId)) return;\n if (!data) {\n console.error(`GameObject:${changed.gameObject.name}'s TilingSprite resource load error`);\n return\n }\n this.imgs[changed.gameObject.id].image = data.image;\n } else {\n this.setProp(changed.gameObject.id, component);\n }\n } else if (changed.type === OBSERVER_TYPE.REMOVE) {\n this.increaseAsyncId(gameObjectId);\n const sprite = this.imgs[changed.gameObject.id];\n this.containerManager.getContainer(changed.gameObject.id).removeChild(sprite.tilingSprite);\n sprite.tilingSprite.destroy({\n children: true\n });\n delete this.imgs[changed.gameObject.id];\n }\n }\n }\n setProp(id: number, component: TilingSpriteComponent) {\n // bug possible\n this.imgs[id].tilingSprite.tilePosition = component.tilePosition as Point;\n this.imgs[id].tilingSprite.tileScale = component.tileScale as Point;\n }\n}\n"],"names":["TilingSprite","TilingSpriteEngine"],"mappings":"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"}
|
package/index.js
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@combos-fun/plugin-renderer-tiling-sprite",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "@combos-fun/plugin-renderer-tiling-sprite",
|
|
5
|
+
"main": "index.js",
|
|
6
|
+
"module": "dist/plugin-renderer-tiling-sprite.esm.js",
|
|
7
|
+
"bundle": "CombosFun.plugin.renderer.tilingSprite",
|
|
8
|
+
"unpkg": "dist/CombosFun.plugin.renderer.tilingSprite.min.js",
|
|
9
|
+
"files": [
|
|
10
|
+
"index.js",
|
|
11
|
+
"dist"
|
|
12
|
+
],
|
|
13
|
+
"types": "dist/plugin-renderer-tiling-sprite.d.ts",
|
|
14
|
+
"keywords": [
|
|
15
|
+
"combos-fun",
|
|
16
|
+
"game"
|
|
17
|
+
],
|
|
18
|
+
"author": "sun668 <q947692259@gmail.com>",
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"pixi.js": "^8.18.1",
|
|
21
|
+
"@combos-fun/renderer-adapter": "0.0.1",
|
|
22
|
+
"@combos-fun/plugin-renderer": "0.0.1",
|
|
23
|
+
"@combos-fun/engine": "0.0.1",
|
|
24
|
+
"@combos-fun/inspector-decorator": "0.0.1"
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"build": "node ../../scripts/build-package.mjs"
|
|
28
|
+
}
|
|
29
|
+
}
|