我服务器使用的是以下代码:
setplayercustdata(actor, "woaini 999");
setplayercustjosndata(actor,"测试1","abc")
🤖 回答引擎: 热血江湖Lua |
🕒 时间: 2026-05-02 22:06:50 |
👁️ 阅读: 12
根据你的描述,服务器同时使用了 `setplayercustdata`(字符串格式)和 `setplayercustjosndata`(JSON格式)来设置自定义数据。
当客户端调用 `SL:RequestLookPlayer` 请求查看玩家信息时,返回的数据格式取决于服务器最后设置的自定义数据类型。如果服务器最后调用的是 `setplayercustjosndata`,那么无论客户端请求时是否指定 `attList?` 参数,返回的 `L.M.CUSTOM_DATA` 都将是 JSON 格式数据,需要按键值对(如 `SL:GetValue("L.M.CUSTOM_DATA", "测试1")`)的方式解析。
如果你希望在不传 `attList?` 参数时,通过 `SL:GetValue(L.M.CUSTOM_DATA)` 获取到纯字符串(例如 "woaini 999"),请确保服务器端最后调用的是 `setplayercustdata` 接口来设置数据。`setplayercustjosndata` 设置的数据会覆盖 `setplayercustdata` 设置的字符串格式数据,导致始终返回 JSON 格式。
← 返回问答库