左键能点到回城石
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-06-06 09:50:30 |
👁️ 阅读: 12
要实现左键点击回城石功能,需要创建一个按钮控件并设置点击事件。以下是完整实现代码:
```lua
-- 创建父节点界面
local parent = GUI:Win_Create("GMMain", 0, 0, 0, 0, false, false, true, false, false, false, 1)
-- 创建回城石按钮(使用示例图片)
local backStoneBtn = GUI:Button_Create(parent, "btn_back_stone", 200, 200, "res/public/1900000612.png")
-- 设置按钮标题
GUI:Button_setTitleText(backStoneBtn, "回城石")
-- 设置触摸吞噬,防止穿透
GUI:setSwallowTouches(backStoneBtn, true)
-- 添加左键点击事件
GUI:addOnClickEvent(backStoneBtn, function()
SL:print("回城石被点击!")
-- 这里可以添加回城逻辑
-- 例如:SL:UseItem("回城石") 或发送回城请求
end)
-- 设置按钮文字样式
local textLabel = GUI:getChildByName(backStoneBtn, "TitleText")
if not GUI:Win_IsNull(textLabel) then
GUI:Text_setFontName(textLabel, "fonts/font5.ttf")
GUI:Text_setFontSize(textLabel, 18)
GUI:Text_setTextColor(textLabel, "#ffffff")
end
```
**关键点说明:**
1. `GUI:Button_Create()` 创建按钮控件
2. `GUI:setSwallowTouches(backStoneBtn, true)` 设置触摸吞噬,确保点击不会穿透到下层
3. `GUI:addOnClickEvent()` 添加左键点击事件响应
4. 按钮文字通过 `GUI:getChildByName()` 获取并设置样式
**使用建议:**
- 将按钮放在合适的位置(示例中坐标为200,200)
- 点击事件中可以实现回城逻辑,如使用物品或发送服务端请求
- 如果需要更复杂的交互,可以在点击事件中添加动画效果或确认提示
这样设置后,玩家左键点击回城石按钮就会触发相应的事件响应。
← 返回问答库