我把 Execute("perform "..pfm.." "..target1.." "..target2)
写成Execute("perform "..pfm.." on "..target1.." "..target2)
然后就发现if target1==nil then 这句其实一直是判断不成立的
始终是选择的第二项,原来的代码输出结果里看不出来,加了on后就发现了,求指点~ 回复 16# cantus
楼主很细心啊!其实只输入lian的时候,target1 == ""而不是nil,所以那段代码的确可以简化。 本帖最后由 cantus 于 2013-2-1 07:12 PM 编辑
改为if target1=="" then 后
测试成功!
感谢hijacker前辈!感谢yyahoo前辈!
今天学了不少东西,哈哈~
zmud7.21对中文支持不好,尤其是在简体中文系统下玩big5码的mud,更加是一塌糊涂,
加载big5字库后在触发编辑那里全是乱码,没法用,cmud更是不堪,换了mush才解决问题,
希望能在前辈们的指点下尽快学会mush吧~
刚才的alias写法有个比较隐蔽的问题,如果有两个alias 名字为cf和cfm,实际运行时,都是执行的cf,
因为正则可以匹配,明天再研究这个问题吧,睡觉了,再次感谢^^ 感觉加了结束符号后可能影响正则匹配
比如cf$\\s?(\\w*)应该就不能匹配后面的内容了吧?
这会在值班,没法测试,我觉得是不是写成这样可行:
cf\\b\\s?(\\w*)
这样就表示必须匹配cf这个单词,后面可能有个空格加一些字符,如果cfm就会判断不匹配,请前辈指点~ 下班了,刚测试了 cf\\b\\s?(\\w*)
结果是可以正确匹配,这样即使有cfm,cfa,cfb也不会出错了
正则表达式确实是个强悍的工具啊,继续学习~
另外搞懂了 临时别名 - 不会被保存到游戏配置文件中
这个设置的好处是游戏设置文件里不会放置alias,所有的alias都由脚本加载,很干净,易于统一修改
页:
1
[2]