@safe-engine/cocos 2.2.4 → 2.2.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.
- package/dist/app.js +2 -2
- package/dist/gui/GUISystem.d.ts +1 -1
- package/dist/gui/GUISystem.d.ts.map +1 -1
- package/dist/gui/GUISystem.js +4 -3
- package/dist/render/RenderComponent.d.ts +2 -1
- package/dist/render/RenderComponent.d.ts.map +1 -1
- package/dist/render/RenderSystem.d.ts.map +1 -1
- package/dist/render/RenderSystem.js +7 -3
- package/dist/richtext/RichTextComp.d.ts.map +1 -1
- package/dist/richtext/RichTextComp.js +16 -9
- package/package.json +1 -1
package/dist/app.js
CHANGED
|
@@ -5,10 +5,10 @@ import { RenderSystem } from './render';
|
|
|
5
5
|
export function initWorld(defaultFont) {
|
|
6
6
|
const world = GameWorld.Instance;
|
|
7
7
|
world.systems.addThenConfigure(RenderSystem);
|
|
8
|
-
|
|
8
|
+
world.systems.addThenConfigure(GUISystem);
|
|
9
9
|
world.systems.addThenConfigure(NoRenderSystem);
|
|
10
10
|
if (defaultFont) {
|
|
11
|
-
|
|
11
|
+
GUISystem.defaultFont = defaultFont;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
export async function startGame(defaultFont, { width, height }, option) {
|
package/dist/gui/GUISystem.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EntityManager, EventManager, System } from 'entityx-ts';
|
|
2
2
|
export declare class GUISystem implements System {
|
|
3
|
-
defaultFont: string;
|
|
3
|
+
static defaultFont: string;
|
|
4
4
|
configure(event_manager: EventManager): void;
|
|
5
5
|
private onAddButtonComp;
|
|
6
6
|
private onAddProgressTimerComp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GUISystem.d.ts","sourceRoot":"","sources":["../../src/gui/GUISystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAMlG,qBAAa,SAAU,YAAW,MAAM;IACtC,WAAW,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"GUISystem.d.ts","sourceRoot":"","sources":["../../src/gui/GUISystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAMlG,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,yBAAyB,CAOhC;IAED,OAAO,CAAC,cAAc,CAWrB;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE"}
|
package/dist/gui/GUISystem.js
CHANGED
|
@@ -4,7 +4,7 @@ import { TouchEventRegister } from '../norender';
|
|
|
4
4
|
import { Vec2 } from '../polyfills';
|
|
5
5
|
import { BlockInputEventsComp, ButtonComp, FillType, InputComp, LabelComp, ProgressTimerComp, ScrollViewComp } from './GUIComponent';
|
|
6
6
|
export class GUISystem {
|
|
7
|
-
defaultFont;
|
|
7
|
+
static defaultFont;
|
|
8
8
|
configure(event_manager) {
|
|
9
9
|
event_manager.subscribe(EventTypes.ComponentAdded, ButtonComp, this.onAddButtonComp);
|
|
10
10
|
event_manager.subscribe(EventTypes.ComponentAdded, ProgressTimerComp, this.onAddProgressTimerComp);
|
|
@@ -53,7 +53,7 @@ export class GUISystem {
|
|
|
53
53
|
bar.node = entity.assign(new NodeComp(pTimer, entity));
|
|
54
54
|
};
|
|
55
55
|
onAddLabelComp = ({ entity, component: label }) => {
|
|
56
|
-
const { string = '', font =
|
|
56
|
+
const { string = '', font = GUISystem.defaultFont, size = 64, outline, shadow } = label.props;
|
|
57
57
|
const fontName = cc.path.basename(font, '.ttf');
|
|
58
58
|
const node = new ccui.Text(string, fontName, size);
|
|
59
59
|
node.setTextVerticalAlignment(cc.VERTICAL_TEXT_ALIGNMENT_BOTTOM);
|
|
@@ -65,6 +65,7 @@ export class GUISystem {
|
|
|
65
65
|
const [color, blur, offset] = shadow;
|
|
66
66
|
node.enableShadow(color, offset, blur);
|
|
67
67
|
}
|
|
68
|
+
node.ignoreContentAdaptWithSize(false);
|
|
68
69
|
label.node = entity.assign(new NodeComp(node, entity));
|
|
69
70
|
};
|
|
70
71
|
onAddScrollViewComp = ({ entity, component: scrollView }) => {
|
|
@@ -87,7 +88,7 @@ export class GUISystem {
|
|
|
87
88
|
blockInput.node = node;
|
|
88
89
|
};
|
|
89
90
|
onAddInputComp = ({ entity, component: textInput }) => {
|
|
90
|
-
const { placeHolder = '', font =
|
|
91
|
+
const { placeHolder = '', font = GUISystem.defaultFont, size = 64, maxLength = 20, isPassword = false } = textInput.props;
|
|
91
92
|
const textField = new ccui.TextField();
|
|
92
93
|
textField.setPlaceHolder(placeHolder);
|
|
93
94
|
textField.setFontName(font);
|
|
@@ -15,7 +15,8 @@ export declare class SpriteRender extends ComponentX<SpriteRenderProps & BaseCom
|
|
|
15
15
|
updateTiled(): void;
|
|
16
16
|
}
|
|
17
17
|
interface MaskRenderProps {
|
|
18
|
-
spriteFrame
|
|
18
|
+
spriteFrame?: string;
|
|
19
|
+
cropSize?: Size;
|
|
19
20
|
alphaThreshold?: number;
|
|
20
21
|
inverted?: boolean;
|
|
21
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderComponent.d.ts","sourceRoot":"","sources":["../../src/render/RenderComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE1D,qBAAa,UAAW,SAAQ,UAAU;IACxC,QAAQ,EAAE,MAAM,CAAA;CACjB;AASD,UAAU,iBAAiB;IACzB,WAAW,EAAE,MAAM,CAAA;IAEnB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5C,SAAS,CAAC,EAAE,IAAI,CAAA;CACjB;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;IAC3G,IAAI,WAAW,WAEd;IAED,IAAI,WAAW,CAAC,KAAK,QAAA,EAKpB;IACD,WAAW;CAGZ;AACD,UAAU,eAAe;IACvB,WAAW,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"RenderComponent.d.ts","sourceRoot":"","sources":["../../src/render/RenderComponent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderSystem.d.ts","sourceRoot":"","sources":["../../src/render/RenderSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAOlG,oBAAY,WAAW;IACrB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,IAAI,IAAA;IACJ,SAAS,IAAA;CACV;AAED,qBAAa,YAAa,YAAW,MAAM;IACzC,SAAS,CAAC,aAAa,EAAE,YAAY;IAWrC,OAAO,CAAC,eAAe,CAKtB;IAED,OAAO,CAAC,iBAAiB,CAgBxB;IAED,OAAO,CAAC,eAAe,
|
|
1
|
+
{"version":3,"file":"RenderSystem.d.ts","sourceRoot":"","sources":["../../src/render/RenderSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAoC,MAAM,EAAE,MAAM,YAAY,CAAA;AAOlG,oBAAY,WAAW;IACrB,MAAM,IAAA;IACN,MAAM,IAAA;IACN,KAAK,IAAA;IACL,MAAM,IAAA;IACN,IAAI,IAAA;IACJ,SAAS,IAAA;CACV;AAED,qBAAa,YAAa,YAAW,MAAM;IACzC,SAAS,CAAC,aAAa,EAAE,YAAY;IAWrC,OAAO,CAAC,eAAe,CAKtB;IAED,OAAO,CAAC,iBAAiB,CAgBxB;IAED,OAAO,CAAC,eAAe,CAWtB;IAED,OAAO,CAAC,mBAAmB,CAQ1B;IAED,OAAO,CAAC,iBAAiB,CAKxB;IAED,OAAO,CAAC,aAAa,CAKpB;IAED,OAAO,CAAC,iBAAiB,CAUxB;IAED,OAAO,CAAC,iBAAiB,CAKxB;IAED,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM;CAIjE"}
|
|
@@ -49,10 +49,14 @@ export class RenderSystem {
|
|
|
49
49
|
spriteComp.node = ett.assign(new NodeComp(node, ett));
|
|
50
50
|
};
|
|
51
51
|
onAddMaskRender = ({ entity, component: maskComp }) => {
|
|
52
|
-
const { inverted = false, spriteFrame, alphaThreshold = 0.05 } = maskComp.props;
|
|
53
|
-
|
|
52
|
+
const { inverted = false, spriteFrame, cropSize, alphaThreshold = 0.05 } = maskComp.props;
|
|
53
|
+
let stencil = new cc.Sprite(spriteFrame);
|
|
54
|
+
if (cropSize) {
|
|
55
|
+
const { width, height } = cropSize;
|
|
56
|
+
stencil = new cc.LayerColor(cc.Color.WHITE, width, height);
|
|
57
|
+
}
|
|
54
58
|
const clipper = new cc.ClippingNode(stencil);
|
|
55
|
-
clipper.setAlphaThreshold(alphaThreshold);
|
|
59
|
+
clipper.setAlphaThreshold(!spriteFrame ? 1 : alphaThreshold);
|
|
56
60
|
clipper.setInverted(inverted);
|
|
57
61
|
maskComp.node = entity.assign(new NodeComp(clipper, entity));
|
|
58
62
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichTextComp.d.ts","sourceRoot":"","sources":["../../src/richtext/RichTextComp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RichTextComp.d.ts","sourceRoot":"","sources":["../../src/richtext/RichTextComp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAU,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAK7C,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,YAAa,SAAQ,UAAU,CAAC,iBAAiB,GAAG,kBAAkB,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IAC/G,IAAI,MAAM,IAIM,MAAM,CAFrB;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,MAAM,EAyBrB;CACF"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GUISystem } from '..';
|
|
1
2
|
import { ComponentX, render } from '../core/decorator';
|
|
2
3
|
import { HtmlTextParser } from './html-text-parser';
|
|
3
4
|
const _htmlTextParser = new HtmlTextParser();
|
|
@@ -13,16 +14,22 @@ export class RichTextComp extends ComponentX {
|
|
|
13
14
|
this.node.instance._richElements = [];
|
|
14
15
|
this.node.instance._formatTextDirty = true;
|
|
15
16
|
this.node.instance.formatText();
|
|
17
|
+
const fontSize = this.props.size || 64;
|
|
16
18
|
for (let index = 0; index < newTextArray.length; index++) {
|
|
17
|
-
const { style, text } = newTextArray[index];
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
const { style = {}, text } = newTextArray[index];
|
|
20
|
+
const fontName = cc.path.basename(this.props.font || GUISystem.defaultFont, '.ttf');
|
|
21
|
+
if (style.outline) {
|
|
22
|
+
// console.log('richText', richText, (ccui as any).RichElementCustomNode)
|
|
23
|
+
const label = new ccui.Text(text, fontName, fontSize);
|
|
24
|
+
label.enableOutline(cc.hexToColor(style.outline.color), style.outline.width || 3);
|
|
25
|
+
const customElem = new ccui.RichElementCustomNode.create(1, cc.color(255, 0, 0), 255, label);
|
|
26
|
+
this.node.instance.pushBackElement(customElem);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
const color = style.color ? cc.hexToColor(style.color) : cc.Color.WHITE;
|
|
30
|
+
const richText = ccui.RichElementText.create(index, color, 255, text, fontName, fontSize);
|
|
31
|
+
this.node.instance.pushBackElement(richText);
|
|
32
|
+
}
|
|
26
33
|
}
|
|
27
34
|
}
|
|
28
35
|
}
|