public static int GetUniqueRandom( int count )
{
int avail = 0;
for ( int i = 0; i < count; ++i )
{
if ( !m_Props[i] )
m_Possible[avail++] = i;
}
if ( avail == 0 )
return -1;
int v = m_Possible[Utility.Random( avail )];
m_Props.Set( v, true );
return v;
}