GetValidstr <$CUSTMSGPARAM> # A480 A481
GetItemNameByMakeIndex <$str(A481)> A450
AddTextListEx ..\QuestDiary\打手数据\<$USERNAME>交易物品.txt <$USERNAME>于<$YEAR>年<$MONTH>月<$DAY>日<$HOUR>时<$MINUTE>分在《<$MAPTITLE>》交易了《<$str(S$交易装备名称1)>》.唯一id是<$str(A450)> 0
bre
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-04-16 13:38:04 |
👁️ 阅读: 6
根据浮生梦老师前端课程内容,问题出在服务端获取道具名称的函数调用方式上。
前端发送的是道具的唯一ID(MakeIndex),但服务端使用`GetItemNameByMakeIndex`函数获取道具名称时,需要传递正确的参数格式。
正确的服务端脚本应该是:
```lua
GetValidstr <$CUSTMSGPARAM> # A480 A481
;-- 获取道具名称
GetItemNameByMakeIndex <$str(A481)> A450
AddTextListEx ..\QuestDiary\打手数据\<$USERNAME>交易物品.txt <$USERNAME>于<$YEAR>年<$MONTH>月<$DAY>日<$HOUR>时<$MINUTE>分在《<$MAPTITLE>》交易了《<$str(S$交易装备名称1)>》.唯一id是<$str(A481)> 0
```
主要问题:
1. `GetItemNameByMakeIndex`函数接收的是道具的MakeIndex(唯一ID),这个值应该是`<$str(A481)>`
2. 你写的是`<$str(A450)>`,但A450是函数执行后的输出变量,不是输入参数
3. 打印唯一ID时应该用`<$str(A481)>`,而不是`<$str(A450)>`
在前端,获取道具名称可以通过以下方式:
```lua
local itemName = SL:GetMetaValue("ITEM_NAME", makeIndex)
SL:print("道具名称:", itemName)
```
检查一下服务端脚本的变量使用是否正确,特别是A481和A450的对应关系。
← 返回问答库