@safe-engine/cocos 1.5.2 → 1.5.5

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 (97) hide show
  1. package/dist/animation/AnimationComponent.d.ts +63 -0
  2. package/dist/animation/AnimationComponent.d.ts.map +1 -0
  3. package/dist/animation/AnimationComponent.js +119 -0
  4. package/dist/animation/AnimationSystem.d.ts +6 -0
  5. package/dist/animation/AnimationSystem.d.ts.map +1 -0
  6. package/dist/animation/AnimationSystem.js +22 -0
  7. package/dist/animation/index.d.ts +2 -0
  8. package/dist/animation/index.d.ts.map +1 -0
  9. package/dist/animation/index.js +7 -0
  10. package/dist/app.d.ts.map +1 -1
  11. package/dist/app.js +40 -65
  12. package/dist/box2d-wasm/ContactListener.d.ts +12 -0
  13. package/dist/box2d-wasm/ContactListener.d.ts.map +1 -0
  14. package/dist/box2d-wasm/ContactListener.js +64 -0
  15. package/dist/box2d-wasm/PhysicsComponent.d.ts +50 -0
  16. package/dist/box2d-wasm/PhysicsComponent.d.ts.map +1 -0
  17. package/dist/box2d-wasm/PhysicsComponent.js +16 -0
  18. package/dist/box2d-wasm/PhysicsSprite.d.ts +12 -0
  19. package/dist/box2d-wasm/PhysicsSprite.d.ts.map +1 -0
  20. package/dist/box2d-wasm/PhysicsSprite.js +51 -0
  21. package/dist/box2d-wasm/PhysicsSystem.d.ts +15 -0
  22. package/dist/box2d-wasm/PhysicsSystem.d.ts.map +1 -0
  23. package/dist/box2d-wasm/PhysicsSystem.js +139 -0
  24. package/dist/box2d-wasm/debugDraw.d.ts +66 -0
  25. package/dist/box2d-wasm/debugDraw.d.ts.map +1 -0
  26. package/dist/box2d-wasm/debugDraw.js +210 -0
  27. package/dist/box2d-wasm/index.d.ts +6 -0
  28. package/dist/box2d-wasm/index.d.ts.map +1 -0
  29. package/dist/box2d-wasm/index.js +10 -0
  30. package/dist/collider/CollideComponent.js +98 -159
  31. package/dist/collider/CollideSystem.js +63 -79
  32. package/dist/collider/index.d.ts +1 -1
  33. package/dist/collider/index.d.ts.map +1 -1
  34. package/dist/collider/index.js +11 -9
  35. package/dist/dragonbones/PixiDragonBonesSprite.js +15 -19
  36. package/dist/dragonbones/index.js +38 -68
  37. package/dist/gworld/components/AnimationComponent.d.ts +2 -2
  38. package/dist/gworld/components/CollideComponent.d.ts +3 -3
  39. package/dist/gworld/components/EnhancedComponent.js +29 -36
  40. package/dist/gworld/components/GUIComponent.js +50 -118
  41. package/dist/gworld/components/NoRenderComponent.js +25 -65
  42. package/dist/gworld/components/NodeComp.d.ts.map +1 -1
  43. package/dist/gworld/components/NodeComp.js +237 -317
  44. package/dist/gworld/components/RenderComponent.js +46 -104
  45. package/dist/gworld/core/NodePool.js +13 -20
  46. package/dist/gworld/core/Scene.js +11 -35
  47. package/dist/gworld/core/decorator.js +12 -42
  48. package/dist/gworld/index.js +13 -42
  49. package/dist/gworld/systems/CollideSystem.d.ts +1 -2
  50. package/dist/gworld/systems/CollideSystem.d.ts.map +1 -1
  51. package/dist/gworld/systems/CollideSystem.js +2 -12
  52. package/dist/gworld/systems/GUISystem.js +105 -120
  53. package/dist/gworld/systems/NoRenderSystem.d.ts.map +1 -1
  54. package/dist/gworld/systems/NoRenderSystem.js +70 -80
  55. package/dist/gworld/systems/RenderSystem.js +64 -78
  56. package/dist/helper/Intersection.js +33 -40
  57. package/dist/helper/action.js +8 -21
  58. package/dist/helper/director.js +2 -6
  59. package/dist/helper/math.js +9 -15
  60. package/dist/helper/utils.js +28 -37
  61. package/dist/index.d.ts +5 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +20 -31
  64. package/dist/polyfills.js +69 -97
  65. package/dist/richtext/RichTextComp.js +27 -55
  66. package/dist/richtext/RichTextSystem.js +17 -25
  67. package/dist/richtext/html-text-parser.js +36 -40
  68. package/dist/richtext/index.js +5 -8
  69. package/dist/safex.js +1 -2
  70. package/dist/spine/CCSkeleton.d.ts.map +1 -1
  71. package/dist/spine/CCSkeleton.js +25 -61
  72. package/dist/spine/CCSkeletonAnimation.js +18 -54
  73. package/dist/spine/CCSkeletonCanvasRenderCmd.d.ts +1 -1
  74. package/dist/spine/CCSkeletonCanvasRenderCmd.d.ts.map +1 -1
  75. package/dist/spine/CCSkeletonCanvasRenderCmd.js +39 -43
  76. package/dist/spine/CCSkeletonTexture.js +4 -40
  77. package/dist/spine/CCSkeletonWebGLRenderCmd.js +56 -92
  78. package/dist/spine/index.js +37 -63
  79. package/package.json +4 -1
  80. package/dist/dragonbones/cocos/CocosArmatureDisplay.d.ts +0 -77
  81. package/dist/dragonbones/cocos/CocosArmatureDisplay.d.ts.map +0 -1
  82. package/dist/dragonbones/cocos/CocosArmatureDisplay.js +0 -227
  83. package/dist/dragonbones/cocos/CocosFactory.d.ts +0 -128
  84. package/dist/dragonbones/cocos/CocosFactory.d.ts.map +0 -1
  85. package/dist/dragonbones/cocos/CocosFactory.js +0 -231
  86. package/dist/dragonbones/cocos/CocosSlot.d.ts +0 -49
  87. package/dist/dragonbones/cocos/CocosSlot.d.ts.map +0 -1
  88. package/dist/dragonbones/cocos/CocosSlot.js +0 -385
  89. package/dist/dragonbones/cocos/CocosTextureAtlasData.d.ts +0 -53
  90. package/dist/dragonbones/cocos/CocosTextureAtlasData.d.ts.map +0 -1
  91. package/dist/dragonbones/cocos/CocosTextureAtlasData.js +0 -158
  92. package/dist/dragonbones/dragonBones.d.ts +0 -3
  93. package/dist/dragonbones/dragonBones.d.ts.map +0 -1
  94. package/dist/dragonbones/dragonBones.js +0 -4788
  95. package/dist/helper/NodePool.d.ts +0 -9
  96. package/dist/helper/NodePool.d.ts.map +0 -1
  97. package/dist/helper/NodePool.js +0 -29
@@ -1,126 +1,111 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GUISystem = void 0;
4
- var entityx_ts_1 = require("entityx-ts");
5
- var __1 = require("../..");
6
- var polyfills_1 = require("../../polyfills");
7
- var GUIComponent_1 = require("../components/GUIComponent");
8
- var NodeComp_1 = require("../components/NodeComp");
9
- var GUISystem = /** @class */ (function () {
10
- function GUISystem() {
11
- var _this = this;
12
- this.onAddButtonComp = function (_a) {
13
- var entity = _a.entity, button = _a.component;
14
- var nodeComp = entity.getComponent(NodeComp_1.NodeComp);
15
- var _b = button.props.zoomScale, zoomScale = _b === void 0 ? 1.2 : _b;
16
- button.node = nodeComp;
17
- var lastScaleX = nodeComp.scaleX;
18
- var lastScaleY = nodeComp.scaleY;
19
- var touchComp = entity.assign(new __1.TouchEventRegister());
20
- touchComp.props.onTouchStart = function (touch) {
21
- var p = touch.getLocation();
22
- // console.log('onTouchBegan', p, lastScaleX, lastScaleY)
23
- var rect = nodeComp.getBoundingBox();
24
- var nodeSpaceLocation = nodeComp.parent.convertToNodeSpace(p);
25
- if (rect.contains(nodeSpaceLocation) && button.enabled && nodeComp.active) {
26
- var scale = cc.scaleTo(0.3, zoomScale * lastScaleX, lastScaleY * zoomScale);
27
- nodeComp.runAction(scale);
28
- button.props.onPress(button);
29
- }
30
- };
31
- touchComp.props.onTouchEnd = function () {
32
- var scale = cc.scaleTo(0.3, lastScaleX, lastScaleY);
1
+ import { EventTypes } from 'entityx-ts';
2
+ import { TouchEventRegister } from '../..';
3
+ import { Vec2 } from '../../polyfills';
4
+ import { BlockInputEventsComp, ButtonComp, FillType, InputComp, LabelComp, LabelOutlineComp, LabelShadowComp, ProgressTimerComp, ScrollViewComp, } from '../components/GUIComponent';
5
+ import { NodeComp } from '../components/NodeComp';
6
+ export class GUISystem {
7
+ defaultFont;
8
+ configure(event_manager) {
9
+ event_manager.subscribe(EventTypes.ComponentAdded, ButtonComp, this.onAddButtonComp);
10
+ event_manager.subscribe(EventTypes.ComponentAdded, ProgressTimerComp, this.onAddProgressTimerComp);
11
+ event_manager.subscribe(EventTypes.ComponentAdded, LabelComp, this.onAddLabelComp);
12
+ event_manager.subscribe(EventTypes.ComponentAdded, LabelOutlineComp, this.onAddLabelOutlineComp);
13
+ event_manager.subscribe(EventTypes.ComponentAdded, LabelShadowComp, this.onAddLabelShadowComp);
14
+ event_manager.subscribe(EventTypes.ComponentAdded, ScrollViewComp, this.onAddScrollViewComp);
15
+ event_manager.subscribe(EventTypes.ComponentAdded, InputComp, this.onAddInputComp);
16
+ event_manager.subscribe(EventTypes.ComponentAdded, BlockInputEventsComp, this.onAddBlockInputEventsComp);
17
+ }
18
+ onAddButtonComp = ({ entity, component: button }) => {
19
+ const nodeComp = entity.getComponent(NodeComp);
20
+ const { zoomScale = 1.2 } = button.props;
21
+ button.node = nodeComp;
22
+ const lastScaleX = nodeComp.scaleX;
23
+ const lastScaleY = nodeComp.scaleY;
24
+ const touchComp = entity.assign(new TouchEventRegister());
25
+ touchComp.props.onTouchStart = function (touch) {
26
+ const p = touch.getLocation();
27
+ // console.log('onTouchBegan', p, lastScaleX, lastScaleY)
28
+ const rect = nodeComp.getBoundingBox();
29
+ const nodeSpaceLocation = nodeComp.parent.convertToNodeSpace(p);
30
+ if (rect.contains(nodeSpaceLocation) && button.enabled && nodeComp.active) {
31
+ const scale = cc.scaleTo(0.3, zoomScale * lastScaleX, lastScaleY * zoomScale);
33
32
  nodeComp.runAction(scale);
34
- };
35
- touchComp.props.onTouchCancel = touchComp.props.onTouchEnd;
36
- };
37
- this.onAddProgressTimerComp = function (_a) {
38
- var entity = _a.entity, bar = _a.component;
39
- var _b = bar.props, spriteFrame = _b.spriteFrame, _c = _b.fillType, fillType = _c === void 0 ? GUIComponent_1.FillType.HORIZONTAL : _c, _d = _b.fillRange, fillRange = _d === void 0 ? 1 : _d, _e = _b.fillCenter, fillCenter = _e === void 0 ? (0, polyfills_1.Vec2)(1, 0) : _e;
40
- var sprite = new cc.Sprite(spriteFrame);
41
- var pTimer = new cc.ProgressTimer(sprite);
42
- var ptt = fillType === GUIComponent_1.FillType.RADIAL ? cc.ProgressTimer.TYPE_RADIAL : cc.ProgressTimer.TYPE_BAR;
43
- pTimer.setType(ptt);
44
- if (fillType !== GUIComponent_1.FillType.RADIAL) {
45
- var rate = fillType === GUIComponent_1.FillType.HORIZONTAL ? cc.p(1, 0) : cc.p(0, 1);
46
- pTimer.setBarChangeRate(rate);
47
- }
48
- pTimer.setPercentage(fillRange * 100);
49
- pTimer.setMidpoint(fillCenter);
50
- bar.node = entity.assign(new NodeComp_1.NodeComp(pTimer, entity));
51
- };
52
- this.onAddLabelComp = function (_a) {
53
- var entity = _a.entity, label = _a.component;
54
- var _b = label.props, _c = _b.string, string = _c === void 0 ? '' : _c, _d = _b.font, font = _d === void 0 ? _this.defaultFont : _d, _e = _b.size, size = _e === void 0 ? 64 : _e;
55
- var fontName = cc.path.basename(font, '.ttf');
56
- var node = new ccui.Text(string, fontName, size);
57
- node.setTextVerticalAlignment(cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM);
58
- label.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
59
- };
60
- this.onAddLabelOutlineComp = function (_a) {
61
- var entity = _a.entity, outline = _a.component;
62
- var _b = outline.props, color = _b.color, width = _b.width;
63
- var node = entity.getComponent(NodeComp_1.NodeComp);
64
- if (node.instance instanceof ccui.Text) {
65
- node.instance.enableOutline(color, width);
66
- }
67
- };
68
- this.onAddLabelShadowComp = function (_a) {
69
- var entity = _a.entity, shadow = _a.component;
70
- var _b = shadow.props, color = _b.color, blur = _b.blur, offset = _b.offset;
71
- var node = entity.getComponent(NodeComp_1.NodeComp);
72
- if (node.instance instanceof ccui.Text) {
73
- node.instance.enableShadow(color, offset, blur);
74
- }
75
- };
76
- this.onAddScrollViewComp = function (_a) {
77
- var entity = _a.entity, scrollView = _a.component;
78
- var _b = scrollView.props, viewSize = _b.viewSize, contentSize = _b.contentSize, _c = _b.direction, direction = _c === void 0 ? cc.SCROLLVIEW_DIRECTION_VERTICAL : _c;
79
- var node = new cc.ScrollView(viewSize);
80
- node.setContentSize(contentSize);
81
- node.setViewSize(viewSize);
82
- node.setDirection(direction);
83
- // node.setContentOffset(cc.p(0, viewSize.height - contentSize.height))
84
- // node.setTouchEnabled(false)
85
- node.setBounceable(false);
86
- scrollView.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
87
- };
88
- this.onAddBlockInputEventsComp = function (_a) {
89
- var entity = _a.entity, blockInput = _a.component;
90
- var node = entity.getComponent(NodeComp_1.NodeComp);
91
- if (node.instance instanceof ccui.ImageView) {
92
- node.instance.setTouchEnabled(true);
93
- node.instance.setScale9Enabled(true);
33
+ button.props.onPress(button);
94
34
  }
95
- blockInput.node = node;
96
35
  };
97
- this.onAddInputComp = function (_a) {
98
- var entity = _a.entity, textInput = _a.component;
99
- var _b = textInput.props, _c = _b.placeHolder, placeHolder = _c === void 0 ? '' : _c, _d = _b.font, font = _d === void 0 ? _this.defaultFont : _d, _e = _b.size, size = _e === void 0 ? 64 : _e, _f = _b.maxLength, maxLength = _f === void 0 ? 20 : _f, _g = _b.isPassword, isPassword = _g === void 0 ? false : _g;
100
- var textField = new ccui.TextField();
101
- textField.setPlaceHolder(placeHolder);
102
- textField.setFontName(font);
103
- textField.setFontSize(size);
104
- textField.setTextColor(cc.color(255, 255, 255));
105
- textField.setMaxLengthEnabled(true);
106
- textField.setMaxLength(maxLength);
107
- textField.setPasswordEnabled(isPassword);
108
- textInput.node = entity.assign(new NodeComp_1.NodeComp(textField, entity));
36
+ touchComp.props.onTouchEnd = function () {
37
+ const scale = cc.scaleTo(0.3, lastScaleX, lastScaleY);
38
+ nodeComp.runAction(scale);
109
39
  };
110
- }
111
- GUISystem.prototype.configure = function (event_manager) {
112
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.ButtonComp, this.onAddButtonComp);
113
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.ProgressTimerComp, this.onAddProgressTimerComp);
114
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.LabelComp, this.onAddLabelComp);
115
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.LabelOutlineComp, this.onAddLabelOutlineComp);
116
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.LabelShadowComp, this.onAddLabelShadowComp);
117
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.ScrollViewComp, this.onAddScrollViewComp);
118
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.InputComp, this.onAddInputComp);
119
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, GUIComponent_1.BlockInputEventsComp, this.onAddBlockInputEventsComp);
40
+ touchComp.props.onTouchCancel = touchComp.props.onTouchEnd;
120
41
  };
121
- GUISystem.prototype.update = function () {
122
- // throw new Error('Method not implemented.');
42
+ onAddProgressTimerComp = ({ entity, component: bar }) => {
43
+ const { spriteFrame, fillType = FillType.HORIZONTAL, fillRange = 1, fillCenter = Vec2(1, 0) } = bar.props;
44
+ const sprite = new cc.Sprite(spriteFrame);
45
+ const pTimer = new cc.ProgressTimer(sprite);
46
+ const ptt = fillType === FillType.RADIAL ? cc.ProgressTimer.TYPE_RADIAL : cc.ProgressTimer.TYPE_BAR;
47
+ pTimer.setType(ptt);
48
+ if (fillType !== FillType.RADIAL) {
49
+ const rate = fillType === FillType.HORIZONTAL ? cc.p(1, 0) : cc.p(0, 1);
50
+ pTimer.setBarChangeRate(rate);
51
+ }
52
+ pTimer.setPercentage(fillRange * 100);
53
+ pTimer.setMidpoint(fillCenter);
54
+ bar.node = entity.assign(new NodeComp(pTimer, entity));
55
+ };
56
+ onAddLabelComp = ({ entity, component: label }) => {
57
+ const { string = '', font = this.defaultFont, size = 64 } = label.props;
58
+ const fontName = cc.path.basename(font, '.ttf');
59
+ const node = new ccui.Text(string, fontName, size);
60
+ node.setTextVerticalAlignment(cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM);
61
+ label.node = entity.assign(new NodeComp(node, entity));
62
+ };
63
+ onAddLabelOutlineComp = ({ entity, component: outline }) => {
64
+ const { color, width } = outline.props;
65
+ const node = entity.getComponent(NodeComp);
66
+ if (node.instance instanceof ccui.Text) {
67
+ node.instance.enableOutline(color, width);
68
+ }
69
+ };
70
+ onAddLabelShadowComp = ({ entity, component: shadow }) => {
71
+ const { color, blur, offset } = shadow.props;
72
+ const node = entity.getComponent(NodeComp);
73
+ if (node.instance instanceof ccui.Text) {
74
+ node.instance.enableShadow(color, offset, blur);
75
+ }
123
76
  };
124
- return GUISystem;
125
- }());
126
- exports.GUISystem = GUISystem;
77
+ onAddScrollViewComp = ({ entity, component: scrollView }) => {
78
+ const { viewSize, contentSize, direction = cc.SCROLLVIEW_DIRECTION_VERTICAL } = scrollView.props;
79
+ const node = new cc.ScrollView(viewSize);
80
+ node.setContentSize(contentSize);
81
+ node.setViewSize(viewSize);
82
+ node.setDirection(direction);
83
+ // node.setContentOffset(cc.p(0, viewSize.height - contentSize.height))
84
+ // node.setTouchEnabled(false)
85
+ node.setBounceable(false);
86
+ scrollView.node = entity.assign(new NodeComp(node, entity));
87
+ };
88
+ onAddBlockInputEventsComp = ({ entity, component: blockInput }) => {
89
+ const node = entity.getComponent(NodeComp);
90
+ if (node.instance instanceof ccui.ImageView) {
91
+ node.instance.setTouchEnabled(true);
92
+ node.instance.setScale9Enabled(true);
93
+ }
94
+ blockInput.node = node;
95
+ };
96
+ onAddInputComp = ({ entity, component: textInput }) => {
97
+ const { placeHolder = '', font = this.defaultFont, size = 64, maxLength = 20, isPassword = false } = textInput.props;
98
+ const textField = new ccui.TextField();
99
+ textField.setPlaceHolder(placeHolder);
100
+ textField.setFontName(font);
101
+ textField.setFontSize(size);
102
+ textField.setTextColor(cc.color(255, 255, 255));
103
+ textField.setMaxLengthEnabled(true);
104
+ textField.setMaxLength(maxLength);
105
+ textField.setPasswordEnabled(isPassword);
106
+ textInput.node = entity.assign(new NodeComp(textField, entity));
107
+ };
108
+ update() {
109
+ // throw new Error('Method not implemented.');
110
+ }
111
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"NoRenderSystem.d.ts","sourceRoot":"","sources":["../../../src/gworld/systems/NoRenderSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAM5E,qBAAa,cAAe,YAAW,MAAM;IAC3C,SAAS,CAAC,aAAa,EAAE,YAAY;IAMrC,uBAAuB;;;eAiDtB;IAED,kBAAkB;;eAIjB;IAED,2BAA2B;;eAM1B;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE"}
1
+ {"version":3,"file":"NoRenderSystem.d.ts","sourceRoot":"","sources":["../../../src/gworld/systems/NoRenderSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAc,MAAM,EAAE,MAAM,YAAY,CAAA;AAM5E,qBAAa,cAAe,YAAW,MAAM;IAC3C,SAAS,CAAC,aAAa,EAAE,YAAY;IAMrC,uBAAuB,GAAI;;;KAAqB,UAiD/C;IAED,kBAAkB,GAAI;;KAAa,UAIlC;IAED,2BAA2B,GAAI;;KAAa,UAM3C;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE"}
@@ -1,85 +1,75 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NoRenderSystem = void 0;
4
- var entityx_ts_1 = require("entityx-ts");
5
- var NodeComp_1 = require("../components/NodeComp");
6
- var NoRenderComponent_1 = require("../components/NoRenderComponent");
7
- var NoRenderSystem = /** @class */ (function () {
8
- function NoRenderSystem() {
9
- this.onAddTouchEventRegister = function (_a) {
10
- var entity = _a.entity, component = _a.component;
11
- var ett = entity;
12
- var touchComp = component;
13
- var nodeComp = ett.getComponent(NodeComp_1.NodeComp);
14
- touchComp.node = nodeComp;
15
- touchComp.listener = cc.eventManager.addListener({
16
- event: cc.EventListener.TOUCH_ONE_BY_ONE,
17
- swallowTouches: true,
18
- onTouchBegan: function (touch) {
19
- var onTouchStart = touchComp.props.onTouchStart;
20
- // console.log('onTouchBegan', onTouchStart)
21
- if (!nodeComp.parent) {
22
- if (onTouchStart) {
23
- onTouchStart(touch, nodeComp);
24
- }
25
- return true;
26
- }
27
- var p = touch.getLocation();
28
- var rect = nodeComp.getBoundingBox();
29
- var nodeSpaceLocation = nodeComp.parent.convertToNodeSpace(p);
30
- if (rect.contains(nodeSpaceLocation)) {
31
- if (onTouchStart) {
32
- onTouchStart(touch, nodeComp);
33
- }
34
- return true;
1
+ import { EventTypes } from 'entityx-ts';
2
+ import { NodeComp } from '../components/NodeComp';
3
+ import { ExtraDataComp, TouchEventRegister } from '../components/NoRenderComponent';
4
+ export class NoRenderSystem {
5
+ configure(event_manager) {
6
+ event_manager.subscribe(EventTypes.ComponentAdded, ExtraDataComp, this.onAddExtraDataComp);
7
+ event_manager.subscribe(EventTypes.ComponentAdded, TouchEventRegister, this.onAddTouchEventRegister);
8
+ event_manager.subscribe(EventTypes.ComponentRemoved, TouchEventRegister, this.onRemovedTouchEventRegister);
9
+ }
10
+ onAddTouchEventRegister = ({ entity, component }) => {
11
+ const ett = entity;
12
+ const touchComp = component;
13
+ const nodeComp = ett.getComponent(NodeComp);
14
+ touchComp.node = nodeComp;
15
+ touchComp.listener = cc.eventManager.addListener({
16
+ event: cc.EventListener.TOUCH_ONE_BY_ONE,
17
+ swallowTouches: true,
18
+ onTouchBegan: function (touch) {
19
+ const { onTouchStart } = touchComp.props;
20
+ // console.log('onTouchBegan', onTouchStart)
21
+ if (!nodeComp.parent) {
22
+ if (onTouchStart) {
23
+ onTouchStart(touch, nodeComp);
35
24
  }
36
- },
37
- onTouchMoved: function (touch) {
38
- var onTouchMove = touchComp.props.onTouchMove;
39
- if (!onTouchMove)
40
- return false;
41
- onTouchMove(touch, nodeComp);
42
- return true;
43
- },
44
- onTouchEnded: function (touch) {
45
- var onTouchEnd = touchComp.props.onTouchEnd;
46
- if (!onTouchEnd)
47
- return false;
48
- onTouchEnd(touch, nodeComp);
49
25
  return true;
50
- },
51
- onTouchCancelled: function (touch) {
52
- var onTouchCancel = touchComp.props.onTouchCancel;
53
- if (!onTouchCancel)
54
- return false;
55
- onTouchCancel(touch, nodeComp);
26
+ }
27
+ const p = touch.getLocation();
28
+ const rect = nodeComp.getBoundingBox();
29
+ const nodeSpaceLocation = nodeComp.parent.convertToNodeSpace(p);
30
+ if (rect.contains(nodeSpaceLocation)) {
31
+ if (onTouchStart) {
32
+ onTouchStart(touch, nodeComp);
33
+ }
56
34
  return true;
57
- },
58
- }, nodeComp.instance);
59
- };
60
- this.onAddExtraDataComp = function (_a) {
61
- var component = _a.component;
62
- var extra = component;
63
- var _b = extra.props, key = _b.key, value = _b.value;
64
- extra.data[key] = value;
65
- };
66
- this.onRemovedTouchEventRegister = function (_a) {
67
- var component = _a.component;
68
- var touchComp = component;
69
- if (touchComp.listener) {
70
- cc.eventManager.removeListener(touchComp.listener);
71
- touchComp.listener = null;
72
- }
73
- };
74
- }
75
- NoRenderSystem.prototype.configure = function (event_manager) {
76
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, NoRenderComponent_1.ExtraDataComp, this.onAddExtraDataComp);
77
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, NoRenderComponent_1.TouchEventRegister, this.onAddTouchEventRegister);
78
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentRemoved, NoRenderComponent_1.TouchEventRegister, this.onRemovedTouchEventRegister);
35
+ }
36
+ },
37
+ onTouchMoved: function (touch) {
38
+ const { onTouchMove } = touchComp.props;
39
+ if (!onTouchMove)
40
+ return false;
41
+ onTouchMove(touch, nodeComp);
42
+ return true;
43
+ },
44
+ onTouchEnded: function (touch) {
45
+ const { onTouchEnd } = touchComp.props;
46
+ if (!onTouchEnd)
47
+ return false;
48
+ onTouchEnd(touch, nodeComp);
49
+ return true;
50
+ },
51
+ onTouchCancelled: function (touch) {
52
+ const { onTouchCancel } = touchComp.props;
53
+ if (!onTouchCancel)
54
+ return false;
55
+ onTouchCancel(touch, nodeComp);
56
+ return true;
57
+ },
58
+ }, nodeComp.instance);
79
59
  };
80
- NoRenderSystem.prototype.update = function () {
81
- // throw new Error('Method not implemented.');
60
+ onAddExtraDataComp = ({ component }) => {
61
+ const extra = component;
62
+ const { key, value } = extra.props;
63
+ extra.data[key] = value;
64
+ };
65
+ onRemovedTouchEventRegister = ({ component }) => {
66
+ const touchComp = component;
67
+ if (touchComp.listener) {
68
+ cc.eventManager.removeListener(touchComp.listener);
69
+ touchComp.listener = null;
70
+ }
82
71
  };
83
- return NoRenderSystem;
84
- }());
85
- exports.NoRenderSystem = NoRenderSystem;
72
+ update() {
73
+ // throw new Error('Method not implemented.');
74
+ }
75
+ }
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RenderSystem = exports.SpriteTypes = void 0;
4
- var entityx_ts_1 = require("entityx-ts");
5
- var polyfills_1 = require("../../polyfills");
6
- var NodeComp_1 = require("../components/NodeComp");
7
- var RenderComponent_1 = require("../components/RenderComponent");
8
- var SpriteTypes;
1
+ import { EventTypes } from 'entityx-ts';
2
+ import { BLUE, RED } from '../../polyfills';
3
+ import { NodeComp } from '../components/NodeComp';
4
+ import { GraphicsRender, MaskRender, NodeRender, ParticleComp, SpriteRender, TiledMap } from '../components/RenderComponent';
5
+ export var SpriteTypes;
9
6
  (function (SpriteTypes) {
10
7
  SpriteTypes[SpriteTypes["SIMPLE"] = 0] = "SIMPLE";
11
8
  SpriteTypes[SpriteTypes["SLICED"] = 1] = "SLICED";
@@ -13,76 +10,65 @@ var SpriteTypes;
13
10
  SpriteTypes[SpriteTypes["FILLED"] = 3] = "FILLED";
14
11
  SpriteTypes[SpriteTypes["MESH"] = 4] = "MESH";
15
12
  SpriteTypes[SpriteTypes["ANIMATION"] = 5] = "ANIMATION";
16
- })(SpriteTypes || (exports.SpriteTypes = SpriteTypes = {}));
17
- var RenderSystem = /** @class */ (function () {
18
- function RenderSystem() {
19
- this.onAddNodeRender = function (_a) {
20
- var entity = _a.entity;
21
- var nodeRenderComp = entity.getComponent(RenderComponent_1.NodeRender);
22
- var node = new cc.Node();
23
- var ett = entity;
24
- nodeRenderComp.node = ett.assign(new NodeComp_1.NodeComp(node, ett));
25
- };
26
- this.onAddSpriteRender = function (_a) {
27
- var entity = _a.entity, spriteComp = _a.component;
28
- var spriteFrame = spriteComp.props.spriteFrame;
29
- var frame = cc.spriteFrameCache.getSpriteFrame(spriteFrame);
30
- // console.log('frame', spriteFrame, frame)
31
- var node = new cc.Sprite(frame);
32
- var ett = entity;
33
- spriteComp.node = ett.assign(new NodeComp_1.NodeComp(node, ett));
34
- };
35
- this.onAddMaskRender = function (_a) {
36
- var entity = _a.entity, maskComp = _a.component;
37
- var inverted = maskComp.props.inverted;
38
- var node = new cc.ClippingNode();
39
- node.setInverted(inverted);
40
- maskComp.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
41
- };
42
- this.onAddGraphicsRender = function (_a) {
43
- var entity = _a.entity;
44
- var graphicsComp = entity.getComponent(RenderComponent_1.GraphicsRender);
45
- var _b = graphicsComp.props, _c = _b.lineWidth, lineWidth = _c === void 0 ? 5 : _c, _d = _b.strokeColor, strokeColor = _d === void 0 ? polyfills_1.RED : _d, _e = _b.fillColor, fillColor = _e === void 0 ? polyfills_1.BLUE : _e;
46
- var node = new cc.DrawNode();
47
- node.setColor(strokeColor);
48
- node.setDrawColor(fillColor);
49
- node.setLineWidth(lineWidth);
50
- graphicsComp.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
51
- };
52
- this.onAddParticleComp = function (_a) {
53
- var entity = _a.entity;
54
- var particleComp = entity.getComponent(RenderComponent_1.ParticleComp);
55
- var plistFile = particleComp.props.plistFile;
56
- var node = new cc.ParticleSystem(plistFile);
57
- particleComp.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
58
- };
59
- this.onAddTiledMap = function (_a) {
60
- var entity = _a.entity;
61
- var tiledMapComp = entity.getComponent(RenderComponent_1.TiledMap);
62
- var mapFile = tiledMapComp.props.mapFile;
63
- var node = new cc.TMXTiledMap(mapFile);
64
- tiledMapComp.node = entity.assign(new NodeComp_1.NodeComp(node, entity));
65
- };
66
- this.onRemovedNodeComp = function (_a) {
67
- var component = _a.component;
68
- var node = component;
69
- if (node.instance) {
70
- node.instance.removeFromParent(true);
71
- }
72
- };
13
+ })(SpriteTypes || (SpriteTypes = {}));
14
+ export class RenderSystem {
15
+ configure(event_manager) {
16
+ event_manager.subscribe(EventTypes.ComponentAdded, NodeRender, this.onAddNodeRender);
17
+ event_manager.subscribe(EventTypes.ComponentAdded, SpriteRender, this.onAddSpriteRender);
18
+ event_manager.subscribe(EventTypes.ComponentAdded, MaskRender, this.onAddMaskRender);
19
+ event_manager.subscribe(EventTypes.ComponentAdded, GraphicsRender, this.onAddGraphicsRender);
20
+ event_manager.subscribe(EventTypes.ComponentAdded, ParticleComp, this.onAddParticleComp);
21
+ event_manager.subscribe(EventTypes.ComponentAdded, TiledMap, this.onAddTiledMap);
22
+ event_manager.subscribe(EventTypes.ComponentRemoved, NodeComp, this.onRemovedNodeComp);
73
23
  }
74
- RenderSystem.prototype.configure = function (event_manager) {
75
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.NodeRender, this.onAddNodeRender);
76
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.SpriteRender, this.onAddSpriteRender);
77
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.MaskRender, this.onAddMaskRender);
78
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.GraphicsRender, this.onAddGraphicsRender);
79
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.ParticleComp, this.onAddParticleComp);
80
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentAdded, RenderComponent_1.TiledMap, this.onAddTiledMap);
81
- event_manager.subscribe(entityx_ts_1.EventTypes.ComponentRemoved, NodeComp_1.NodeComp, this.onRemovedNodeComp);
24
+ onAddNodeRender = ({ entity }) => {
25
+ const nodeRenderComp = entity.getComponent(NodeRender);
26
+ const node = new cc.Node();
27
+ const ett = entity;
28
+ nodeRenderComp.node = ett.assign(new NodeComp(node, ett));
82
29
  };
83
- RenderSystem.prototype.update = function () {
84
- // throw new Error('Method not implemented.');
30
+ onAddSpriteRender = ({ entity, component: spriteComp }) => {
31
+ const { spriteFrame } = spriteComp.props;
32
+ const frame = cc.spriteFrameCache.getSpriteFrame(spriteFrame);
33
+ // console.log('frame', spriteFrame, frame)
34
+ const node = new cc.Sprite(frame);
35
+ const ett = entity;
36
+ spriteComp.node = ett.assign(new NodeComp(node, ett));
37
+ };
38
+ onAddMaskRender = ({ entity, component: maskComp }) => {
39
+ const { inverted } = maskComp.props;
40
+ const node = new cc.ClippingNode();
41
+ node.setInverted(inverted);
42
+ maskComp.node = entity.assign(new NodeComp(node, entity));
43
+ };
44
+ onAddGraphicsRender = ({ entity }) => {
45
+ const graphicsComp = entity.getComponent(GraphicsRender);
46
+ const { lineWidth = 5, strokeColor = RED, fillColor = BLUE } = graphicsComp.props;
47
+ const node = new cc.DrawNode();
48
+ node.setColor(strokeColor);
49
+ node.setDrawColor(fillColor);
50
+ node.setLineWidth(lineWidth);
51
+ graphicsComp.node = entity.assign(new NodeComp(node, entity));
52
+ };
53
+ onAddParticleComp = ({ entity }) => {
54
+ const particleComp = entity.getComponent(ParticleComp);
55
+ const { plistFile } = particleComp.props;
56
+ const node = new cc.ParticleSystem(plistFile);
57
+ particleComp.node = entity.assign(new NodeComp(node, entity));
85
58
  };
86
- return RenderSystem;
87
- }());
88
- exports.RenderSystem = RenderSystem;
59
+ onAddTiledMap = ({ entity }) => {
60
+ const tiledMapComp = entity.getComponent(TiledMap);
61
+ const { mapFile } = tiledMapComp.props;
62
+ const node = new cc.TMXTiledMap(mapFile);
63
+ tiledMapComp.node = entity.assign(new NodeComp(node, entity));
64
+ };
65
+ onRemovedNodeComp = ({ component }) => {
66
+ const node = component;
67
+ if (node.instance) {
68
+ node.instance.removeFromParent(true);
69
+ }
70
+ };
71
+ update() {
72
+ // throw new Error('Method not implemented.');
73
+ }
74
+ }