Making a prop follow you

Hey is a it possible to create a scripted entitie that is a prop and it just follows you around?

If anyone can help me that would be great!

I believe you would use something along the lines of.

local proppos = LocalPlayer():GetPos() - Vector( 20, 20, 0)

entity:SetPos(proppos)

(Off the top of my head probably wrong but it’s worth a try :smiley: )

Mhm doesn’t really help me :stuck_out_tongue:

well that would make it follow you…

If you dont know how to spawn a prop entiity go look on the wiki.

Look at how he did it.
http://www.facepunch.com/showthread.php?p=20146182#post20146182


AddCSLuaFile ("cl_init.lua")
AddCSLuaFile ("shared.lua")
include ("shared.lua")
 
resource.AddFile("particles/smoke.pcf")
function ENT:Initialize()
        self.Entity:SetModel ("models/Gibs/HGIBS.mdl")
        self.Entity:PhysicsInit(SOLID_VPHYSICS)
        self.Entity:SetMoveType(MOVETYPE_VPHYSICS)
        self.Entity:SetSolid(SOLID_VPHYSICS)
        self.PhysObj=self.Entity:GetPhysicsObject()
                if(self.PhysObj:IsValid()) then
                self.PhysObj:EnableGravity(false)
                self.PhysObj:Wake()
                end
        
        end
        
ENT.OurHealth = 100
 
function ENT:Use( activator, caller )
        self.Target = activator
end
 
function ENT:SpawnFunction ( ply,tr )
        if not tr.HitWorld then
        return 
        end
        local ent = ents.Create("construct")
        ent:SetPos(tr.HitPos + Vector(0,0,50))
        ent:Spawn()
        ent.Target = ply
        return ent
end
function ENT:OnTakeDamage(dmg)
        self.Entity:TakePhysicsDamage(dmg)
        if dmg:GetAttacker():IsPlayer() then
                self.angry = true
                
        end
end
 
function ENT:Think()
 
        if ValidEntity(self.Target) then 
        
                if self.angry then
        
                        if not self.Target:Alive() then
                                self.angry = false
                                ParticleEffectAttach("smoke",PATTACH_ABSORIGIN_FOLLOW,self,0)
                        end
 
                                        local eyes = self.Target:LookupAttachment("eyes")
                           
                                        local pos = self:GetPos()
   
                                        local tpos = self.Target:GetAttachment(eyes).Pos
 
                                        local vec = (tpos - pos)
                           
                                        local ang = vec:Angle()
                                                   
                                        self:SetAngles(ang)
                                           
                                        local vecnorm = vec:GetNormal()
                           
                                        local phys = self:GetPhysicsObject()
                           
                                        phys:AddAngleVelocity (phys:GetAngleVelocity()*-1)
                           
                                        phys:ApplyForceCenter(vec * 170 * phys:GetMass()) 
                                        
                                        phys:SetVelocity(phys:GetVelocity() + Vector(0,0,2*math.cos(4*CurTime())))              
                        
                end
                        
                        elseif ValidEntity(self.Target) then 
                        
               local eyes = self.Target:LookupAttachment("eyes")
                           
                           local pos = self:GetPos()
   
                           local tpos = self.Target:GetAttachment(eyes).Pos
 
               local vec = (tpos - pos)
                           
                           local ang = vec:Angle()
                                                   
                           self:SetAngles(ang)
                                           
                           local vecnorm = vec:GetNormal()
                           
               local phys = self:GetPhysicsObject()
                           
                           phys:AddAngleVelocity (phys:GetAngleVelocity()*-1)
                           
                                if vec:Length() >= 170 then
                                        phys:ApplyForceCenter(vecnorm * 170 * phys:GetMass()) 
                                elseif vec:Length() > 40 then
                                        phys:ApplyForceCenter( vec * phys:GetMass())                                    
                                end
                                                                                
                                phys:SetVelocity(phys:GetVelocity() + Vector(0,0,2*math.cos(4*CurTime())))
                
        end
end

How would I turn it into a prop that is on the ground?

This should be in requests as you clearly dont want to do it your self, but if you do then read some lua tutorials first.