Ломание энтити и появление его

Как сделать так что бы из за дамага энтити ломалось(исчезало)
А потом по таймеру появлялось на том же месте?

Памагите:skull::skull::skull:

Странно что не ответили, у энтити уже есть хп или нужно регистрировать отдельно?

Как сделать удаление я понял, все сделал, а как сделать что бы оно появлялось на том же месте по таймеру?

перед удалением:

local ang=ent:GetAngles()
local pos=ent:GetPos()
local class=ent:GetClass()
ent:Remove()

timer.Simple(60,function()
local ent=ents.Create(class)
ent:SetAngle(ang)
ent:SetPos(pos)
ent:Spawn()


end)

no work,в ициализацию вставлял не робит,вставил в ontake damage урон перестал проходить.
Держи код мб поймёшь в чём проблема
AddCSLuaFile(‘cl_init.lua’)
AddCSLuaFile(‘shared.lua’)
include(‘shared.lua’)

function ENT:Initialize()
self:SetModel(‘models/props/de_inferno/tree_small.mdl’)

self:PhysicsInit(SOLID_VPHYSICS)
self:SetMoveType(MOVETYPE_NONE)
self:SetSolid(SOLID_VPHYSICS)
self:SetHealth(100)

end

function ENT:OnTakeDamage(dmg)
self:SetHealth(self:Health() - dmg:GetDamage())
if not (self:Health() <= 0) then return end
self:Remove()
end

Решение:

function ENT:OnTakeDamage(dmg)
    self:SetHealth(self:Health() - dmg:GetDamage())
    if self:Health() <= 0 then
        self:Remove()
        local ang=self:GetAngles()
        local pos=self:GetPos()
        local class=self:GetClass()
        timer.Simple(5,function()
            local ent = ents.Create(class)
            ent:SetAngles(ang)
            ent:SetPos(pos)
            ent:Spawn()
        end)
    end
end

При поддержке Galo4ka.

1 лайк

В коде попытка обращение в объекту, который был удалён.
Вот изменённый код

function ENT:OnTakeDamage(dmg)
    self:SetHealth(self:Health() - dmg:GetDamage())
    if self:Health() <= 0 then
        local class, pos, ang = self:GetClass(), self:GetPos(), self:GetAngles()
        self:Remove()
        timer.Simple(5,function()
            local ent = ents.Create(class)
            ent:SetPos(pos)
            ent:SetAngles(ang)
            ent:Spawn()
        end)
    end
end

Что ты высер брат, дерево будет удаляться после одного удара, ты ваще понял что ты написал?

Почему она должна удаляться после одного удара?

У человека была проверка if self:Health() > 0 then
А сейчас изменил.