北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
12
返回列表 发新帖
楼主: hualai

向sure请教几个问题

[复制链接]
 楼主| 发表于 2009-5-4 04:41:11 | 显示全部楼层
function set_state(st_name,st_value)
{
    for(i=0;i<9;i++)    st_value=st_value.replace(" ","");     -----[[这里为什么要用循环?这个不是抓状态么...]]
           st_name=st_name.replace("-","_");
           world.setVariable(st_name,st_value);
}
function set_var(st_name,st_value)
{
           world.setVariable(st_name,st_value);         
}

这段出现在sure的朱熹答题脚本中...请问谁能把这段解释一下...

另外 请问我通过trigger抓取的变量如何发送给脚本?
打个比方说
^[> ]*(.*)两银子\(\bSilver\b\)$
%1是xx两银子,如何把这个%1赋值给脚本里的变量number?
选项里选择发送给脚本解析器这个我知道...
我问的是命令行里要如何书写?
setvariable ("number",%1)这个不行...

问题很简单 请别笑话...(闭门研究了几天mush和lua的入门,连游戏都停下来专心啃书)
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-5-4 05:27:38 | 显示全部楼层
正则表达式,我也刚刚明白一点。

一两白银(Silver)
的正则表达式我是这么做的:

(?P\D+)两白银\(Silver\).*

如果是发送到变量里,给你上张图:



如果是发送到脚本里,脚本里要用GetTriggerWildcard()函数,JScript为例:

var silver_num = world.GetTriggerWildcard("silver","silver_num");

其中"silver"是这个Trigger的Lable,"silver_num"是Trigger中设定的变量名。我不喜欢用%1  %2 ……,所以全用(?P)标识出来。

这样取到的应该是中文的数字“一”。脚本里要有其它的操作才能转换成数值。


以上也是我研究了两天的成果啊!3

[ 本帖最后由 ddid 于 2009-5-4 05:30 AM 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-5-4 05:33:22 | 显示全部楼层
你贴的那段程序,主要就是为了去除变量中有干扰作用的乱字符,去除之后,再给变量重新赋值。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-5-4 21:24:46 | 显示全部楼层
原帖由 ddid 于 2009-4-28 00:19 发表 不好意,不知为什么,右括号都变成小叉子了……
自己测试一下Discuz!的右括号问题……)()(a.b.c.d e f.g.h)yct1()))else do_after(1,"ask hongdou about test");

[ 本帖最后由 ddid 于 2009-5-4 09:39 PM 编辑 ]
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2009-5-4 23:05:49 | 显示全部楼层
原帖由 hualai 于 2009-5-4 04:41 AM 发表
function set_state(st_name,st_value)
{
    for(i=0;i ]*(.*)两银子\(\bSilver\b\)$
%1是xx两银子,如何把这个%1赋值给脚本里的变量number?
选项里选择发送给脚本解析器这个我知道...
我问的是命令行里要如何 ...


我那段是为了剔除变量值里面的空格,其实应该用while的,一直用着没问题,就不改了。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-24 10:08 PM , Processed in 0.009184 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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