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
+4 -2
View File
@@ -47,7 +47,7 @@ func get_skills() -> Array: return [{"id": 1, "level": 5, "master": 0}]
func use_skill(id: int, vid: int) -> bool:
uses.append([id, vid])
return true
func cast_skill(mi: int, yaw: float, x: int, y: int) -> bool:
func cast_skill(mi: int, yaw: float, x: int, y: int, _arg: int = 0) -> bool:
casts.append([mi, yaw, x, y])
return true
func quickslot_add(_slot: int, _type: int, _id: int) -> bool:
@@ -60,7 +60,9 @@ func quickslot_add(_slot: int, _type: int, _id: int) -> bool:
var qb := Quickbar.new()
get_root().add_child(qb)
qb.setup(client_mock, st, ui, func() -> Node: return player)
qb.assign(0, "skill", 1) # Skill 1: samyeon (no target required)
# This fixture has no server quickslot callback; seed a local-only slot so
# the movement/heading assertions do not bypass the GC_QUICKSLOT contract.
qb.assign(0, "skill", 1, false) # Skill 1: samyeon (no target required)
qb.activate(0)