The script command freelook returns false when Vehicle Freelook is active (unless freelook is also explicitly toggled - which there is little or no reason to do).
If the distinction between standard freelook and vehicle freelook is deemed important then the command should return a 3rd state (null?) if VF is active.