Physics Objects only being valid sometimes

Hiya, i’m trying to make a kind of missile entity.
Problem is, when it’s supposed to set the force forward, it only does it every couple of thinks, and then errors on all the rest of them.
Why does that happen?
here’s my babycode:
[lua]
function ENT:Think()
if self.Target and self.Target:IsValid() then – completely unused as of right now
self:AdjustDirection(self.Target)
else
local phys = self.Entity:GetPhysicsObject()
if (phys:IsValid()) then --NEEDED, or error inbetween
phys:SetVelocityInstantaneous(self:GetForward() * 200)
end
end
end
[/lua]

If it’s something really stupid, feel free to box me up.
Thanks!

Do you use “self.Entity” instead of just “self” because you’re used to it?
I don’t know if still doing that could cause any issues.
I guess, since I see nothing wrong, try using just “self”.

I fixed this issue by assigning the physobj when it initializes, and using that in think.
Also, to fix the issue where it wasnt going off quickly enough, i just set the gravity of the entity to 0.