mushclient关于scripting和变量的问题
当需要用script来处理分析从一个trigger中抓到的变量,大家是否会将此变量也创建并保存在mushclient的变量表里,还是只是将其存在script文件中的变量表中。举个例子:
触发:【气血】(\d+)/(\d+)
所抓变量:%1, %2
发送到:script的函数Qixue(%1,%2)
script中会对这两个变量值进行分析,然后储存:
1. 在script中设置全局变量qixue=%1和qixue_max=%2
2. 存储到mushclient的变量表中
world.SetVariable ("qixue", qixue)
world.SetVariable ("qixue_max", qixue_max)
那么,在上面这个例子中,2是否有必要,不进行2的设置,这两个变量就只存在于script中,而在mushclient的变量表中无法看到,那么在mushclient中想要直接调用这两个变量就必须要通过script来调用。那么实际操作中,大家一般都怎么做比较方便?是1和2都做?还是只做1,无论什么时候调用这两个变量都走script?不知道我说的明白没有。
北大侠客行MUD,中国最好的MUD 如果所有功能都通过script来完成,那么只要存储在script变量里面即可。
反正我至今还不知道怎么去创建和调用mushclient的变量,一样能够完成所有功能。
如果习惯Zmud那种方式,比如使用GUI来创建部分trigger,alias之类的,可能mushclient的变量也会有一定的用武之地吧,就功能Zmud一样嘛。 花错师叔说的有道理,所以也就是说,不嫌麻烦的话,就也储存或者更新在mush变量表中的变量 回复 3# xxxcc
谢谢! 如果一定要区别的话,我认为可以这么来理解这两类变量:一个是内存(Lua的变量,script脚本),一个是硬盘(SetVariable,MUSH自己的变量)。 回复 6# littleknife
哇,小刀前辈出现了!我这两天正研究你的模块文件呢。好像你很少用硬盘变量,你绝大多数用的是内存变量是吧? 所谓的内存变量是在MUSH中你要是重置脚本就会清零的意思,无所谓一定要你用哪类变量。我之所以较多的用lua的变量是因为SetVariable这几个字母打字太费劲,不如A=123,这么简单。哈哈yct15. 回复 9# littleknife
哈哈哈,的确是,我用的是javascript,更麻烦,要先写world. 回复littleknife
哈哈哈,的确是,我用的是javascript,更麻烦,要先写world.
windyhawk 发表于 2015-1-21 03:14 PM http://pkuxkx.com/forum/images/common/back.gif
js不支持协程?那样很难模块化啊。 js不支持协程?那样很难模块化啊。
xxxcc 发表于 2015-1-22 04:22 AM http://pkuxkx.com/forum/images/common/back.gif
我想用python的,但是mushclient死活跟我的python对接不上,调用出错。不太想学lua
页:
[1]