// The cool GetAng function by Hamp function GetAng( a, b) local c = Vector( a.x - b.x, a.y - b.y, a.z - b.z ) local d = math.sqrt( ( c.x ^ 2 ) + ( c.y ^ 2 ) + (c.z ^ 2 ) ) local e = Vector( -( c.x / d ), -( c.y / d ), -( c.z / d ) ) angle = Angle(e:Angle().p,e:Angle().y,e:Angle().r) return angle end // using it // Pull in props //local allprops = ents.FindByClass( "prop_physics" ) local entsaround = ents.FindInSphere( self.Entity:GetPos(), 300 ) for nr, prop in ipairs( entsaround ) do if prop:IsValid() then if prop:GetClass()=="prop_physics" or prop:GetClass()=="prop_vehicle_jeep" or prop:GetClass()=="prop_vehicle_airboat" or prop:GetClass()=="prop_vehicle_prisoner_pod" then local calcpos = prop:LocalToWorld(prop:OBBCenter()) local ang = GetAng(self.Entity:GetPos(), calcpos) local selectedprop = prop:GetPhysicsObject() local propmass = selectedprop:GetMass() selectedprop:ApplyForceCenter( -1*ang:Forward() * math.Rand( 500*propmass, 800*propmass ) ) // Make nice lines between nade and props local effectdata = EffectData() effectdata:SetOrigin( selectedprop:GetPos() ) effectdata:SetStart( self.Entity:GetPos() ) effectdata:SetAttachment( 1 ) effectdata:SetEntity( self.Enity ) util.Effect( "BananaNadePull_line", effectdata ) end end end