hey all,
i know a BIT of lua so i can edit lua scipts and scipt weapons and shipments
i now copyd the original money printer and i did edit it a bit it is now as you see in screenshot 1 thats the printer now well i was in an other darkrp server and the moneyprinter was gold and the money kept in the printer (see screenshot 2) untill you pressed E on it and you gained the money in your wallet then that was verry awesome how could i do that?
I hope you guys can help me
Screenshot 1:
Screenshot 2:
my init.lua
-- RRPX Orginal Money Printer by philxyz
AddCSLuaFile("cl_init.lua")
AddCSLuaFile("shared.lua")
include("shared.lua")
function ENT:Initialize()
self:SetModel("models/props_lab/reciever01a.mdl")
self:PhysicsInit(SOLID_VPHYSICS)
self:SetMoveType(MOVETYPE_VPHYSICS)
self:SetSolid(SOLID_VPHYSICS)
local phys = self:GetPhysicsObject()
if phys:IsValid() then phys:Wake() end
self.sparking = false
self.damage = 200
self.IsMoneyPrinter = true
timer.Simple(5, self.CreateMoneybag, self)
end
function ENT:OnTakeDamage(dmg)
if self.burningup then return end
self.damage = self.damage - 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)
Notify(self.dt.owning_ent, 1, 4, "Your Golden Money Printer has exploded!")
end
function ENT:Fireball()
if not self:IsOnFire() then return end
local dist = math.random(30, 300) -- Explosion radius
self:Destruct()
for k, v in pairs(ents.FindInSphere(self:GetPos(), dist)) do
if not v:IsPlayer() and not v.IsMoneyPrinter then v:Ignite(math.random(5, 22), 0) end
end
self:Remove()
end
local function PrintMore(ent)
if ValidEntity(ent) then
ent.sparking = true
timer.Simple(1, ent.CreateMoneybag, ent)
end
end
function ENT:CreateMoneybag()
if not ValidEntity(self) then return end
if self:IsOnFire() then return end
local MoneyPos = self:GetPos()
local amount = 1000
if amount == 0 then
amount = 1000
end
DarkRPCreateMoneyBag(Vector(MoneyPos.x + 15, MoneyPos.y, MoneyPos.z + 15), amount)
self.sparking = false
timer.Simple(math.random(100, 150), PrintMore, self)
end
function ENT:Think()
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
my cl_init.lua
include("shared.lua")
function ENT:Draw()
self:DrawModel()
local Pos = self:GetPos()
local Ang = self:GetAngles()
local owner = self.dt.owning_ent
owner = (ValidEntity(owner) and owner:Nick()) or "unknown"
surface.SetFont("HUDNumber6")
local TextWidth = surface.GetTextSize("Golden Money printer")
local TextWidth2 = surface.GetTextSize(owner)
Ang:RotateAroundAxis(Ang:Up(), 90)
cam.Start3D2D(Pos + Ang:Up() * 11.5, Ang, 0.11)
draw.WordBox(2, -TextWidth*0.5, -30, "Golden Money printer", "HUDNumber6", Color(140, 0, 0, 100), Color(212, 175, 55,255))
draw.WordBox(2, -TextWidth2*0.5, 18, owner, "HUDNumber6", Color(140, 0, 0, 100), Color(212, 175, 55,255))
cam.End3D2D()
end
my shared.lua
ENT.Type = "anim"
ENT.Base = "base_gmodentity"
ENT.PrintName = "Golden Money printer"
ENT.Author = ""
ENT.Spawnable = false
ENT.AdminSpawnable = false
function ENT:SetupDataTables()
self:DTVar("Int",0,"price")
self:DTVar("Entity",1,"owning_ent")
end