YMODE was deprecated please use IS_PC_OPER_MODE instead.
*********************************
[LUA-print] [20:47:25-389] --------------------ErrorHandler-----------------------
[LUA-print] [20:47:25-389] [string "GUILayout/custom/module/TG/元神出窍.lua"]:30
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-16 20:48:27 |
👁️ 阅读: 3
你的代码存在两个主要问题:
1. **第30行错误**:`local cost = page.cost[1]` 这一行尝试访问 `page.cost`,但根据错误信息显示 `page.cost` 是 `nil` 值。你需要检查 `self._cfg` 的配置结构是否正确。
2. **警告信息**:`YMODE was deprecated please use IS_PC_OPER_MODE instead.` 这是引擎更新后的提示,需要将代码中的 `YMODE` 替换为 `IS_PC_OPER_MODE`。
修改建议:
```lua
-- 首先检查配置是否正确加载
function YuanShenChuQiao:updateUI(data)
local ui = self.ui
local page = self._cfg
-- 添加安全检查
if not page or not page.cost or not page.cost[1] then
SL:print("错误:配置数据不完整,page.cost 为空")
return
end
local cost = page.cost[1]
SL:print(111111)
SL:print(cost)
-- 确保父节点存在
if GUI:Win_IsNull(ui.Img_BG) then
SL:print("错误:Img_BG 父节点不存在")
return
end
-- 创建富文本
ui.ListView_1 = GUI:RichTextFCOLOR_Create(ui.Img_BG, "rich3"..self.npcID, 0, 0,
UIManager.attToRichText(cost, 255), 230, 16)
end
```
另外,在整个模块中搜索 `YMODE` 并替换为 `IS_PC_OPER_MODE`,这是引擎更新导致的API变更。
检查你的配置文件 `self.mCfg.clientObjPath` 是否包含正确的 `cost` 字段,这是导致 `nil` 错误的主要原因。
← 返回问答库