【求助】【MUSH】关于AddAlias函数的用法【已解决】
本帖最后由 lifesoul 于 2013-1-25 11:58 AM 编辑记得在某个帖子里边看到过一部分代码,可是实现在lua中通过AddAlias添加别名,调用此别名时,可为某个变量赋值。
我的代码是写成这样子的:
AddAlias("alias_go", "gogo", SetVariable("IsGo", "0"), alias_flag.Enabled + alias_flag.Replace + alias_flag.Temporary, "")
SetAliasOption("alias_go", "send_to", 12)
IsGo 是一变量,这样写不执行不过去ttk_27
当然,有一种办法是创建一个function aaa(),在aaa内对变量进行赋值操作,然后AddAlias直接调用aaa(),但是这样代码质量不高啊。
另外,例如这样的:
SetVariable("IsGo", false)
这个,如果需要赋值的数据时boolen型,咋整?总是提示我SetVariable第二个参数必须是string。
请各位仙人给点提示吧ttk_12
北大侠客行MUD,中国最好的MUD 马上下班了,回家试试这样写行不~~~直接发送表达式:
AddAlias("alias_go", "gogo", IsGo=false, alias_flag.Enabled + alias_flag.Replace + alias_flag.Temporary, "")
本帖最后由 lifesoul 于 2013-1-25 10:32 AM 编辑
测试通过了,脚本如下:
AddAlias("alias_go", "gogo", "IsGo = false", alias_flag.Enabled + alias_flag.Replace + alias_flag.Temporary, "")
SetAliasOption("alias_go", "send_to", 12)
其中需要注意的有2点:
1.SetAliasOption("alias_go", "send_to", 12)中,应该选12,发送到脚本。
2.变量IsGo定义时不可加local限定符,看样是动态添加的Alias与lua内部代码不属同一个作用域?
看样子还是半瓶醋逛荡,咱还得再仔细看看lua手册。ttk_28
页:
[1]