update 添加松鼠角色

This commit is contained in:
DESKTOP-5RP3AKU\Jisol
2023-10-30 02:34:11 +08:00
parent ca84f38096
commit bb4334c0ff
178 changed files with 6352 additions and 195 deletions

View File

@@ -0,0 +1,63 @@
import { sp } from "cc";
import GRoleBase from "../role/GRoleBase";
import JNSkeleton from "../../../../../extensions/ngame/assets/ngame/sync/frame/game/spine/JNFrameSkeleton";
import { Node } from "cc";
import GBaseMode from "../../GBaseMode";
import { Vec2 } from "cc";
//Spine 工具
export default class GSpine{
//保存当前Spine 播放新 Spine 结束后还原
static onPlayAnotherSpine(role:GRoleBase<{}>,spine:sp.SkeletonData,play:string,fun:{
start?:(ske:JNSkeleton) => void,
end?:() => void,
} = {}):JNSkeleton{
//关闭当前角色原本的Spine
role.spine.enabled = false;
//添加新的spine
let spineNode = new Node();
role.node.addChild(spineNode);
let another = spineNode.addComponent(JNSkeleton);
another.skeletonData = spine;
fun.start && fun.start(another);
another.setCompleteListener(() => {
//还原
role.spine.enabled = true;
spineNode.destroy();
fun.end && fun.end();
});
another.setAnimation(0,play,false);
// another.setAnimation(0,play,false);
return another;
}
//创建一个Spine
static onCreateSpine(spine:sp.SkeletonData):JNSkeleton{
let spineNode = new Node();
let another = spineNode.addComponent(JNSkeleton);
another.premultipliedAlpha = false;
another.skeletonData = spine;
return another;
}
// 创建一个 Spine 并且 播放 销毁
static onPlaySceneSpine(scene:GBaseMode<{}>,pos:Vec2,spine:sp.SkeletonData,play:string):JNSkeleton{
let create = this.onCreateSpine(spine);
scene.addGNode(create.node,pos);
create.setCompleteListener(() => {
//销毁
create.node.destroy();
});
create.setAnimation(0,play);
return create;
}
}