北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 6435|回复: 20

新手请教抓取的table插入合并哪里有问题

[复制链接]
发表于 2020-11-30 15:24:32 | 显示全部楼层 |阅读模式
抓取经书上内容,下面执行中老报错,就想合并抓取的每排经书内容合并到一块,求解惑
songjing_nr {}
table.insert (songjing_nr, "%1")
SetVariable ("nr",table.concat(songjing_nr))


[string "触发器: "]:1: attempt to call global 'jsnr' (a table value)
stack traceback:
        [string "触发器: "]:1: in main chunk
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-11-30 18:21:46 | 显示全部楼层
songjing_nr = {}
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2020-11-30 23:20:51 | 显示全部楼层
谢谢  ,现在格式是对了,不报错了,可变量nr只有最后一次匹配内容,并没有把所有匹配的进行合并
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-12-1 09:37:00 | 显示全部楼层
你可以将第一次抓到的存到一个变量,比如
songjing = "%1"
然后每次都是
songjing = songjing.."%1"
这样songjing里就是你要用的,完事以后
songjing = nil
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2020-12-1 09:52:39 | 显示全部楼层
@yyzq 我确实愚钝,照上面的方法
songjing = "%1"
nr = songjing.."%1"
SetVariable ("nr",nr)
结果出来是最后匹配的内容重复2次,该怎么办哦,发觉我真的笨
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-12-1 11:49:54 | 显示全部楼层
这么理解吧,"%1"是你每次获取的经文内容,但是每次触发"%1"后都会变成新的内容,所以需要一个变量帮助我们把之前的内容存储下来,nr就是这个变量。在诵经之前一定要SetVariable ("nr",“”),每次触发
nr =GetVariable ("nr").."%1" --先获取之前存储内容,再拼接获取的新内容,最后赋值给nr
SetVariable ("nr",nr)
每个人的思维和代码风格不一样,但是主要思想差不多。

北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-12-1 11:53:09 | 显示全部楼层
诵经之前一定要SetVariable ("nr",“”),就是清除,上次,诵经任务,存储下来的内容,你不要在获取经文内容时加入这句啊
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2020-12-1 12:07:09 | 显示全部楼层
哦 这样啊  我试试  谢谢您
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2020-12-1 12:17:31 | 显示全部楼层
解决了 谢谢你们,新手的我要学的太多,这种类似拓展思维,以前局限了
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-12-1 12:26:10 | 显示全部楼层
dengtaliyi 发表于 2020-12-1 12:17 PM
解决了 谢谢你们,新手的我要学的太多,这种类似拓展思维,以前局限了 ...

我也才学机器人一两个月而已,所以或遇到类似你的一些问题,多看看其它大佬的机器人吧
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-24 02:49 AM , Processed in 0.009333 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表