好吧这可能是一个愚蠢的问题,但我是编程的新手,所以在这里它gose。我已经编写了一个函数,我希望在RPG风格的游戏中使用它来使玩家基于exp升级
--sets the level based on exp
function levelCheck(exp,level)
repeat
c=math.sqrt(exp)-(level*4)
if ( c>=1 ) then
level=level+1
print("Congradulations level "..level)
end
until ( c<1)
return level
end
我希望这能更新水平变量全球我不确定我说得对,但请帮助。
答案 0 :(得分:1)
每当您通过全局名称解决它们时,lua中的全局变量都会从该函数更新:
write-output
如果它是一个表,函数可以改变它的参数(实际上是它的参数的内容):
variable=1
f=function(x) variable=x end
f()
...它回答标题,但不是你遇到的问题。正如Nicol Boras评论的那样,如果你的f=function(t)
t.variable=4
end
不仅仅是一个数字,你应该重新思考你的方式。
答案 1 :(得分:0)
它的真实水平不仅仅是一个数字,而且计划是将水平用作其他方程式中的变量,例如deff=level*tough+equipment
,例如idk就是计划