在Lua中切换功能时出错?

时间:2015-01-03 19:14:54

标签: lua

这适用于游戏,但我认为所有规则都适用。我有一个

的功能
function nolag()
    if !nolag then 
        nolag = true
        ply:ConCommand("ax_stoplag")
    elseif nolag then 
        nolag = false
        ply:ConCommand("ax_resetlag")
    end
end     

在我的情况下,ply:ConCommand("ax_stoplag")基本上是print ("ax_stoplag")的另一个术语。但是我有一个按钮

CreateButton( "No-Lag", MISCtab, black, tblack, true, 355, 130, 95, 20, "Toggle No-Lag on and off", function () nolag() end )

这样就会创建一个按钮,然后链接到nolag函数。但是我可以点击它,但当我再次点击它时没有任何反应,我得到一个错误(游戏中的错误)。基本上nolag = truenolag = false是问题并导致错误。

1 个答案:

答案 0 :(得分:5)

你定义了nolag作为函数。

在lua中执行if !nolag then,{/ 1}}

基本上检查是否未设置nolag(如果未设置nolag,则此语句将返回true)。

之后您将nolag(函数变量)设置为true / false,这意味着下一次按钮单击,

您的应用程序将崩溃,请尝试以下两个选项之一。

if not nolag then