我的朋友给我发了这个脚本,我得到的错误是
[错误] gamemodes/santosrp/gamemode/sh_pacmodels.lua:137:尝试索引全局"pac"(零值( 1. 玩家切换武器 - 游戏模式/桑托斯普/游戏模式/sh_pacmodels.lua:137 2. 更新播放器 - 游戏模式/桑托斯普/游戏模式/sh_pacmodels.lua:169 3. 未知 - 游戏模式/桑托斯RP/游戏模式/cl_init.lua:105
sh_pacmodels 137 是这个
function GM.PacModels:PlayerSwitchWeapon( pPlayer, entOldWep, entNewWep )
if not pPlayer.AttachPACPart then
pac.SetupENT( pPlayer ) --line 137
pPlayer:SetPACDrawDistance( GetConVarNumber("srp_pac_drawrange") )
end
local invalid
for slotName, _ in pairs( GAMEMODE.Inv.m_tblEquipmentSlots ) do
item = GAMEMODE.Inv:GetItem( GAMEMODE.Player:GetSharedGameVar(pPlayer, "eq_slot_".. slotName, "") )
if not item or not item.PacOutfit then continue end
if not IsValid( entOldWep ) or not IsValid( entNewWep ) then continue end
if item.EquipGiveClass == entOldWep:GetClass() or item.EquipGiveClass == entNewWep:GetClass() then
invalid = true
break
end
end
sh_pacmodels 169 是这个
function GM.PacModels:UpdatePlayers()
if not self.m_intLastThink then self.m_intLastThink = CurTime() +0.1 end
if self.m_intLastThink > CurTime() then return end
self.m_intLastThink = CurTime() +0.1
local ragdoll, item
for k, v in pairs( player.GetAll() ) do
--Track active weapon
if not v.m_entLastActiveWeapon then
v.m_entLastActiveWeapon = v:GetActiveWeapon()
else
if v:GetActiveWeapon() ~= v.m_entLastActiveWeapon then
self:PlayerSwitchWeapon( v, v.m_entLastActiveWeapon, v:GetActiveWeapon() ) -- line 169
v.m_entLastActiveWeapon = v:GetActiveWeapon()
end
end
未
定义pac
。
是的,就是这么简单。