mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-31 16:31:54 +08:00
feat(状态机): 添加历史记录栈功能用于玩家名称输入
实现玩家名称输入的历史记录功能,使用新添加的Reference和Composables类来管理历史记录栈。当玩家修改名称时,自动更新历史记录并处理名称冲突。 修改Starter面板以使用新功能,包括名称冲突时的自动重命名和通过RPC同步名称更改。
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
class_name Composables
|
||||
|
||||
static func useHistoryStack(input: LineEdit):
|
||||
var stack = Reference.new([input.text])
|
||||
var lastText = Reference.new("")
|
||||
var getLast = func(index: int):
|
||||
return stack.getData()[stack.getData().size() - index - 1]
|
||||
input.text_changed.connect(func(text):
|
||||
lastText.setData(text)
|
||||
stack.getData().append(text)
|
||||
)
|
||||
return [
|
||||
stack,
|
||||
getLast,
|
||||
lastText
|
||||
]
|
||||
@@ -0,0 +1 @@
|
||||
uid://bbqva0vgrd2m3
|
||||
@@ -0,0 +1,11 @@
|
||||
class_name Reference
|
||||
|
||||
var data: Variant = null
|
||||
|
||||
func _init(initialData: Variant):
|
||||
data = initialData
|
||||
|
||||
func setData(newData: Variant):
|
||||
data = newData
|
||||
func getData() -> Variant:
|
||||
return data
|
||||
@@ -0,0 +1 @@
|
||||
uid://cwllidbftjld2
|
||||
Reference in New Issue
Block a user