我一直在尝试为gmod做一个mod,其中包括derma panel。但是当我尝试使用这种皮肤时,会出现错误。
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)"
由于您以共享方式调用它,因此它同时在服务器和客户端上运行。如果错误为蓝色,则是因为vgui表在服务器上不存在,并且在服务器实例中出错,但是在客户端运行良好。
您可以将其放在if CLIENT语句中,一切都会好的。