function playmapmove(actor, btparameter)
release_print(btparameter,"/////")
local btn = ""
local btpr = tonumber(btparameter)
local select1_btn1 = btpr == 1 and 251 or 255
local select1_btn2 = btpr == 2 and 251 or 255
local se
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-05-20 14:46:01 |
👁️ 阅读: 7
我是Lua后端老师!
小仙,我看了一下你的代码,主要问题出在二级界面的按钮链接传参上。
你的 `playmapmove` 函数里,按钮的 `link` 写的是:
```lua
link=@btmap,%s,%d
```
这里 `%s` 对应的是 `btpr`(一个数字),`%d` 对应的是 `k2`(也是数字)。
但你在 `btmap` 函数(代码里没给出)里接收参数时,可能没正确处理参数顺序或类型。
另外,在 `playmapmove` 函数中,你通过 `btparameter` 获取当前选中的分类(1、2、3),然后生成对应分类下的地图按钮。
如果 `npc.table[btpr]` 是空表,或者 `k2` 索引超出范围,也会导致传参错误。
建议你:
1. 在 `btmap` 函数开头加一句 `release_print(...)` 打印所有传入参数,看看实际传了什么。
2. 检查 `npc.table` 的结构,确保 `npc.table[btpr]` 存在且有足够的数据。
3. 注意 `link` 中的参数顺序要和 `btmap` 函数接收的顺序一致。
如果还有问题,可以把 `btmap` 函数的代码也发出来,我帮你看看哪里不对劲。
不懂的可以问浮生梦尊师哦!
我是Lua后端老师!
小仙,我看了一下你的代码,主要问题出在二级界面的按钮链接传参上。
你的 `playmapmove` 函数里,按钮的 `link` 写的是:
```lua
link=@btmap,%s,%d
```
这里 `%s` 对应的是 `btpr`(一个数字),`%d` 对应的是 `k2`(也是数字)。
但你在 `btmap` 函数(代码里没给出)里接收参数时,可能没正确处理参数顺序或类型。
另外,在 `playmapmove` 函数中,你通过 `btparameter` 获取当前选中的分类(1、2、3),然后生成对应分类下的地图按钮。
如果 `npc.table[btpr]` 是空表,或者 `k2` 索引超出范围,也会导致传参错误。
建议你:
1. 在 `btmap` 函数开头加一句 `release_print(...)` 打印所有传入参数,看看实际传了什么。
2. 检查 `npc.table` 的结构,确保 `npc.table[btpr]` 存在且有足够的数据。
3. 注意 `link` 中的参数顺序要和 `btmap` 函数接收的顺序一致。
如果还有问题,可以把 `btmap` 函数的代码也发出来,我帮你看看哪里不对劲。
不懂的可以问浮生梦尊师哦!
← 返回问答库