PlayerSuperEquip_Look = {}----查看他人面板 时装
PlayerSuperEquip_Look._ui = nil
-- 头盔和斗笠分离出格子 需要对应相应装备位置
PlayerSuperEquip_Look.realUIPos = {
-- [GUIDefine.EquipPosUI.Equip_Type_Super_Dress] = 1017,
-- [GUIDefine.EquipPosUI.Equip_Type_Super_Weapon] =
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-06-02 00:45:10 |
👁️ 阅读: 14
看了你的代码,问题出在查看他人副装按钮的点击事件处理上。让我帮你分析一下:
## 问题分析
1. **查看他人副装按钮的点击事件**:你创建了一个新的 `data` 变量,这会覆盖函数参数中的 `data`,导致传递给 `SL:OpenOtherPlayerUI` 的数据不正确。
2. **查看他人主装按钮**:同样的问题,但看起来你打印的是正确的 `data` 参数。
## 修复方案
修改 `PlayerEquip.main` 函数中的按钮点击事件:
```lua
function PlayerEquip.main(data)
local parent = GUI:Attach_Parent()
PlayerEquip.ui = GUI:ui_delegate(parent)
-- 副装
if PlayerEquip.ui.btn_fuzhuang then
GUI:addOnClickEvent(PlayerEquip.ui.btn_fuzhuang, function()
SL:JumpTo(37)
end)
end
-- 主装
if PlayerEquip.ui.btn_zhuzhuang then
GUI:addOnClickEvent(PlayerEquip.ui.btn_zhuzhuang, function()
SL:JumpTo(1)
end)
end
-- 查看他人 副装
if PlayerEquip.ui.btn_look_fuzhuang then
GUI:addOnClickEvent(PlayerEquip.ui.btn_look_fuzhuang, function()
SL:print("===========接收到查看他人副装!!!~~~~~~")
SL:print("======起始=====")
SL:dump(data)
-- 注意:这里不要重新定义data变量,直接使用参数
local openData = {pageId = 11} -- 11表示时装页
SL:OpenOtherPlayerUI(openData)
end)
end
-- 查看他人 主装
if PlayerEquip.ui.btn_look_zhuzhuang then
GUI:addOnClickEvent(PlayerEquip.ui.btn_look_zhuzhuang, function()
SL:print("===========接收到查看他人主装!!!~~~~~~")
SL:print("======起始=====")
SL:dump(data)
-- 注意:这里不要重新定义data变量,直接使用参数
local openData = {pageId = 1} -- 1表示装备页
SL:OpenOtherPlayerUI(openData)
end)
end
end
```
## 关键修改点
1. **避免变量覆盖**:将按钮点击事件中的 `local data = {pageId = 11}` 改为 `local openData = {pageId = 11}`,避免覆盖函数参数。
2. **保持参数传递**:确保 `SL:OpenOtherPlayerUI` 接收到正确的页面ID参数。
## 调试建议
修改后,你可以通过打印日志来确认是否正确触发了按钮点击事件:
```lua
GUI:addOnClickEvent(PlayerEquip.ui.btn_look_fuzhuang, function()
SL:print("查看他人副装按钮被点击")
local openData = {pageId = 11}
SL:print("准备打开页面ID:", openData.pageId)
SL:OpenOtherPlayerUI(openData)
end)
```
## 注意事项
1. 确保 `SL:OpenOtherPlayerUI` 函数在知识库中存在且功能正常。
2. 检查页面ID是否正确,根据浮生梦老师前端课程内容,11表示时装页,1表示装备页。
3. 如果按钮仍然没有生效,检查按钮控件名称是否正确,确保 `btn_look_fuzhuang` 和 `btn_look_zhuzhuang` 在UI布局文件中存在。
下次写代码时要注意变量作用域的问题,避免在嵌套函数中覆盖外层变量。不懂的可以问浮生梦尊师!
← 返回问答库