feat(hero, map): 修复FlashSprite查找逻辑,新增英雄升级触发特效
优化HeroViewComp中的FlashSprite查找逻辑,统一为先查找自身节点再遍历子节点 将HeroViewComp的lv_up方法改为公有以支持外部调用 在MissionHeroComp的英雄升级流程中添加升级特效触发代码
This commit is contained in:
@@ -112,7 +112,13 @@ export class HeroViewComp extends CCComp {
|
||||
this.hp_show();
|
||||
|
||||
// 根据英雄模型中的等级数据设置描边
|
||||
const flashSprite = this.node.getComponent(FlashSprite);
|
||||
// 注意:HeroViewComp 是挂在 node 上的,而 FlashSprite 可能挂在子节点(如 Sprite/anm 节点)
|
||||
let flashSprite = this.node.getComponent(FlashSprite);
|
||||
if (!flashSprite) {
|
||||
// 如果当前节点没有,尝试在所有子节点中查找
|
||||
flashSprite = this.node.getComponentInChildren(FlashSprite);
|
||||
}
|
||||
|
||||
if (flashSprite) {
|
||||
flashSprite.setOutlineByLevel(this.model.lv);
|
||||
}
|
||||
@@ -246,12 +252,15 @@ export class HeroViewComp extends CCComp {
|
||||
|
||||
|
||||
/** 升级特效 */
|
||||
private lv_up() {
|
||||
public lv_up() {
|
||||
this.spawnTimedFx("game/skill/buff/buff_lvup", this.node, 1.0);
|
||||
|
||||
// 升级时同步更新描边
|
||||
if (this.model) {
|
||||
const flashSprite = this.node.getComponent(FlashSprite);
|
||||
let flashSprite = this.node.getComponent(FlashSprite);
|
||||
if (!flashSprite) {
|
||||
flashSprite = this.node.getComponentInChildren(FlashSprite);
|
||||
}
|
||||
if (flashSprite) {
|
||||
flashSprite.setOutlineByLevel(this.model.lv);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user