feat: complete mobile UI implementation

This commit is contained in:
shenlei
2026-09-04 19:54:33 +09:00
parent 9a4a044da5
commit b19d5b5dd3
132 changed files with 6643 additions and 180 deletions
+15
View File
@@ -290,6 +290,21 @@ func _run() -> void:
qb._clear(1)
_ck(fc.quickslot_ops.back() == ["del", 1], "quickslot clear -> CG_QUICKSLOT_DEL")
# 移动技能页:横屏大触控行 + 一键放入当前页快捷栏空位,替代 PC 拖放。
sk.close()
sk.set_mobile_mode(true)
sk.set_mobile_quickbar(qb)
sk.open()
_ck(sk.is_open() and sk._win.size == Vector2(760, 340),
"mobile skill window uses landscape base size")
_ck(sk._win.get_node_or_null("SkillScroll") is ScrollContainer,
"mobile skill list is scrollable")
if sk._rows.has(16):
sk._mobile_assign_skill(16)
_ck(qb._state[0].kind == "skill" and qb._state[0].id == 16,
"mobile skill action assigns to first free quickbar slot")
sk.close()
# 服务器 GC_QUICKSLOT_* 恢复:type 2 技能 / type 1 道具 / type 3 表情 -> 填格
var qb2: Node = Quickbar.new()
get_root().add_child(qb2)