Yes, this is really weird because all the values you need to do it in integer math are obtained right there:
bool CCrowboxCore::EnqueueCoin()
{
if (GetUptimeSeconds() - m_uptimeLastCoinDetected < 1) {
return false;
}
m_numEnqueuedDeposits++;
m_uptimeLastCoinDetected = GetUptimeSeconds();
return true;
}