@safe-engine/cocos 2.5.4 → 2.5.6

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/dist/app.d.ts CHANGED
@@ -11,6 +11,7 @@ export declare function startGame(defaultFont: string, { width, height }: {
11
11
  height: any;
12
12
  }, option?: Partial<RunOptions>): Promise<void>;
13
13
  export declare function loadAll(assets: any, cb?: (progress: number) => void): Promise<unknown>;
14
+ export declare function unloadAll(assets: any): void;
14
15
  export declare function loadJsonFromCache<T>(filePath: string): T;
15
16
  export declare const audioEngine: typeof cc.audioEngine;
16
17
  export {};
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,QAQ7C;AACD,UAAU,UAAU;IAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACtB;AACD,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;;;CAAA,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,iBA2CnG;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,oBA0CnE;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAIxD;AAED,eAAO,MAAM,WAAW,uBAAiB,CAAA"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAKA,wBAAgB,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,QAQ7C;AACD,UAAU,UAAU;IAClB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;CACtB;AACD,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;;;CAAA,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,iBA2CnG;AA6BD,wBAAgB,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,oBAoBnE;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,GAAG,QAKpC;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CAIxD;AAED,eAAO,MAAM,WAAW,uBAAiB,CAAA"}
package/dist/app.js CHANGED
@@ -50,7 +50,7 @@ export async function startGame(defaultFont, { width, height }, option) {
50
50
  });
51
51
  });
52
52
  }
53
- export function loadAll(assets, cb) {
53
+ function getAllAssets(assets) {
54
54
  const allAssets = [];
55
55
  Object.values(assets).forEach((value) => {
56
56
  if (value.skeleton) {
@@ -78,6 +78,10 @@ export function loadAll(assets, cb) {
78
78
  allAssets.push(value);
79
79
  }
80
80
  });
81
+ return allAssets;
82
+ }
83
+ export function loadAll(assets, cb) {
84
+ const allAssets = getAllAssets(assets);
81
85
  return new Promise((resolve) => {
82
86
  cc.loader.load(allAssets, function (result, count, loadedCount) {
83
87
  // console.log(result)
@@ -94,6 +98,12 @@ export function loadAll(assets, cb) {
94
98
  }, resolve);
95
99
  });
96
100
  }
101
+ export function unloadAll(assets) {
102
+ const allAssets = getAllAssets(assets);
103
+ allAssets.forEach((asset) => {
104
+ cc.loader.release(asset);
105
+ });
106
+ }
97
107
  export function loadJsonFromCache(filePath) {
98
108
  const res = cc.loader.getRes(filePath);
99
109
  // console.log(filePath, res)
@@ -114,9 +114,9 @@ export class NodeComp {
114
114
  return;
115
115
  }
116
116
  this._active = val;
117
- if (this.instance instanceof ccui.Widget) {
118
- this.instance.setEnabled(val);
119
- }
117
+ // if (this.instance instanceof ccui.Widget) {
118
+ // this.instance.setEnabled(val)
119
+ // }
120
120
  this.instance.setVisible(val);
121
121
  }
122
122
  get w() {
@@ -64,5 +64,13 @@ interface InputCompProps {
64
64
  export declare class InputComp extends ComponentX<InputCompProps & BaseComponentProps<InputComp>, ccui.TextField> {
65
65
  get string(): string;
66
66
  }
67
+ interface WidgetCompProps {
68
+ top?: Integer;
69
+ right?: Integer;
70
+ bottom?: Integer;
71
+ left?: Integer;
72
+ }
73
+ export declare class WidgetComp extends ComponentX<WidgetCompProps & BaseComponentProps<WidgetComp>, cc.Node> {
74
+ }
67
75
  export {};
68
76
  //# sourceMappingURL=GUIComponent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GUIComponent.d.ts","sourceRoot":"","sources":["../../src/gui/GUIComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,IAAI,CAAA;AACpD,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAEzC,eAAO,MAAM,QAAQ;;;;CAIpB,CAAA;AAID,UAAU,eAAe;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CACvC;AACD,qBAAa,UAAW,SAAQ,UAAU,CAAC,eAAe,CAAC;CAK1D;AAED,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,IAAI,CAAC;IACvI,IAAI,SAAS,IAYM,MAAM,CARxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;IAED,IAAI,SAAS,CAAC,GAAG,EAAE,MAAM,EAIxB;CACF;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IAC/B,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;CACrC;AAED,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;IAClG,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAKrB;CACF;AAED,oBAAY,mBAAmB;IAC7B,IAA+B;IAC/B,UAA2C;IAC3C,QAAuC;IACvC,IAA+B;CAChC;AACD,UAAU,eAAe;IACvB,QAAQ,EAAE,IAAI,CAAA;IACd,WAAW,EAAE,IAAI,CAAA;IACjB,SAAS,CAAC,EAAE,mBAAmB,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AACD,qBAAa,cAAe,SAAQ,UAAU,CAAC,eAAe,GAAG,kBAAkB,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC;IACnH,IAAI,CAAC,KAAK,EAAE,MAAM;CAKnB;AAED,UAAU,cAAc;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AACD,qBAAa,SAAU,SAAQ,UAAU,CAAC,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;IACvG,IAAI,MAAM,WAET;CACF"}
1
+ {"version":3,"file":"GUIComponent.d.ts","sourceRoot":"","sources":["../../src/gui/GUIComponent.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,8 @@ export class InputComp extends ComponentX {
54
54
  return this.node.instance.getString();
55
55
  }
56
56
  }
57
+ export class WidgetComp extends ComponentX {
58
+ }
57
59
  Object.defineProperty(ProgressTimerComp.prototype, 'render', { value: render });
58
60
  Object.defineProperty(LabelComp.prototype, 'render', { value: render });
59
61
  Object.defineProperty(ScrollViewComp.prototype, 'render', { value: render });
@@ -7,5 +7,6 @@ export declare class GUISystem implements System {
7
7
  private onAddLabelComp;
8
8
  private onAddScrollViewComp;
9
9
  private onAddInputComp;
10
+ private onAddWidgetComp;
10
11
  }
11
12
  //# sourceMappingURL=GUISystem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GUISystem.d.ts","sourceRoot":"","sources":["../../src/gui/GUISystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAMnF,qBAAa,SAAU,YAAW,MAAM;IACtC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,aAAa,EAAE,YAAY;IAQrC,OAAO,CAAC,eAAe,CAuBtB;IAED,OAAO,CAAC,sBAAsB,CAc7B;IAED,OAAO,CAAC,cAAc,CAerB;IAED,OAAO,CAAC,mBAAmB,CAU1B;IAED,OAAO,CAAC,cAAc,CAWrB;CAKF"}
1
+ {"version":3,"file":"GUISystem.d.ts","sourceRoot":"","sources":["../../src/gui/GUISystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAMnF,qBAAa,SAAU,YAAW,MAAM;IACtC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAA;IAC1B,SAAS,CAAC,aAAa,EAAE,YAAY;IASrC,OAAO,CAAC,eAAe,CAuBtB;IAED,OAAO,CAAC,sBAAsB,CAc7B;IAED,OAAO,CAAC,cAAc,CAerB;IAED,OAAO,CAAC,mBAAmB,CAU1B;IAED,OAAO,CAAC,cAAc,CAWrB;IAED,OAAO,CAAC,eAAe,CAetB;CAKF"}
@@ -2,7 +2,7 @@ import { EventTypes } from 'entityx-ts';
2
2
  import { NodeComp } from '../core/NodeComp';
3
3
  import { TouchEventRegister } from '../norender';
4
4
  import { Vec2 } from '../polyfills';
5
- import { ButtonComp, FillType, InputComp, LabelComp, ProgressTimerComp, ScrollViewComp } from './GUIComponent';
5
+ import { ButtonComp, FillType, InputComp, LabelComp, ProgressTimerComp, ScrollViewComp, WidgetComp } from './GUIComponent';
6
6
  export class GUISystem {
7
7
  static defaultFont;
8
8
  configure(event_manager) {
@@ -11,6 +11,7 @@ export class GUISystem {
11
11
  event_manager.subscribe(EventTypes.ComponentAdded, LabelComp, this.onAddLabelComp);
12
12
  event_manager.subscribe(EventTypes.ComponentAdded, ScrollViewComp, this.onAddScrollViewComp);
13
13
  event_manager.subscribe(EventTypes.ComponentAdded, InputComp, this.onAddInputComp);
14
+ event_manager.subscribe(EventTypes.ComponentAdded, WidgetComp, this.onAddWidgetComp);
14
15
  }
15
16
  onAddButtonComp = ({ entity, component: button }) => {
16
17
  const nodeComp = entity.getComponent(NodeComp);
@@ -91,4 +92,20 @@ export class GUISystem {
91
92
  textField.setPasswordEnabled(isPassword);
92
93
  textInput.node = entity.assign(new NodeComp(textField, entity));
93
94
  };
95
+ onAddWidgetComp = ({ entity, component }) => {
96
+ const { top, right, bottom, left } = component.props;
97
+ const nodeComp = entity.getComponent(NodeComp);
98
+ if (top !== undefined) {
99
+ nodeComp.instance.y = cc.winSize.height - top - nodeComp.instance.height * (1 - nodeComp.instance.anchorY);
100
+ }
101
+ if (right !== undefined) {
102
+ nodeComp.instance.x = cc.winSize.width - right - nodeComp.instance.width * (1 - nodeComp.instance.anchorX);
103
+ }
104
+ if (bottom !== undefined) {
105
+ nodeComp.instance.y = bottom + nodeComp.instance.height * nodeComp.instance.anchorY;
106
+ }
107
+ if (left !== undefined) {
108
+ nodeComp.instance.x = left + nodeComp.instance.width * nodeComp.instance.anchorX;
109
+ }
110
+ };
94
111
  }
@@ -1,4 +1,4 @@
1
- import { BaseComponentProps, ComponentX } from '..';
1
+ import { BaseComponentProps, ComponentX, Vec2 } from '..';
2
2
  import { SkeletonAnimation } from './spine-cocos/CCSkeletonAnimation';
3
3
  export interface SpineData {
4
4
  atlas: string;
@@ -17,6 +17,14 @@ export declare class SpineSkeleton extends ComponentX<SpineSkeletonProps & BaseC
17
17
  set scaleX(flip: number);
18
18
  getAnimationName(): string;
19
19
  setAnimation(name: string, loop?: boolean): void;
20
+ setSkeletonData(data: SpineData): void;
21
+ }
22
+ interface SpineBonesControlComponentProps extends BaseComponentProps<SpineBonesControlComponent> {
23
+ posList: Vec2[];
24
+ bonesName: string[];
25
+ }
26
+ export declare class SpineBonesControlComponent extends ComponentX<SpineBonesControlComponentProps, SkeletonAnimation> {
27
+ start(): void;
20
28
  }
21
29
  export {};
22
30
  //# sourceMappingURL=SpineSkeleton.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpineSkeleton.d.ts","sourceRoot":"","sources":["../../src/spine/SpineSkeleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAU,MAAM,IAAI,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAErE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,mBAAmB,CAAC,MAAA;CACrB;AACD,qBAAa,aAAc,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACtH,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,EAGtB;IACD,gBAAgB;IAIhB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,UAAQ;CAYxC"}
1
+ {"version":3,"file":"SpineSkeleton.d.ts","sourceRoot":"","sources":["../../src/spine/SpineSkeleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAA0B,IAAI,EAAE,MAAM,IAAI,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAErE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,SAAS,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,mBAAmB,CAAC,MAAA;CACrB;AACD,qBAAa,aAAc,SAAQ,UAAU,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IACtH,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,EAGtB;IACD,gBAAgB;IAIhB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,UAAQ;IAOvC,eAAe,CAAC,IAAI,EAAE,SAAS;CAKhC;AAID,UAAU,+BAAgC,SAAQ,kBAAkB,CAAC,0BAA0B,CAAC;IAC9F,OAAO,EAAE,IAAI,EAAE,CAAA;IACf,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB;AACD,qBAAa,0BAA2B,SAAQ,UAAU,CAAC,+BAA+B,EAAE,iBAAiB,CAAC;IAC5G,KAAK;CAYN"}
@@ -1,4 +1,4 @@
1
- import { ComponentX, render } from '..';
1
+ import { ComponentX, registerSystem, render } from '..';
2
2
  export class SpineSkeleton extends ComponentX {
3
3
  set scaleX(flip) {
4
4
  const skel = this.node.instance;
@@ -14,5 +14,25 @@ export class SpineSkeleton extends ComponentX {
14
14
  skel.setAnimation(0, name, loop);
15
15
  }
16
16
  }
17
+ setSkeletonData(data) {
18
+ const skel = this.node.instance;
19
+ const atlas = data.atlas;
20
+ skel.initWithArgs(data.skeleton, atlas, this.props.timeScale);
21
+ }
17
22
  }
18
23
  Object.defineProperty(SpineSkeleton.prototype, 'render', { value: render });
24
+ export class SpineBonesControlComponent extends ComponentX {
25
+ start() {
26
+ const skel = this.node.getComponent(SpineSkeleton).node.instance;
27
+ const { bonesName = [], posList = [] } = this.props;
28
+ bonesName.forEach((boneName, index) => {
29
+ const bone = skel._skeleton.findBone(boneName);
30
+ if (bone) {
31
+ const pos = posList[index];
32
+ bone.x = pos.x;
33
+ bone.y = pos.y;
34
+ }
35
+ });
36
+ }
37
+ }
38
+ registerSystem(SpineBonesControlComponent);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@safe-engine/cocos",
3
- "version": "2.5.4",
3
+ "version": "2.5.6",
4
4
  "description": "safe-engine with cocos renderer support",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",