Garry的Mod Derma - HTML并包含

时间:2014-04-18 15:56:28

标签: lua

我的Lua出了问题。我使用MOTD为我的服务器制作了HTML,我将在我的网站上托管。

我设置了框架和相应的标签,如图所示

here

但这是我的问题

img

当您按下'接受'退出MOTD时,代码中设置的页面会保持原样并像地狱一样侵入您的屏幕。我的代码如下:

function Welcome ()
    MainMenu = vgui.Create( "DFrame" )
    MainMenu:SetPos( 350, 100 )
    MainMenu:SetSize( 1200, 900 )
    MainMenu:SetTitle( "Welcome Menu" )
    MainMenu:SetBackgroundBlur( true )
    MainMenu:SetVisible( true )
    MainMenu:SetDraggable( true )
    MainMenu:ShowCloseButton( false )
    MainMenu:MakePopup()

    PropertySheet = vgui.Create( "DPropertySheet")
    PropertySheet:SetParent( MainMenu )
    PropertySheet:SetPos( 5, 30 )
    PropertySheet:SetSize( 1190, 820 )

    local DermaButton = vgui.Create( "DButton", DermaPanel )
    DermaButton:SetText( "Agree" )
    DermaButton:SetSize( 165, 30 )
    DermaButton:SetPos( 590, 860 )
    DermaButton:SetParent( MainMenu )

    DermaButton.DoClick = function()
        MainMenu:Close()
        RunConsoleCommand( "say", "I have read and agree with the rules")
    end

    local DermaButton = vgui.Create( "DButton", DermaPanel )
    DermaButton:SetText( "Disagree" )
    DermaButton:SetSize( 165, 30 )
    DermaButton:SetPos( 420, 860 )
    DermaButton:SetParent( MainMenu )

    DermaButton.DoClick = function()
        MainMenu:Close()
        surface.PlaySound( "buttons/button8.wav" )
        RunConsoleCommand( "say", "I disagree with the rules, I will now be disconnected.")
        RunConsoleCommand( "disconnect" )
    end

    local TabOne = vgui.Create( "DPanel" )
    TabOne:SetVisible( true )
    local HTML = vgui.Create("HTML")
    HTML:SetPos(50,50)
    HTML:SetSize(ScrW() - 100, ScrH() - 100)
    HTML:OpenURL("http://www.garrysmod.com")

    local TabThree = vgui.Create( "DPanel" )
    TabThree:SetVisible( true )

    local HTML = vgui.Create("HTML")
    HTML:SetPos(50,50)
    HTML:SetSize(ScrW() - 100, ScrH() - 100)
    HTML:OpenURL("http://www.garrysmod.com")

    local TabTwo = vgui.Create( "DPanel" )
    TabTwo:SetVisible( true )

    local HTML = vgui.Create("HTML")
    HTML:SetPos(50,50)
    HTML:SetSize(ScrW() - 100, ScrH() - 100)
    HTML:OpenURL("http://www.garrysmod.com")

    local TabFour = vgui.Create( "DPanel" )
    TabThree:SetVisible( true )

    local HTML = vgui.Create("HTML")
    HTML:SetPos(50,50)
    HTML:SetSize(ScrW() - 100, ScrH() - 100)
    HTML:OpenURL("http://www.garrysmod.com")

    local TabFive = vgui.Create( "DPanel" )
    TabThree:SetVisible( true )

    local HTML = vgui.Create("HTML")
    HTML:SetPos(50,50)
    HTML:SetSize(ScrW() - 100, ScrH() - 100)
    HTML:OpenURL("http://www.garrysmod.com")

    PropertySheet:AddSheet( "Home", TabOne, "gui/silkicons/heart",
        false, false, "Welcome to the server!" )

    PropertySheet:AddSheet( "Rules", TabTwo, "gui/silkicons/script",
        false, false, "Server rules!" )

    PropertySheet:AddSheet( "Group", TabThree, "gui/silkicons/group",
        false, false, "Group page!" )

    PropertySheet:AddSheet( "Ranks", TabFour, "gui/silkicons/flag_blue",
        false, false, "Ranks and donations!" )

    PropertySheet:AddSheet( "Admins", TabFive, "gui/silkicons/shield",
        false, false, "Your admin squad!" )
end

concommand.Add("OpenMotd", Welcome )

如果您需要快速联系我,我可以在Steam上找到,在steamcommunity.com/id/PonyTerrance下

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您没有在代码中的任何位置关闭HTML对象。

还要记住,您正在使用相同的变量名创建多个HTML对象 - 为每个对象选择一个唯一的变量名,或者只创建一个HTML对象并删除正在创建HTML对象的其他代码段。