fix: 装备属性面板避让逻辑 + 多项功能更新

- item_tooltip_view.gd: 新增 avoid_rect 属性,tooltip 与装备窗口重叠时自动推到左侧
- inventory_ui.gd: 悬停装备时传入窗口矩形作为避让区域
- 包含其他累积的功能开发和测试文件
This commit is contained in:
shen
2026-09-21 16:38:59 -07:00
parent 1522a8a1a1
commit c93894313a
5498 changed files with 4558004 additions and 1442 deletions
+11 -2
View File
@@ -33,8 +33,17 @@ func run() -> void:
"race %d: hair is from a different resource family" % race)
for motion in ["wait", "walk", "run", "attack", "damage", "dead"]:
pv.set_anim_state(motion)
# damage is registered as two equal-weight variants (damage / damage_1).
var variants: Array = PlayerView.REACTION_FILES.get(motion, [motion])
# RaceData can select weighted variants; assert the registered basename,
# not one random sample from the vector.
var variants: Array = [motion]
if motion == "wait":
variants = ["wait", "wait_1", "wait_2"]
elif motion == "attack":
variants = ["attack", "attack_1"]
elif motion == "damage":
variants = ["damage", "damage_1"]
elif motion == "dead":
variants = ["dead"]
check(String(pv.anim.get("anim_path")).get_file().get_basename() in variants,
"race %d: missing %s motion" % [race, motion])
for fraction in [0.0, 0.5, 1.0]: