1. Package Gameconnection::setFinishedInitialGhost(%this,%val) and check if %val is 1 if you want to know exactly when they finished ghosting.
To check if they have ghosted at any point, you can use .getFinishedInitialGhost()
This is server sided only.
2. If it's client sided, you could get the shapename from a player object and compare it to the f2 list to see if the name has a player object.
However, that requires looping through a huge group of objects which will cause quite some lag.