Проблема с правами клиентов. Владелец энтити покупаемого "world"

Тебе надо было сделать функцию ENT:SpawnFunction для установки владельца сразу после спавна энтити.


ENT.Type = "anim"
ENT.Base = "base_gmodentity"

ENT.PrintName = "Wide Large"
ENT.Category = "URLPaint"
ENT.Author = "crester"

ENT.Spawnable = true

if SERVER then

    -- Установка владельца при спавне
    function ENT:SpawnFunction(ply, tr, ClassName)
        if not tr.Hit then return end

        local ent = ents.Create(ClassName)
        ent:SetPos(tr.HitPos + tr.HitNormal * 16)
        ent:Spawn()
        ent:Activate()

        -- Установка владельца через CPPI (если поддерживается)
        if CPPI then
            ent:CPPISetOwner(ply)
        end

        -- Также можно сохранить владельца вручную, если CPPI не используется
        ent.Owner = ply

        return ent
    end

    function ENT:Initialize()
        self:SetModel("models/crester/urlpaint/painting_2.mdl")

        self:PhysicsInit(SOLID_VPHYSICS)
        self:SetMoveType(MOVETYPE_VPHYSICS)
        self:SetSolid(SOLID_VPHYSICS)

        self:SetUseType(SIMPLE_USE)
    end

    function ENT:Use(caller)
        if CPPI then
            if self:CPPIGetOwner() ~= caller then
                return
            end
        else
            if not self.Owner then
                self.Owner = caller
            end
            if self.Owner ~= caller then
                return
            end
        end

        net.Start("URLPaint Menu")
            net.WriteEntity(self)
        net.Send(caller)
    end

    function ENT:OnRemove()
        if URLPaint.List[self] then
            URLPaint.List[self] = nil
        end
    end

else

    function ENT:Draw()
        self:DrawModel()

        if self:GetNWString("URLPaint Pic") == "" or Material(self:GetNWString("URLPaint Pic")):IsError() then
            return
        end

        local ang = self:GetAngles()
        ang:RotateAroundAxis(ang:Up(), 90)
        ang:RotateAroundAxis(ang:Forward(), 90)

        cam.Start3D2D(self:GetPos() + (self:GetUp() * 51.9) + (self:GetRight() * (self:OBBMaxs().y - 0.99)), ang, 0.0995)
            surface.SetDrawColor(color_white)
            surface.SetMaterial(Material(self:GetNWString("URLPaint Pic")))
            surface.DrawTexturedRect(0, 0, 512, 512)
        cam.End3D2D()
    end

end