vgui 是一个零值 Gmod
Posted
技术标签:
【中文标题】vgui 是一个零值 Gmod【英文标题】:vgui is a nil value Gmod 【发布时间】:2019-10-27 13:03:21 【问题描述】:我一直在尝试为 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)"
【问题讨论】:
【参考方案1】:由于您在共享中调用它,因此它同时在服务器和客户端上运行。如果错误是蓝色的,那是因为 vgui 表在服务器上不存在,并且在服务器实例中出错,但它在客户端运行正常。
你可以把它放在 if CLIENT 语句中,一切都会好的。
【讨论】:
顺便说一句:只是提醒一下:这里的问题和答案不限于少数字符。因此,在允许的字符数非常有限的情况下,请不要使用正常的缩写。也就是说,请使用正常的英语。以上是关于vgui 是一个零值 Gmod的主要内容,如果未能解决你的问题,请参考以下文章
我正在尝试通过 Logitech GHub 为 GMod 制作一个 lua 脚本,将玩家视图旋转 180 度,但不知道如何进行旋转