Have you tested that? I'm almost positive that won't work..
Pretty sure .IsCollectible or .AlreadyCollected returns NULL no matter what.
Assuming both of them do work, I know for sure AlreadyCollected is a server check (same as when you first hover your mouse, it shows needing to be collected, then changes to already collected). So that check can't be done in an atom because it wouldn't retrieve the value (since atoms are instant and there isn't time allowed for the server to update).
I can code around this by adding a loot thread that handles all of this, but it's a lengthy process to do it right. I don't want to add some half assed method that requires xml files to be updated (because it usually means I have to keep updating them) or have all toons greeding L&L items then manually sort them out. If that's the case, I'd rather 1 toon take them all, then pass them out as I see fit.
If you have tested that code I'll have another look at it, but I'm pretty sure it won't work correctly.