feat(skill): 新增死亡动画及预制体资源

添加 dead.prefab 预制体及其关联的 dead.anim 动画文件,用于角色死亡时的技能表现。
This commit is contained in:
panw
2026-02-05 16:16:05 +08:00
parent 1ad7b70c45
commit b85b9d8655
10 changed files with 15684 additions and 3755 deletions

View File

@@ -35,8 +35,10 @@ export class MissionComp extends CCComp {
chou_node:Node = null!
@property(Node)
time_node:Node = null!
@property(Node)
binfo_node:Node = null!
FightTime:number = FightSet.FiIGHT_TIME
/** 剩余复活次数 */
revive_times: number = 1;
rewards:any[]=[]
@@ -46,6 +48,8 @@ export class MissionComp extends CCComp {
diamond:0
}
private lastTimeStr: string = "";
// 记录已触发的特殊刷怪索引
private spawnedSpecialIndices: Set<number> = new Set();
@@ -66,13 +70,23 @@ export class MissionComp extends CCComp {
if(smc.mission.in_fight){
if(smc.mission.stop_mon_action) return
smc.vmdata.mission_data.fight_time+=dt
smc.vmdata.mission_data.time-=dt
this.FightTime-=dt
// 检查特殊刷怪时间
this.checkSpecialSpawns(smc.vmdata.mission_data.fight_time);
this.update_time();
}
}
update_time(){
let time = Math.max(0, this.FightTime);
let m = Math.floor(time / 60);
let s = Math.floor(time % 60);
let str = `${m.toString().padStart(2, '0')}:${s.toString().padStart(2, '0')}`;
if(str != this.lastTimeStr){
this.time_node.getChildByName("time").getComponent(Label).string = str;
this.lastTimeStr = str;
}
}
private checkSpecialSpawns(fightTime: number) {
SpecialMonsterSchedule.forEach((item, index) => {
if (!this.spawnedSpecialIndices.has(index) && fightTime >= item.time) {
@@ -261,7 +275,7 @@ do_ad(){
smc.vmdata.mission_data.in_fight=false
smc.vmdata.mission_data.fight_time=0
smc.vmdata.mission_data.level=0
smc.vmdata.mission_data.time=15*60
this.FightTime=FightSet.FiIGHT_TIME
this.rewards=[] // 改为数组,用于存储掉落物品列表
this.revive_times = 1; // 每次任务开始重置复活次数
this.spawnedSpecialIndices.clear(); // 重置特殊刷怪记录