function ulx.Rocket( calling_ply, target_ply )
	local i = 1
		local v = target_ply[ i ]

		if ulx.getExclusive( v, calling_ply ) then
			ULib.tsayError( calling_ply, ulx.getExclusive( v, calling_ply ), true )
			table.remove( target_ply, i )
		else
		
			v:SetMoveType(MOVETYPE_WALK)
		tcolor = team.GetColor( v:Team()  )
		local trail = util.SpriteTrail(v, 0, Color(tcolor.r,tcolor.g,tcolor.b), false, 60, 20, 4, 1/(60+20)*0.5, "trails/smoke.vmt")  				
		v:SetVelocity(Vector(0, 0, 2048))
		timer.Simple(2.5, function()
			local Position = v:GetPos()		
			local Effect = EffectData()
			Effect:SetOrigin(Position)
			Effect:SetStart(Position)
			Effect:SetMagnitude(512)
			Effect:SetScale(128)
			util.Effect("Explosion", Effect)
			timer.Simple(0.1, function()
				v:Kill() 
				trail:Remove()
				end )
				end )
			i = i + 1
		end
	return #target_ply > 0
end
local Rocket= ulx.command( CATEGORY_NAME, "ulx rocket", ulx.Rocket, "!rocket" )
Rocket:addParam{ type=ULib.cmds.PlayersArg }
Rocket:defaultAccess( ULib.ACCESS_ADMIN )
Rocket:help( "Rockets target(s)." )
Rocket:logString( "#1s rocketed #2s" )
ulx.addToMenu( ulx.ID_MCLIENT, "rocket", "ulx rocket" )