GMod DFrame Lua错误

时间:2016-06-15 19:47:33

标签: lua garrys-mod

所以我正在编写我的DFrame,以便我正在使用插件,并且我不断收到此错误。

" [ERROR] addons / dareaddon / lua / autorun / sh.lua:25:' end'预期(关闭'如果'在第5行)附近''"

这是我的原始代码。

if (CLIENT) then
    local midW, midH = ScrW() / 2, Scrh() / 2
    local function OpenMyDerma()
        local MyDerma = vgui.Create( "DFrame" )
        MyDerma:SetSize( 250, 250 )
        MyDerma:SetPos( midW - ( MyDerma:GetWide() / 2 ), midH - ( MyDerma:GetTall() / 2) )
        MyDerma:SetTitle( "OriginalServers Jailbreak" )

        local MyLabel = vgui.Create( "DLabel", MyDerma )
        MyLabel:SetPos( 90, 30 )
        MyLabel:SetText( "LabelTest" )

        local MyButton = vgui.Create( "DButton", MyDerma )
        MyButton:SetText( "Click to die." )
        MyButton:SetPos( 90, 60 )
        MyButton.DoClick = function()
            RunConsoleCommand( "explode" )
        end
    end
    concommand.Add( "openderma", OpenMyDerma )
end

这个代码用缩进很难理解,所以这里是截图。 Code Screenshot

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

  

[错误] addons / dareaddon / lua / autorun / sh.lua:25:'结束'预期(   在

附近关闭'if'第5行)

完全阅读错误。 找到文件夹

  

<强>附加元件/ dareaddon / LUA /自动运行/

然后

  1. 打开名为 sh.lua 的文件。
  2. 转到 “25” 行并检查。
  3. 转到第25行附近的功能
  4. 检查功能是否已关闭
  5. 如果没有,则转到“5”行查看代码并关闭if是否结束。确保第5行下没有任何其他if语句,如果是,那么你有类似的东西。
  6. if x
       if y
       end
    end

    或许多人

    if x
    end
    if y
    end
    

    取决于您是否只想测试y或者您想独立测试x和y。

    您需要使用if

    关闭end

    FUNCTION
        IF
    
    
        END;
    END;