@safe-engine/cocos 2.6.5 → 2.6.9

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 (107) hide show
  1. package/README.md +124 -2
  2. package/dist/core/NodeComp.d.ts +4 -1
  3. package/dist/core/NodeComp.d.ts.map +1 -1
  4. package/dist/core/NodeComp.js +12 -1
  5. package/dist/core/decorator.d.ts +1 -0
  6. package/dist/core/decorator.d.ts.map +1 -1
  7. package/dist/core/decorator.js +3 -0
  8. package/dist/dragonbones/db-cocos/SimpleMeshNode.d.ts +1 -1
  9. package/dist/dragonbones/db-cocos/SimpleMeshNode.d.ts.map +1 -1
  10. package/dist/gui/GUIComponent.d.ts +1 -0
  11. package/dist/gui/GUIComponent.d.ts.map +1 -1
  12. package/dist/gui/GUISystem.d.ts.map +1 -1
  13. package/dist/gui/GUISystem.js +13 -5
  14. package/dist/gui/SliderComp.d.ts +16 -0
  15. package/dist/gui/SliderComp.d.ts.map +1 -0
  16. package/dist/gui/SliderComp.js +32 -0
  17. package/dist/polyfills.d.ts +20 -0
  18. package/dist/polyfills.d.ts.map +1 -1
  19. package/dist/polyfills.js +9 -0
  20. package/dist/render/RenderComponent.d.ts +1 -0
  21. package/dist/render/RenderComponent.d.ts.map +1 -1
  22. package/dist/render/RenderComponent.js +3 -0
  23. package/dist/render/RenderTextureComp.d.ts +10 -0
  24. package/dist/render/RenderTextureComp.d.ts.map +1 -0
  25. package/dist/render/RenderTextureComp.js +13 -0
  26. package/dist/richtext/RichTextComp.d.ts +1 -0
  27. package/dist/richtext/RichTextComp.d.ts.map +1 -1
  28. package/dist/richtext/RichTextSystem.js +4 -4
  29. package/package.json +3 -3
  30. package/dist/dragonbones/PixiDragonBonesSprite.d.ts +0 -19
  31. package/dist/dragonbones/PixiDragonBonesSprite.d.ts.map +0 -1
  32. package/dist/dragonbones/PixiDragonBonesSprite.js +0 -75
  33. package/dist/gworld/components/AnimationComponent.d.ts +0 -65
  34. package/dist/gworld/components/AnimationComponent.d.ts.map +0 -1
  35. package/dist/gworld/components/AnimationComponent.js +0 -141
  36. package/dist/gworld/components/CollideComponent.d.ts +0 -64
  37. package/dist/gworld/components/CollideComponent.d.ts.map +0 -1
  38. package/dist/gworld/components/CollideComponent.js +0 -269
  39. package/dist/gworld/components/EnhancedComponent.d.ts +0 -22
  40. package/dist/gworld/components/EnhancedComponent.d.ts.map +0 -1
  41. package/dist/gworld/components/EnhancedComponent.js +0 -51
  42. package/dist/gworld/components/GUIComponent.d.ts +0 -67
  43. package/dist/gworld/components/GUIComponent.d.ts.map +0 -1
  44. package/dist/gworld/components/GUIComponent.js +0 -166
  45. package/dist/gworld/components/NoRenderComponent.d.ts +0 -38
  46. package/dist/gworld/components/NoRenderComponent.d.ts.map +0 -1
  47. package/dist/gworld/components/NoRenderComponent.js +0 -81
  48. package/dist/gworld/components/NodeComp.d.ts +0 -152
  49. package/dist/gworld/components/NodeComp.d.ts.map +0 -1
  50. package/dist/gworld/components/NodeComp.js +0 -405
  51. package/dist/gworld/components/RenderComponent.d.ts +0 -58
  52. package/dist/gworld/components/RenderComponent.d.ts.map +0 -1
  53. package/dist/gworld/components/RenderComponent.js +0 -166
  54. package/dist/gworld/core/NodePool.d.ts +0 -9
  55. package/dist/gworld/core/NodePool.d.ts.map +0 -1
  56. package/dist/gworld/core/NodePool.js +0 -30
  57. package/dist/gworld/core/Scene.d.ts +0 -5
  58. package/dist/gworld/core/Scene.d.ts.map +0 -1
  59. package/dist/gworld/core/Scene.js +0 -38
  60. package/dist/gworld/core/decorator.d.ts +0 -9
  61. package/dist/gworld/core/decorator.d.ts.map +0 -1
  62. package/dist/gworld/core/decorator.js +0 -43
  63. package/dist/gworld/index.d.ts +0 -8
  64. package/dist/gworld/index.d.ts.map +0 -1
  65. package/dist/gworld/index.js +0 -43
  66. package/dist/gworld/systems/AnimationSystem.d.ts +0 -6
  67. package/dist/gworld/systems/AnimationSystem.d.ts.map +0 -1
  68. package/dist/gworld/systems/AnimationSystem.js +0 -30
  69. package/dist/gworld/systems/CollideSystem.d.ts +0 -20
  70. package/dist/gworld/systems/CollideSystem.d.ts.map +0 -1
  71. package/dist/gworld/systems/CollideSystem.js +0 -171
  72. package/dist/gworld/systems/GUISystem.d.ts +0 -15
  73. package/dist/gworld/systems/GUISystem.d.ts.map +0 -1
  74. package/dist/gworld/systems/GUISystem.js +0 -123
  75. package/dist/gworld/systems/NoRenderSystem.d.ts +0 -16
  76. package/dist/gworld/systems/NoRenderSystem.d.ts.map +0 -1
  77. package/dist/gworld/systems/NoRenderSystem.js +0 -85
  78. package/dist/gworld/systems/RenderSystem.d.ts +0 -22
  79. package/dist/gworld/systems/RenderSystem.d.ts.map +0 -1
  80. package/dist/gworld/systems/RenderSystem.js +0 -104
  81. package/dist/helper/NodePool.d.ts +0 -9
  82. package/dist/helper/NodePool.d.ts.map +0 -1
  83. package/dist/helper/NodePool.js +0 -29
  84. package/dist/helper/html-text-parser.d.ts +0 -30
  85. package/dist/helper/html-text-parser.d.ts.map +0 -1
  86. package/dist/helper/html-text-parser.js +0 -354
  87. package/dist/safex.d.ts +0 -10
  88. package/dist/safex.d.ts.map +0 -1
  89. package/dist/safex.js +0 -25
  90. package/dist/spine/CCSkeleton.d.ts +0 -2
  91. package/dist/spine/CCSkeleton.d.ts.map +0 -1
  92. package/dist/spine/CCSkeleton.js +0 -344
  93. package/dist/spine/CCSkeletonAnimation.d.ts +0 -16
  94. package/dist/spine/CCSkeletonAnimation.d.ts.map +0 -1
  95. package/dist/spine/CCSkeletonAnimation.js +0 -317
  96. package/dist/spine/CCSkeletonCanvasRenderCmd.d.ts +0 -2
  97. package/dist/spine/CCSkeletonCanvasRenderCmd.d.ts.map +0 -1
  98. package/dist/spine/CCSkeletonCanvasRenderCmd.js +0 -225
  99. package/dist/spine/CCSkeletonTexture.d.ts +0 -2
  100. package/dist/spine/CCSkeletonTexture.d.ts.map +0 -1
  101. package/dist/spine/CCSkeletonTexture.js +0 -62
  102. package/dist/spine/CCSkeletonWebGLRenderCmd.d.ts +0 -2
  103. package/dist/spine/CCSkeletonWebGLRenderCmd.d.ts.map +0 -1
  104. package/dist/spine/CCSkeletonWebGLRenderCmd.js +0 -281
  105. package/dist/spine/PixiSpineSprite.d.ts +0 -19
  106. package/dist/spine/PixiSpineSprite.d.ts.map +0 -1
  107. package/dist/spine/PixiSpineSprite.js +0 -72
@@ -1,75 +0,0 @@
1
- import { PixiFactory } from 'dragonbones-pixijs';
2
- import { Application, Assets } from 'pixi.js';
3
- export function loadDragonBonesAssets({ skeleton, atlas, texture }) {
4
- // console.log('loadDragonBonesAssets', skeleton, atlas, texture)
5
- return Assets.load([skeleton, atlas, texture]);
6
- }
7
- export class PixiDragonBonesSprite extends cc.Sprite {
8
- _canvas;
9
- _pixiApp;
10
- _texture;
11
- _config;
12
- _armatureDisplay;
13
- constructor(config) {
14
- super();
15
- super.ctor(); // always call this for compatibility with cocos2dx JS Javascript class system
16
- this._canvas = document.createElement('canvas');
17
- this._canvas.width = config.width || 1024;
18
- this._canvas.height = config.height || 1024;
19
- this._pixiApp = new Application();
20
- this._pixiApp.init({
21
- view: this._canvas,
22
- width: this._canvas.width,
23
- height: this._canvas.height,
24
- backgroundAlpha: 0, // nền trong suốt
25
- // transparent: true, // bắt buộc để alpha hoạt động
26
- clearBeforeRender: true, // xoá trước khi vẽ frame mới
27
- preserveDrawingBuffer: true, // giúp lấy ảnh từ canvas
28
- antialias: true,
29
- });
30
- this._texture = new cc.Texture2D();
31
- this._texture.initWithElement(this._canvas);
32
- this._texture.handleLoadedTexture();
33
- this.initWithTexture(this._texture);
34
- this._config = config;
35
- this._armatureDisplay = null;
36
- this._setupArmature();
37
- // this.schedule(this.updateTexture, 1 / 30);
38
- }
39
- _setupArmature() {
40
- const { skeleton, atlas, texture, playTimes, animationName, scale = 1 } = this._config;
41
- const factory = PixiFactory.factory;
42
- const atlasAsset = Assets.get(atlas);
43
- const dragonData = factory.parseDragonBonesData(Assets.get(skeleton), atlasAsset.name);
44
- factory.parseTextureAtlasData(Assets.get(atlas), Assets.get(texture), atlasAsset.name);
45
- const { armatureNames } = dragonData;
46
- const armatureName = armatureNames[0];
47
- const display = factory.buildArmatureDisplay(armatureName, atlasAsset.name);
48
- if (!display) {
49
- console.error('Cannot build armature:', armatureName);
50
- return;
51
- }
52
- display.animation.play(animationName, playTimes);
53
- display.x = this._canvas.width / 2;
54
- display.y = this._canvas.height / 2;
55
- display.scale.set(scale);
56
- this._pixiApp.stage.addChild(display);
57
- this._armatureDisplay = display;
58
- }
59
- updateTexture() {
60
- if (this._armatureDisplay && this._pixiApp.renderer && this._pixiApp.stage) {
61
- this._pixiApp.renderer.render(this._pixiApp.stage);
62
- this._texture.initWithElement(this._canvas);
63
- this._texture.handleLoadedTexture();
64
- this.setTexture(this._texture);
65
- }
66
- }
67
- onExit() {
68
- // this.unschedule(this.updateTexture);
69
- this._pixiApp.destroy(true, { children: true });
70
- this._canvas.remove();
71
- this._armatureDisplay.destroy();
72
- this._armatureDisplay = null;
73
- super.onExit();
74
- }
75
- }
@@ -1,65 +0,0 @@
1
- import { EnhancedComponent } from './EnhancedComponent';
2
- export declare namespace AnimationClip {
3
- interface IEvent {
4
- frame: number;
5
- func: string;
6
- params: string[];
7
- isCalled: boolean;
8
- }
9
- }
10
- export declare enum WrapMode {
11
- Default = 0,
12
- Normal = 1,
13
- Loop = 2,
14
- PingPong = 22,
15
- Reverse = 36,
16
- LoopReverse = 38,
17
- PingPongReverse = 54
18
- }
19
- interface AnimProp {
20
- frame: number;
21
- value: number;
22
- }
23
- interface SpriteFrameProp {
24
- frame: number;
25
- value: string;
26
- }
27
- interface CurveData {
28
- comps: {
29
- spriteFrame: SpriteFrameProp[];
30
- nextFrame: number;
31
- };
32
- props: {
33
- [key: string]: AnimProp[];
34
- };
35
- }
36
- export declare class AnimationClip {
37
- static WrapMode: typeof WrapMode;
38
- sample: number;
39
- speed: number;
40
- wrapMode: WrapMode;
41
- events: AnimationClip.IEvent[];
42
- duration: number;
43
- name: string;
44
- curveData: CurveData;
45
- }
46
- export declare class AnimationComp extends EnhancedComponent {
47
- defaultClip: AnimationClip;
48
- clips: AnimationClip[];
49
- playOnLoad: boolean;
50
- private isPaused;
51
- private elapsed;
52
- private currentClip;
53
- constructor(defaultClip: AnimationClip, clips: AnimationClip[], playOnLoad: boolean);
54
- start(): void;
55
- update(dt: Float): void;
56
- getAnimationState(name: string): {
57
- isPlaying: boolean;
58
- };
59
- play(name?: string): void;
60
- pause(): void;
61
- resume(): void;
62
- stop(name?: string): void;
63
- }
64
- export {};
65
- //# sourceMappingURL=AnimationComponent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AnimationComponent.d.ts","sourceRoot":"","sources":["../../../src/gworld/components/AnimationComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAGvD,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC,UAAiB,MAAM;QACrB,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,EAAE,CAAA;QAChB,QAAQ,EAAE,OAAO,CAAA;KAClB;CACF;AAED,oBAAY,QAAQ;IAClB,OAAO,IAAI;IACX,MAAM,IAAI;IACV,IAAI,IAAI;IACR,QAAQ,KAAK;IACb,OAAO,KAAK;IACZ,WAAW,KAAK;IAChB,eAAe,KAAK;CACrB;AAED,UAAU,QAAQ;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,SAAS;IACjB,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5D,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAA;KAAE,CAAA;CACrC;AAED,qBAAa,aAAa;IACxB,OAAc,QAAQ,kBAAW;IAC1B,MAAM,SAAK;IACX,KAAK,SAAI;IACT,QAAQ,WAAkB;IAC1B,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,CAAK;IACnC,QAAQ,SAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,CAAA;CACrB;AAID,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,WAAW,EAAE,aAAa,CAAA;IAC1B,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,CAAC,QAAQ,CAAO;IACvB,OAAO,CAAC,OAAO,CAAI;IACnB,OAAO,CAAC,WAAW,CAAe;gBAEtB,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,UAAU,EAAE,OAAO;IAOnF,KAAK;IASL,MAAM,CAAC,EAAE,EAAE,KAAK;IAqChB,iBAAiB,CAAC,IAAI,EAAE,MAAM;;;IAMvB,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM;IAoBlB,KAAK;IAKL,MAAM;IAKN,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM;CAI1B"}
@@ -1,141 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.AnimationComp = exports.AnimationClip = exports.WrapMode = void 0;
19
- var EnhancedComponent_1 = require("./EnhancedComponent");
20
- var RenderComponent_1 = require("./RenderComponent");
21
- var WrapMode;
22
- (function (WrapMode) {
23
- WrapMode[WrapMode["Default"] = 0] = "Default";
24
- WrapMode[WrapMode["Normal"] = 1] = "Normal";
25
- WrapMode[WrapMode["Loop"] = 2] = "Loop";
26
- WrapMode[WrapMode["PingPong"] = 22] = "PingPong";
27
- WrapMode[WrapMode["Reverse"] = 36] = "Reverse";
28
- WrapMode[WrapMode["LoopReverse"] = 38] = "LoopReverse";
29
- WrapMode[WrapMode["PingPongReverse"] = 54] = "PingPongReverse";
30
- })(WrapMode || (exports.WrapMode = WrapMode = {}));
31
- var AnimationClip = /** @class */ (function () {
32
- function AnimationClip() {
33
- this.sample = 60;
34
- this.speed = 1;
35
- this.wrapMode = WrapMode.Normal;
36
- this.events = [];
37
- this.duration = 0;
38
- }
39
- AnimationClip.WrapMode = WrapMode;
40
- return AnimationClip;
41
- }());
42
- exports.AnimationClip = AnimationClip;
43
- // cc.AnimationClip = AnimationClip;
44
- var AnimationComp = /** @class */ (function (_super) {
45
- __extends(AnimationComp, _super);
46
- function AnimationComp(defaultClip, clips, playOnLoad) {
47
- var _this = _super.call(this) || this;
48
- _this.isPaused = true;
49
- _this.elapsed = 0;
50
- _this.defaultClip = defaultClip;
51
- _this.clips = clips;
52
- _this.playOnLoad = playOnLoad;
53
- return _this;
54
- }
55
- AnimationComp.prototype.start = function () {
56
- var _this = this;
57
- if (this.playOnLoad) {
58
- setTimeout(function () {
59
- _this.play();
60
- }, 0);
61
- }
62
- // cc.log(this.clips);
63
- };
64
- AnimationComp.prototype.update = function (dt) {
65
- var _this = this;
66
- if (this.isPaused || !this.node.active) {
67
- return;
68
- }
69
- var _a = this.currentClip, curveData = _a.curveData, wrapMode = _a.wrapMode, events = _a.events, duration = _a.duration, speed = _a.speed;
70
- this.elapsed += dt * speed;
71
- var _b = curveData.comps, spriteFrame = _b.spriteFrame, nextFrame = _b.nextFrame;
72
- var nextFrameTime = spriteFrame[nextFrame].frame;
73
- events.forEach(function (evt) {
74
- var func = evt.func, frame = evt.frame, params = evt.params, isCalled = evt.isCalled;
75
- if (!isCalled && _this.elapsed >= frame) {
76
- evt.isCalled = true;
77
- // this.node.emit(func, ...params)
78
- }
79
- });
80
- if (this.elapsed >= nextFrameTime) {
81
- var imageComp = this.node.getComponent(RenderComponent_1.SpriteRender);
82
- if (imageComp) {
83
- imageComp.spriteFrame = spriteFrame[nextFrame].value;
84
- }
85
- // cc.log(spriteFrame[nextFrame].value, nextFrameTime);
86
- curveData.comps.nextFrame += 1;
87
- curveData.comps.nextFrame = cc.clampf(curveData.comps.nextFrame, 0, spriteFrame.length - 1);
88
- if (this.elapsed >= duration) {
89
- if (wrapMode === WrapMode.Loop) {
90
- curveData.comps.nextFrame = 0;
91
- this.elapsed = 0;
92
- events.forEach(function (evt) {
93
- evt.isCalled = false;
94
- });
95
- }
96
- else {
97
- this.isPaused = true;
98
- }
99
- }
100
- }
101
- };
102
- AnimationComp.prototype.getAnimationState = function (name) {
103
- return {
104
- isPlaying: !this.isPaused,
105
- };
106
- };
107
- AnimationComp.prototype.play = function (name) {
108
- this.elapsed = 0;
109
- // cc.log('play', name, this.defaultClip.name);
110
- if (!name) {
111
- if (!this.defaultClip) {
112
- return;
113
- }
114
- name = this.defaultClip.name;
115
- }
116
- else if (this.currentClip && name === this.currentClip.name) {
117
- return;
118
- }
119
- this.currentClip = this.clips.find(function (clip) { return clip.name === name; });
120
- this.currentClip.curveData.comps.nextFrame = 0;
121
- // cc.log('name', name, this.currentClip);
122
- this.currentClip.events.forEach(function (evt) {
123
- evt.isCalled = false;
124
- });
125
- this.isPaused = false;
126
- };
127
- AnimationComp.prototype.pause = function () {
128
- this.node.instance.pause();
129
- this.isPaused = true;
130
- };
131
- AnimationComp.prototype.resume = function () {
132
- this.node.instance.resume();
133
- this.isPaused = false;
134
- };
135
- AnimationComp.prototype.stop = function (name) {
136
- this.node.instance.unscheduleAllCallbacks();
137
- this.isPaused = true;
138
- };
139
- return AnimationComp;
140
- }(EnhancedComponent_1.EnhancedComponent));
141
- exports.AnimationComp = AnimationComp;
@@ -1,64 +0,0 @@
1
- import { Vec2 } from '../../polyfills';
2
- import { NoRenderComponentX } from '../core/decorator';
3
- interface ColliderProps {
4
- offset?: Vec2;
5
- tag?: number;
6
- enabled?: boolean;
7
- onCollisionEnter?: (other: Collider) => void;
8
- onCollisionExit?: (other: Collider) => void;
9
- onCollisionStay?: (other: Collider) => void;
10
- }
11
- export declare class Collider<T = ColliderProps> extends NoRenderComponentX<T> {
12
- _worldPoints: cc.Vec2[] | cc.Point[];
13
- _worldPosition: cc.Vec2 | cc.Point;
14
- _worldRadius: any;
15
- _AABB: cc.Rect;
16
- _preAabb: cc.Rect;
17
- getAABB(): cc.Rect;
18
- get world(): {
19
- points: cc.Point[] | cc.Vec2[];
20
- preAabb: cc.Rect;
21
- };
22
- }
23
- interface BoxColliderProps extends ColliderProps {
24
- width: number;
25
- height: number;
26
- }
27
- export declare class BoxCollider extends Collider<BoxColliderProps> {
28
- get size(): cc.Size;
29
- set size(s: cc.Size);
30
- update(dt: any, draw: cc.DrawNode): void;
31
- }
32
- interface CircleColliderProps extends ColliderProps {
33
- radius: number;
34
- }
35
- export declare class CircleCollider extends Collider<CircleColliderProps> {
36
- update(dt: any, draw: cc.DrawNode): void;
37
- }
38
- interface PolygonColliderProps extends ColliderProps {
39
- points: Array<Vec2>;
40
- }
41
- export declare class PolygonCollider extends Collider<PolygonColliderProps> {
42
- get points(): Vec2[];
43
- set points(points: Vec2[]);
44
- update(dt: any, draw: cc.DrawNode): void;
45
- }
46
- export declare enum CollisionType {
47
- NONE = 0,
48
- ENTER = 1,
49
- STAY = 2,
50
- EXIT = 3
51
- }
52
- export declare class Contract {
53
- _collider1: Collider;
54
- _collider2: Collider;
55
- _touching: boolean;
56
- _isPolygonPolygon: boolean;
57
- _isCircleCircle: boolean;
58
- _isPolygonCircle: boolean;
59
- constructor(collider1: Collider, collider2: Collider);
60
- updateState(): CollisionType;
61
- test(): any;
62
- }
63
- export {};
64
- //# sourceMappingURL=CollideComponent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CollideComponent.d.ts","sourceRoot":"","sources":["../../../src/gworld/components/CollideComponent.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAYtD,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC5C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC3C,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;CAC5C;AACD,qBAAa,QAAQ,CAAC,CAAC,GAAG,aAAa,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IACpE,YAAY,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAK;IACzC,cAAc,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAA;IAClC,YAAY,MAAA;IACZ,KAAK,EAAE,EAAE,CAAC,IAAI,CAAsB;IACpC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAsB;IAGvC,OAAO;IAMP,IAAI,KAAK;;;MAKR;CACF;AAED,UAAU,gBAAiB,SAAQ,aAAa;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,WAAY,SAAQ,QAAQ,CAAC,gBAAgB,CAAC;IACzD,IAAI,IAAI,IAII,EAAE,CAAC,IAAI,CAFlB;IAED,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAGlB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CA4B7B;AAED,UAAU,mBAAoB,SAAQ,aAAa;IACjD,MAAM,EAAE,MAAM,CAAA;CACf;AACD,qBAAa,cAAe,SAAQ,QAAQ,CAAC,mBAAmB,CAAC;IAC/D,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAqB7B;AAED,UAAU,oBAAqB,SAAQ,aAAa;IAClD,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;CACpB;AAED,qBAAa,eAAgB,SAAQ,QAAQ,CAAC,oBAAoB,CAAC;IACjE,IAAI,MAAM,IAAI,IAAI,EAAE,CAInB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAExB;IAED,MAAM,CAAC,EAAE,KAAA,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ;CAqB7B;AAED,oBAAY,aAAa;IACvB,IAAI,IAAA;IACJ,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,IAAI,IAAA;CACL;AASD,qBAAa,QAAQ;IACnB,UAAU,EAAE,QAAQ,CAAA;IACpB,UAAU,EAAE,QAAQ,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,gBAAgB,EAAE,OAAO,CAAA;gBAEb,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;IAsBpD,WAAW;IAeX,IAAI;CAyBL"}
@@ -1,269 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __importDefault = (this && this.__importDefault) || function (mod) {
18
- return (mod && mod.__esModule) ? mod : { "default": mod };
19
- };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.Contract = exports.CollisionType = exports.PolygonCollider = exports.CircleCollider = exports.BoxCollider = exports.Collider = void 0;
22
- var max_1 = __importDefault(require("lodash/max"));
23
- var min_1 = __importDefault(require("lodash/min"));
24
- var polyfills_1 = require("../../polyfills");
25
- var decorator_1 = require("../core/decorator");
26
- function getNodeToWorldTransformAR(node) {
27
- var t = node.instance.getNodeToWorldTransform();
28
- var anchorPointSize = node.instance.getAnchorPointInPoints();
29
- var transform = cc.affineTransformTranslate(t, anchorPointSize.x, anchorPointSize.y);
30
- return transform;
31
- }
32
- function cloneRect(origin) {
33
- return cc.rect(origin.x, origin.y, origin.width, origin.height);
34
- }
35
- var Collider = /** @class */ (function (_super) {
36
- __extends(Collider, _super);
37
- function Collider() {
38
- var _this = _super !== null && _super.apply(this, arguments) || this;
39
- _this._worldPoints = [];
40
- _this._AABB = cc.rect(0, 0, 0, 0);
41
- _this._preAabb = cc.rect(0, 0, 0, 0);
42
- return _this;
43
- }
44
- // update(dt: number, draw?: cc.DrawNode) {}
45
- Collider.prototype.getAABB = function () {
46
- var collider = this.getComponent(Collider);
47
- if (collider)
48
- return collider._AABB;
49
- return this._AABB;
50
- };
51
- Object.defineProperty(Collider.prototype, "world", {
52
- get: function () {
53
- return {
54
- points: this._worldPoints,
55
- preAabb: this._preAabb,
56
- };
57
- },
58
- enumerable: false,
59
- configurable: true
60
- });
61
- return Collider;
62
- }(decorator_1.NoRenderComponentX));
63
- exports.Collider = Collider;
64
- var BoxCollider = /** @class */ (function (_super) {
65
- __extends(BoxCollider, _super);
66
- function BoxCollider() {
67
- return _super !== null && _super.apply(this, arguments) || this;
68
- }
69
- Object.defineProperty(BoxCollider.prototype, "size", {
70
- get: function () {
71
- return cc.size(this.props.width, this.props.height);
72
- },
73
- set: function (s) {
74
- this.props.width = s.width;
75
- this.props.height = s.height;
76
- },
77
- enumerable: false,
78
- configurable: true
79
- });
80
- BoxCollider.prototype.update = function (dt, draw) {
81
- if (!this.node) {
82
- return;
83
- }
84
- var collider = this.getComponent(Collider);
85
- var _a = collider.props.offset || (0, polyfills_1.Vec2)(0, 0), x = _a.x, y = _a.y;
86
- var hw = this.props.width * 0.5;
87
- var hh = this.props.height * 0.5;
88
- var transform = getNodeToWorldTransformAR(this.node);
89
- var rect = cc.rect(x - hw, y - hh, this.props.width, this.props.height);
90
- var rectTrs = cc.rectApplyAffineTransform(rect, transform);
91
- // cc.log(rectTrs);
92
- collider._worldPoints[0] = (0, polyfills_1.Vec2)(rectTrs.x, rectTrs.y);
93
- collider._worldPoints[1] = (0, polyfills_1.Vec2)(rectTrs.x, rectTrs.y + rectTrs.height);
94
- collider._worldPoints[2] = (0, polyfills_1.Vec2)(rectTrs.x + rectTrs.width, rectTrs.y + rectTrs.height);
95
- collider._worldPoints[3] = (0, polyfills_1.Vec2)(rectTrs.x + rectTrs.width, rectTrs.y);
96
- var listX = collider._worldPoints.map(function (_a) {
97
- var x = _a.x;
98
- return x;
99
- });
100
- var listY = collider._worldPoints.map(function (_a) {
101
- var y = _a.y;
102
- return y;
103
- });
104
- collider._preAabb = cloneRect(collider._AABB);
105
- collider._AABB.x = (0, min_1.default)(listX);
106
- collider._AABB.y = (0, min_1.default)(listY);
107
- collider._AABB.width = (0, max_1.default)(listX) - collider._AABB.x;
108
- collider._AABB.height = (0, max_1.default)(listY) - collider._AABB.y;
109
- if (draw) {
110
- draw.drawPoly(collider._worldPoints, null, 3, cc.Color.DEBUG_BORDER_COLOR);
111
- }
112
- };
113
- return BoxCollider;
114
- }(Collider));
115
- exports.BoxCollider = BoxCollider;
116
- var CircleCollider = /** @class */ (function (_super) {
117
- __extends(CircleCollider, _super);
118
- function CircleCollider() {
119
- return _super !== null && _super.apply(this, arguments) || this;
120
- }
121
- CircleCollider.prototype.update = function (dt, draw) {
122
- if (!this.node) {
123
- return;
124
- }
125
- var transform = getNodeToWorldTransformAR(this.node);
126
- var collider = this.getComponent(Collider);
127
- collider._worldRadius = this.props.radius * this.node.scaleX;
128
- collider._worldPosition = cc.pointApplyAffineTransform(collider.props.offset, transform);
129
- if (draw) {
130
- draw.drawDot(collider._worldPosition, collider._worldRadius, cc.Color.DEBUG_FILL_COLOR);
131
- draw.drawCircle(collider._worldPosition, collider._worldRadius, 0, 64, true, 3, cc.Color.DEBUG_BORDER_COLOR);
132
- }
133
- collider._preAabb = cloneRect(collider._AABB);
134
- collider._AABB.x = collider._worldPosition.x - collider._worldRadius;
135
- collider._AABB.y = collider._worldPosition.y - collider._worldRadius;
136
- collider._AABB.width = collider._worldRadius * 2;
137
- collider._AABB.height = collider._AABB.width;
138
- // draw.drawRect(cc.p(this._AABB.x, this._AABB.y),
139
- // cc.p(this._worldPosition.x + this._worldRadius, this._worldPosition.y + this._worldRadius),
140
- // cc.Color.WHITE, 3, cc.Color.DEBUG_BORDER_COLOR);
141
- };
142
- return CircleCollider;
143
- }(Collider));
144
- exports.CircleCollider = CircleCollider;
145
- var PolygonCollider = /** @class */ (function (_super) {
146
- __extends(PolygonCollider, _super);
147
- function PolygonCollider() {
148
- return _super !== null && _super.apply(this, arguments) || this;
149
- }
150
- Object.defineProperty(PolygonCollider.prototype, "points", {
151
- get: function () {
152
- var _a = this.props.offset, x = _a.x, y = _a.y;
153
- var pointsList = this.props.points.map(function (p) { return (0, polyfills_1.Vec2)(p.x + x, p.y + y); });
154
- return pointsList;
155
- },
156
- set: function (points) {
157
- this.props.points = points;
158
- },
159
- enumerable: false,
160
- configurable: true
161
- });
162
- PolygonCollider.prototype.update = function (dt, draw) {
163
- if (!this.node) {
164
- return;
165
- }
166
- var transform = getNodeToWorldTransformAR(this.node);
167
- var collider = this.getComponent(Collider);
168
- collider._worldPoints = this.points.map(function (p) { return cc.pointApplyAffineTransform(p, transform); });
169
- // cc.log(polyPoints);
170
- if (draw) {
171
- draw.drawPoly(collider._worldPoints, cc.Color.DEBUG_FILL_COLOR, 3, cc.Color.DEBUG_BORDER_COLOR);
172
- }
173
- var listX = collider._worldPoints.map(function (_a) {
174
- var x = _a.x;
175
- return x;
176
- });
177
- var listY = collider._worldPoints.map(function (_a) {
178
- var y = _a.y;
179
- return y;
180
- });
181
- collider._preAabb = cloneRect(collider._AABB);
182
- collider._AABB.x = (0, min_1.default)(listX);
183
- collider._AABB.y = (0, min_1.default)(listY);
184
- collider._AABB.width = (0, max_1.default)(listX) - collider._AABB.x;
185
- collider._AABB.height = (0, max_1.default)(listY) - collider._AABB.y;
186
- // draw.drawRect(cc.p(this._AABB.x, this._AABB.y), cc.p(max(listX), max(listY)),
187
- // cc.Color.WHITE, 3, cc.Color.DEBUG_BORDER_COLOR);
188
- };
189
- return PolygonCollider;
190
- }(Collider));
191
- exports.PolygonCollider = PolygonCollider;
192
- var CollisionType;
193
- (function (CollisionType) {
194
- CollisionType[CollisionType["NONE"] = 0] = "NONE";
195
- CollisionType[CollisionType["ENTER"] = 1] = "ENTER";
196
- CollisionType[CollisionType["STAY"] = 2] = "STAY";
197
- CollisionType[CollisionType["EXIT"] = 3] = "EXIT";
198
- })(CollisionType || (exports.CollisionType = CollisionType = {}));
199
- function isPolygonCollider(col) {
200
- return col.getComponent(PolygonCollider) || col.getComponent(BoxCollider);
201
- }
202
- function isCircleCollider(col) {
203
- return col.getComponent(CircleCollider);
204
- }
205
- var Contract = /** @class */ (function () {
206
- function Contract(collider1, collider2) {
207
- this._collider1 = collider1;
208
- this._collider2 = collider2;
209
- var isCollider1Polygon = isPolygonCollider(collider1);
210
- var isCollider2Polygon = isPolygonCollider(collider2);
211
- var isCollider1Circle = isCircleCollider(collider1);
212
- var isCollider2Circle = isCircleCollider(collider2);
213
- if (isCollider1Polygon && isCollider2Polygon) {
214
- this._isPolygonPolygon = true;
215
- }
216
- else if (isCollider1Circle && isCollider2Circle) {
217
- this._isCircleCircle = true;
218
- }
219
- else if (isCollider1Polygon && isCollider2Circle) {
220
- this._isPolygonCircle = true;
221
- }
222
- else if (isCollider1Circle && isCollider2Polygon) {
223
- this._isPolygonCircle = true;
224
- this._collider1 = collider2;
225
- this._collider2 = collider1;
226
- }
227
- // cc.log(this._isPolygonPolygon);
228
- }
229
- Contract.prototype.updateState = function () {
230
- var result = this.test();
231
- var type = CollisionType.NONE;
232
- if (result && !this._touching) {
233
- this._touching = true;
234
- type = CollisionType.ENTER;
235
- }
236
- else if (result && this._touching) {
237
- type = CollisionType.STAY;
238
- }
239
- else if (!result && this._touching) {
240
- this._touching = false;
241
- type = CollisionType.EXIT;
242
- }
243
- return type;
244
- };
245
- Contract.prototype.test = function () {
246
- // if (!shouldCollider(this._collider1, this._collider2)) {
247
- // return false;
248
- // }
249
- // cc.log(this._collider1.getAABB(), this._collider2.getAABB());
250
- if (!cc.rectIntersectsRect(this._collider1.getAABB(), this._collider2.getAABB())) {
251
- return false;
252
- }
253
- if (this._isPolygonPolygon) {
254
- return cc.Intersection.polygonPolygon(this._collider1._worldPoints, this._collider2._worldPoints);
255
- }
256
- if (this._isCircleCircle) {
257
- var p1 = this._collider1;
258
- var p2 = this._collider2;
259
- return cc.Intersection.circleCircle(p1._worldPosition, p1._worldRadius, p2._worldPosition, p2._worldRadius);
260
- }
261
- if (this._isPolygonCircle) {
262
- var p2 = this._collider2;
263
- return cc.Intersection.polygonCircle(this._collider1._worldPoints, p2._worldPosition, p2._worldRadius);
264
- }
265
- return false;
266
- };
267
- return Contract;
268
- }());
269
- exports.Contract = Contract;
@@ -1,22 +0,0 @@
1
- import { Constructor } from 'entityx-ts';
2
- import { BaseComponentProps } from '../../../@types/safex';
3
- import { NodeComp } from './NodeComp';
4
- export declare class EnhancedComponent<Props = object, N extends NodeComp<any> = NodeComp<any>> {
5
- static hasRender: boolean;
6
- props: Props;
7
- node: N;
8
- enabled: boolean;
9
- constructor(data?: BaseComponentProps<EnhancedComponent> & Props);
10
- init(data?: Props): void;
11
- addComponent<T extends EnhancedComponent>(instance: T): T;
12
- getComponent<T extends EnhancedComponent>(component: Constructor<T>): T;
13
- schedule(callback: (arg: any) => void, interval: number, repeat?: number, delay?: number): void;
14
- unschedule(callback: (arg: any) => void): void;
15
- unscheduleAllCallbacks(): void;
16
- scheduleOnce(callback: (arg: any) => void, delay: number, key?: string): void;
17
- getComponentsInChildren<T extends ComponentType>(component: Constructor<T>): T[];
18
- getComponentInChildren<T extends ComponentType>(component: Constructor<T>): T;
19
- isEqual(other: EnhancedComponent): boolean;
20
- }
21
- export type ComponentType = EnhancedComponent | NodeComp;
22
- //# sourceMappingURL=EnhancedComponent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnhancedComponent.d.ts","sourceRoot":"","sources":["../../../src/gworld/components/EnhancedComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,qBAAa,iBAAiB,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;IACpF,MAAM,CAAC,SAAS,UAAO;IACvB,KAAK,EAAE,KAAK,CAAY;IACxB,IAAI,EAAE,CAAC,CAAA;IACP,OAAO,EAAE,OAAO,CAAO;gBACX,IAAI,CAAC,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK;IAGhE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK;IASjB,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAGzD,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAGvE,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAgC,EAAE,KAAK,SAAI;IAG5G,UAAU,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI;IAGvC,sBAAsB;IAGtB,YAAY,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAGtE,uBAAuB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;IAGhF,sBAAsB,CAAC,CAAC,SAAS,aAAa,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;IAG7E,OAAO,CAAC,KAAK,EAAE,iBAAiB;CAGjC;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,QAAQ,CAAA"}