feat(t3): 主角三态切换——portrait 换装 new-normal+attack/hit 入包+挂事件切换+结算回 idle

①48px 档生成器默认补 attack/hit 两档(hero-ref/edit 1x 源→character_hero_attack/hit.png;new-hit.pxo 09-27 已程序导出 hit_1x 在位,U1 手出预案不触发);机检 11/11 过
②ui_kit 增 TEX_HERO_ATTACK/TEX_HERO_HIT;TEX_HERO_PORTRAIT 注记改 normal 态(48px 档换装)
③standee_body 状态机:register_hero_state(组合点注册,缺位不注册=该态保持现纹理)/set_hero_state(短驻 0.35s 自回 idle;未注册态保持)/hero_state_probe;_revive 增态回 idle;set_hero 增死亡残位复活(hp>0——敌侧 set_data 同款)
④battle_stage_view:三态注册+_init;on_step_row_fx 主角攻击行→attack 态/受击行→hit 态(闪白弹道归 T5 拆早退);settle_hero_idle 显式收尾挂 main 两侧 battle_finished/adventure_finished
⑤fx_probe 扩第五段:三态切换+短驻自回+死亡复活断言
轻闸=冒烟 576/0+三探针 PASS(编辑器刷缓存后)
This commit is contained in:
DKChan committed 2026-09-29 04:09:13 +08:00
1 parent ac43e1333d
commit cabb6b07bf
6 files changed
+99 -6

No files matched your search

+3 -1
View File
@@ -90,7 +90,9 @@ static func motion(dur: float) -> float:
# 的字形/无演出回退路径;禁 preload(素材缺位树上直接断言炸脚本,冒烟安全红线)
const TEX_HERO_IDLE := "res://assets/art/character/character_hero_idle.png"
const TEX_HERO_WALK := "res://assets/art/character/character_hero_walk.png"
const TEX_HERO_PORTRAIT := "res://assets/art/character/character_hero_portrait.png" # B 区站桩立绘 48×48(源档 candidates/hero-idle/hero_idle_01.png,2026-09-26 用户点名换装)
const TEX_HERO_PORTRAIT := "res://assets/art/character/character_hero_portrait.png" # B 区站桩立绘·normal 态(48px 档,迭代 6 T3 换装=new-normal 源)
const TEX_HERO_ATTACK := "res://assets/art/character/character_hero_attack.png" # B 区站桩立绘·attack 态(迭代 6 T3 三态切换)
const TEX_HERO_HIT := "res://assets/art/character/character_hero_hit.png" # B 区站桩立绘·hit 态(迭代 6 T3 三态切换)
# 敌种立绘(B 区站桩 2026-09-26 槽接线批)——文件键 = 数据表主键 enemy_id(圣经 §8.3 命名规范),
# 键集 = art-bible §4.6.4 八敌种;素材批入库前全部缺位(load_tex→null→字形回退),入库即显示零代码换装
const TEX_ENEMY_GOBLIN := "res://assets/art/character/character_enemy_goblin.png" # 地精