Dark RP Money Printers !

Hi everyone i’m coding a server right now and i had my first problem while adding money printers. Everything work fine except when i remove this from the original darkrp money printer :

function ENT:BurstIntoFlames()
GAMEMODE:Notify(self:Getowning_ent(), 0, 4, “Your money printer is overheating!”)
self.burningup = true
local burntime = math.random(8, 18)
self:Ignite(burntime, 0)
timer.Simple(burntime, function() self:Fireball() end)
end

i don’t know why when i remove it work. The max printers that a normal player can have it’s 2 and if i spawn two printers and destroy both if i try to spawn them back it says i reach the limit of printers.
it seems that the server dosen’t recognize that i destroy the printers and i’m allow to spawn 2 again. sorry for my bad english hehe please help me :frowning: there’s the full code :
i’m trying to remove this because i don’t want my printers to be set on fire when i’m destroying it !

AddCSLuaFile(“cl_init.lua”)
AddCSLuaFile(“shared.lua”)
include(“shared.lua”)

ENT.SeizeReward = 950

local PrintMore
function ENT:Initialize()
self:SetModel(“models/props_c17/consolebox01a.mdl”)
self:PhysicsInit(SOLID_VPHYSICS)
self:SetMoveType(MOVETYPE_VPHYSICS)
self:SetSolid(SOLID_VPHYSICS)
local phys = self:GetPhysicsObject()
phys:Wake()

self.sparking = false
self.damage = 100
self.IsMoneyPrinter = true
timer.Simple(math.random(100, 350), function() PrintMore(self) end)

end

function ENT:OnTakeDamage(dmg)
if self.burningup then return end

self.damage = (self.damage or 100) - dmg:GetDamage()
if self.damage <= 0 then
	local rnd = math.random(1, 10)                                     
	if rnd < 3 then
		self:BurstIntoFlames()
	else
		self:Destruct()
		self:Remove()
	end
end

end

function ENT:Destruct()
local vPoint = self:GetPos()
local effectdata = EffectData()
effectdata:SetStart(vPoint)
effectdata:SetOrigin(vPoint)
effectdata:SetScale(1)
util.Effect(“Explosion”, effectdata)
GAMEMODE:Notify(self:Getowning_ent(), 1, 4, “Your money printer has exploded!”)
end

function ENT:BurstIntoFlames()
GAMEMODE:Notify(self:Getowning_ent(), 0, 4, “Your money printer is overheating!”)
self.burningup = true THIS IS WHAT I TRY TO REMOVE.
local burntime = math.random(8, 18)
self:Ignite(burntime, 0)
timer.Simple(burntime, function() self:Fireball() end)
end

function ENT:Fireball()
if not self:IsOnFire() then self.burningup = false return end
local dist = math.random(20, 280) – Explosion radius
self:Destruct()
for k, v in pairs(ents.FindInSphere(self:GetPos(), dist)) do
if not v:IsPlayer() and not v:IsWeapon() and v:GetClass() ~= “predicted_viewmodel” and not v.IsMoneyPrinter then
v:Ignite(math.random(5, 22), 0)
elseif v:IsPlayer() then
local distance = v:GetPos():Distance(self:GetPos())
v:TakeDamage(distance / dist * 100, self, self)
end
end
self:Remove()
end

PrintMore = function(ent)
if not IsValid(ent) then return end

ent.sparking = true
timer.Simple(3, function()
	if not IsValid(ent) then return end
	ent:CreateMoneybag()
end)

end

function ENT:CreateMoneybag()
if not IsValid(self) or self:IsOnFire() then return end

local MoneyPos = self:GetPos()

if math.random(1, 22) == 3 then self:BurstIntoFlames() end

local amount = GAMEMODE.Config.mprintamount
if amount == 0 then
	amount = 250
end

DarkRPCreateMoneyBag(Vector(MoneyPos.x + 15, MoneyPos.y, MoneyPos.z + 15), amount)
self.sparking = false
timer.Simple(math.random(100, 350), function() PrintMore(self) end)

end

function ENT:Think()

if self:WaterLevel() > 0 then
	self:Destruct()
	self:Remove()
	return
end

if not self.sparking then return end

local effectdata = EffectData()
effectdata:SetOrigin(self:GetPos())
effectdata:SetMagnitude(1)
effectdata:SetScale(1)
effectdata:SetRadius(2)
util.Effect("Sparks", effectdata)

end

No wonder nobody replied yet.
No lua tags.
Making a separate thread, while theres: http://forum.facepunch.com/showthread.php?t=1249475