feat(英雄): 优化英雄移动和碰撞逻辑

fix由于 setScale 会影响物理判断,造成玩家角色多次被攻击触发回调
- 添加英雄移动方向缓存避免频繁转向
- 优化英雄碰撞器初始状态管理
- 修复英雄后退动画重复触发问题
- 调整部分英雄prefab的碰撞组和传感器设置
This commit is contained in:
2025-11-03 13:10:43 +08:00
parent 5bd2e15fb5
commit d089699c36
16 changed files with 70 additions and 35 deletions

View File

@@ -1,4 +1,4 @@
import { instantiate, Node, Prefab, Vec3 ,v3,resources,SpriteFrame,Sprite,SpriteAtlas} from "cc";
import { instantiate, Node, Prefab, Vec3 ,v3,resources,SpriteFrame,Sprite,SpriteAtlas, BoxCollider2D} from "cc";
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { smc } from "../common/SingletonModuleComp";
@@ -47,6 +47,8 @@ export class Hero extends ecs.Entity {
var node = instantiate(prefab);
var scene = smc.map.MapView.scene;
node.parent = scene.entityLayer!.node!
const collider = node.getComponent(BoxCollider2D);
if (collider) collider.enabled = false; // 先禁用
node.setPosition(pos)
// console.log("hero load",pos)
var hv = node.getComponent(HeroViewComp)!;