myco 发表于 2016-2-16 11:51:47

问一个最白的问题

我设置了两个变量,一个变量名是gf,变量值是force另一个变量名是sf变量值是yun qing(mud西游记里方寸的一个师父),不知道怎么回事就是不能引用这两个变量,无论在游戏中还是在lua脚本中输入learn @gf from @sf或者输入learn GetVariable("gf") from GetVariable("sf")都报错!可是在lua脚本中print这两个变量都是对的啊!这怎么回事呀?我刚接触mush和lua,搞了半天都不行,谁指点下呀谢谢!

北大侠客行MUD,中国最好的MUD

myco 发表于 2016-2-16 11:53:28

注:learn … from …是西游记中想师父学功夫的命令

myco 发表于 2016-2-16 12:28:06

木人告诉我?是不是我问的问题太白痴了

xiaocao 发表于 2016-2-16 13:26:04

你这语法是直接world还script,如果wolrd用@需要勾选展开变量,script的话可以Execute("learn "..GetVariable("gf")" from "..GetVariable("sf"))

myco 发表于 2016-2-16 17:36:27

知道了,谢谢,折腾半天了也不成,惭愧啊

creat 发表于 2016-2-16 20:24:51

GetVariable和SetVariable这两个函数是操作mcl变量的。
使用这两个函数实际上会增加过程的开销,因为需要调用两次额外函数,还要和mcl交换数据。
所以如果不是必须要显式的在看到这个变量的话没有必要使用这两个函数,直接用lua的变量就够了。
比如:do
local gf="force"
local sf="yun qing"
act="learn " .. gf .. " form " .. sf
end这里do end不是必须的,大多数情况下都可以不用
然后Execute (act) 或者 Send (act)
这里Execute是发送到命令解析器,可以支持函数、alias、命令,通过mcl解析后再发送给服务器
Send是直接把内容发送到服务器

seagull 发表于 2016-2-16 21:00:56

回复 6# creat

好几个困扰多时的问题得到了解答,赞
页: [1]
查看完整版本: 问一个最白的问题