public bool AntiMacroCheck(Skill skill, object obj)
{
if (obj == null || m_AntiMacroTable == null || this.AccessLevel != AccessLevel.Player)
return true;
Hashtable tbl = (Hashtable)m_AntiMacroTable[skill];
if (tbl == null)
m_AntiMacroTable[skill] = tbl = new Hashtable();
CountAndTimeStamp count = (CountAndTimeStamp)tbl[obj];
if (count != null)
{
if (count.TimeStamp + SkillCheck.AntiMacroExpire <= DateTime.Now)
{
count.Count = 1;
return true;
}
else
{
++count.Count;
if (count.Count <= SkillCheck.Allowance)
return true;
else
return false;
}
}
else
{
tbl[obj] = count = new CountAndTimeStamp();
count.Count = 1;
return true;
}
}