请教 MUSH 里面的变量间运算
RT想请教下 MUSH 里的 变量是怎么计算的 命令是什么
比如 ZMUD 里的 #math可以做四则运算
在MUSH里是怎么实现的
比如我想做一个打坐机器人,已经提取了4个变量变量qi maxqi neili maxneili
我想运算 maxneili*2-neili+1 然后设置成临时变量,是怎么实现的
local dz1=GetVariable("maxneili")*2+1;
local dz2=GetVariable("qi")/10*9;
现在只会写成这样,就不会了
请各位大侠不吝赐教,谢谢
北大侠客行MUD,中国最好的MUD 首先,在获取的时候没有必要用SetVariable,直接赋值就好了。这种消耗型的变量没有写进mcl变量的价值
比如neili,maxneili,qi,maxqi="%1","%2","%3","%4"以上是一个示例,不记得顺序了
其次,运算的时候直接用符号运算就可以
比如local dz1=maxneili*2+1
local dz2=qi/10*9
local skillslevel=(exp*10)^(1/3) 回复 2# creat
首先谢谢知道
现在写成这样,变量和计算得到指导都没问题 ,
下面的判断还是搞不懂怎么写,总是错,求指导,谢谢
exp,pot,maxneili,neili,maxjingli,jinli,maxqi,qi,maxjing,jing="%1","%2","%3","%4","%5","%6","%8","%9","%<11>","%<12>"
local dz1=maxneili*2+1-neili
local dz2=qi/10*9
if dz1<=dz2 then Send ("dazuo "..dz1)
elesif dz1 <= 10 then Send ("dazuo 10")
eles Send ("dazuo "..dz2)
end 逻辑和语法上没错,只是拼写错误
另外推荐用一个Send来处理,否则容易引起后续维护上的麻烦local act1
if dz1<=dz2 then act1="dazuo "..dz1
elseif dz1 <= 10 then act1="dazuo 10"
else act1="dazuo "..dz2
end
print (act1) 回复 4# creat
谢谢 搞定了这个弄懂了就能搞定一堆初级的东西了
页:
[1]