vgui - это нулевое значение Gmod - PullRequest
0 голосов
/ 27 октября 2019

Я пытался сделать мод для gmod, который включает панель derma. Но когда я пытаюсь использовать эту дерму, появляется ошибка.

AddCSLuaFile( "shared.lua" )
include("shared.lua")

function SWEP:PrimaryAttack()   
    return false
end

function SWEP:SecondaryAttack()
    DermaPanel()
end


function SWEP:Reload()
    return false
end

SelectedPower = "Stasis"

function DermaPanel()
    local Frame = vgui.Create( "DFrame" )
    Frame:SetPos(650,500)
    Frame:SetSize( 585, 150 )
    Frame:SetTitle( "Biotic Powers" )
    Frame:SetVisible( true )
    Frame:SetDraggable( false )
    Frame:ShowCloseButton( true )
    Frame:MakePopup()

    local bpush = vgui.Create( "DButton", Frame )
    bpush:SetText( "Push" )
    bpush:SetSize(100,30)
    bpush:SetPos(25,100)

    local bpull = vgui.Create( "DButton", Frame )
    bpull:SetText( "Pull" )
    bpull:SetSize(100,30)
    bpull:SetPos(135,100)

    local bstasis = vgui.Create( "DButton", Frame )
    bstasis:SetText( "Stasis" )
    bstasis:SetSize(100,30)
    bstasis:SetPos(245,100)

    local blift = vgui.Create( "DButton", Frame )
    blift:SetText( "Lift" )
    blift:SetSize(100,30)
    blift:SetPos(355,100)

    local bbarrier = vgui.Create( "DButton", Frame )
    bbarrier:SetText( "Barrier" )
    bbarrier:SetSize(100,30)
    bbarrier:SetPos(465,100)
end

Когда я пытаюсь открыть панель дермы с помощью вторичного огня, появляется эта ошибка:

"[ERROR] addons/mass effect biotics/lua/weapons/weapon_biotics.lua:59: attempt to index global 'vgui' (a nil value)"

1 Ответ

1 голос
/ 27 октября 2019

Поскольку вы вызываете его в общий доступ, он запускается как на сервере, так и на клиенте. Если ошибка синего цвета, то это связано с тем, что таблица vgui не существует на сервере и в экземпляре сервера происходит ошибка, но она отлично работает на стороне клиента.

Вы можете поместить ее в if CLIENTЗаявление и все будет хорошо.

...