@seayoo-web/pixi-live2d 0.0.2 → 0.0.3
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/index.js +40 -2
- package/package.json +3 -3
- package/types/index.d.ts +10 -1
package/dist/index.js
CHANGED
|
@@ -21707,9 +21707,23 @@ class Th {
|
|
|
21707
21707
|
* @param group - 动作分组名称
|
|
21708
21708
|
* @param no - 动作编号
|
|
21709
21709
|
* @param priority - 动作优先级,默认值为 1
|
|
21710
|
+
* @param startTime - 动作开始时间(秒),默认值为 0
|
|
21711
|
+
* @returns Promise,动作开始播放后 resolve
|
|
21710
21712
|
*/
|
|
21711
|
-
startMotion(e, r, i = 1) {
|
|
21712
|
-
|
|
21713
|
+
async startMotion(e, r, i = 1, n = 0) {
|
|
21714
|
+
if (!this.model) return !1;
|
|
21715
|
+
const s = await this.model.motion(e, r, i);
|
|
21716
|
+
if (s && n > 0) {
|
|
21717
|
+
const a = this.model.internalModel.motionManager.queueManager;
|
|
21718
|
+
if (a) {
|
|
21719
|
+
const o = a._motions;
|
|
21720
|
+
if (o && o.length > 0) {
|
|
21721
|
+
const h = o[o.length - 1];
|
|
21722
|
+
h && h.isAvailable() && h._motion?.setOffsetTime(n);
|
|
21723
|
+
}
|
|
21724
|
+
}
|
|
21725
|
+
}
|
|
21726
|
+
return s;
|
|
21713
21727
|
}
|
|
21714
21728
|
/**
|
|
21715
21729
|
* 播放指定表情
|
|
@@ -21729,6 +21743,30 @@ class Th {
|
|
|
21729
21743
|
this.model.internalModel.motionManager.on("motionFinish", r);
|
|
21730
21744
|
});
|
|
21731
21745
|
}
|
|
21746
|
+
/**
|
|
21747
|
+
* 启用动作循环播放模式
|
|
21748
|
+
* 从第 startTime 秒开始循环播放,直到动画结束
|
|
21749
|
+
* @param startTime - 循环开始时间(秒),默认为 2 秒
|
|
21750
|
+
* @returns 停止循环的函数
|
|
21751
|
+
*/
|
|
21752
|
+
loop(e = 2) {
|
|
21753
|
+
if (!this.model)
|
|
21754
|
+
return () => {
|
|
21755
|
+
};
|
|
21756
|
+
let r = !0;
|
|
21757
|
+
const i = this.model.internalModel.motionManager, n = () => {
|
|
21758
|
+
if (!r || !this.model) return;
|
|
21759
|
+
const a = i.queueManager;
|
|
21760
|
+
if (!a) return;
|
|
21761
|
+
const o = a._motions;
|
|
21762
|
+
if (!(!o || o.length === 0))
|
|
21763
|
+
for (const h of o)
|
|
21764
|
+
h && h.isAvailable() && !h.isFinished() && h.getStateTime() >= e && h.setState(e, h.getStateWeight());
|
|
21765
|
+
}, s = this.app.ticker;
|
|
21766
|
+
return s.add(n), () => {
|
|
21767
|
+
r = !1, s.remove(n);
|
|
21768
|
+
};
|
|
21769
|
+
}
|
|
21732
21770
|
/** 销毁实例,清理资源和监听器 */
|
|
21733
21771
|
destroy() {
|
|
21734
21772
|
this.options.autoResize !== !1 && window.removeEventListener("resize", this.handleResize), this.app.destroy(!0);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seayoo-web/pixi-live2d",
|
|
3
3
|
"description": "pixi-live2d viewer",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.3",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"module": "./dist/index.js",
|
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/node": "^22.13.1",
|
|
45
|
-
"@seayoo-web/
|
|
46
|
-
"@seayoo-web/
|
|
45
|
+
"@seayoo-web/tsconfig": "^1.0.6",
|
|
46
|
+
"@seayoo-web/utils": "^4.4.1"
|
|
47
47
|
},
|
|
48
48
|
"scripts": {
|
|
49
49
|
"build": "vite build && tsc --build --force --emitDeclarationOnly",
|
package/types/index.d.ts
CHANGED
|
@@ -73,8 +73,10 @@ export declare class Live2DViewer {
|
|
|
73
73
|
* @param group - 动作分组名称
|
|
74
74
|
* @param no - 动作编号
|
|
75
75
|
* @param priority - 动作优先级,默认值为 1
|
|
76
|
+
* @param startTime - 动作开始时间(秒),默认值为 0
|
|
77
|
+
* @returns Promise,动作开始播放后 resolve
|
|
76
78
|
*/
|
|
77
|
-
startMotion(group: string, no: number, priority?: MotionPriority): Promise<boolean
|
|
79
|
+
startMotion(group: string, no: number, priority?: MotionPriority, startTime?: number): Promise<boolean>;
|
|
78
80
|
/**
|
|
79
81
|
* 播放指定表情
|
|
80
82
|
* @param name - 表情名称或索引
|
|
@@ -82,6 +84,13 @@ export declare class Live2DViewer {
|
|
|
82
84
|
expression(name: string | number): Promise<boolean> | undefined;
|
|
83
85
|
/** 等待当前动作播放结束 */
|
|
84
86
|
waitForMotionFinish(): Promise<boolean>;
|
|
87
|
+
/**
|
|
88
|
+
* 启用动作循环播放模式
|
|
89
|
+
* 从第 startTime 秒开始循环播放,直到动画结束
|
|
90
|
+
* @param startTime - 循环开始时间(秒),默认为 2 秒
|
|
91
|
+
* @returns 停止循环的函数
|
|
92
|
+
*/
|
|
93
|
+
loop(startTime?: number): () => void;
|
|
85
94
|
/** 销毁实例,清理资源和监听器 */
|
|
86
95
|
destroy(): void;
|
|
87
96
|
}
|