fix(怪物): 修复对象池复用导致怪物无限放大的问题
记录预制体初始缩放值,避免重复乘算
This commit is contained in:
@@ -136,6 +136,8 @@ export class Monster extends ecs.Entity {
|
||||
if (!node) {
|
||||
var prefab: Prefab = oops.res.get(path, Prefab)!;
|
||||
node = instantiate(prefab);
|
||||
// 记录预制体的初始缩放值,防止对象池复用时累乘导致无限变大
|
||||
(node as any)._baseScale = node.scale.clone();
|
||||
}
|
||||
|
||||
// 统一挂到实体显示层 HERO 节点下
|
||||
@@ -147,7 +149,8 @@ export class Monster extends ecs.Entity {
|
||||
collider.enabled = false;
|
||||
}
|
||||
|
||||
node.setScale(size*node.scale.x,size*node.scale.y);
|
||||
let baseScale = (node as any)._baseScale || v3(1, 1, 1);
|
||||
node.setScale(size * baseScale.x, size * baseScale.y);
|
||||
node.setPosition(pos)
|
||||
const model = this.get(HeroAttrsComp);
|
||||
// 从配置表获取怪物静态数据
|
||||
|
||||
Reference in New Issue
Block a user