I think this should work.
on *:TEXT:!cry:#: {
if (%flood.cries) || ($nick != $mid(#,2) { halt }
if (!%cries) {
set %cries 1
msg # $mid(#,2) has started crying for the first time!
}
set -u5 %flood.cries On
inc %cries
msg # $mid(#,2) cried %cries times!
}
This will check if the variable %cries exists, and if it doesn't, then it'll create it and give the "silly" message, with any uses after being the standard "cried X times".
This should also set a global 5 second cooldown as to keep the spam down to more "reasonable" amounts.
For more details about how it works, try /help /inc and /help /var.
(I recommend /help /var since it shows details on how incrementing worked. It's better to global set a variable otherwise if you're going to keep track. /help /set for details there.)