MMatchServer_Stage.cpp :
Código:
void MMatchServer::AutoBan(const MUID& uidSender)
{
 MMatchObject* pObj = GetObject(uidSender);
 if( 0 == pObj )
  return;
 LOG(LOG_PROG, "AutoBan: Banning new user");
 LOG(LOG_PROG, "AutoBan: user information: AID: %d, Char Name: %s", pObj->GetAccountInfo()->m_nAID, pObj->GetCharInfo()->m_szName);
 if (!IsEnabledObject(pObj)) return;

 if (m_MatchDBMgr.Ban(pObj->GetAccountInfo()->m_nAID)) {
  MMatchObjectCacheBuilder CacheBuilder;
  CacheBuilder.AddObject(pObj);
  MCommand* pCmdCacheUpdate = CacheBuilder.GetResultCmd(MATCHCACHEMODE_REPLACE, this);
  RouteToListener(pObj, pCmdCacheUpdate);
 }

}
MMatchServer_OnCommand.cpp:
Código:
  case MC_GUNZ_AUTOBAN:
   {    
    AutoBan(pCommand->GetSenderUID());
   }
   break;
MSharedCommandTable.h
Código:
#define MC_GUNZ_AUTOBAN 111199
MSharedCommandTable.cpp

Código:
 C(MC_GUNZ_AUTOBAN, "Match.Gunz.AutoBan", "Autoban packet sent", MCDT_MACHINE2MACHINE)
Código:
MMatchDBMgr.cpp :

Linha : 71

Code:
TCHAR g_szDB_BAN[] = _T("UPDATE Account SET UGradeID=%d WHERE AID=%d");
Linha : 1513
Code:
bool MMatchDBMgr::Ban(const int nAID)
{
    _STATUS_DB_START;
    if (!CheckOpen()) return false;

    CString strSQL;

    try {
        strSQL.Format(g_szDB_BAN, 253, nAID);
        m_DB.ExecuteSQL( strSQL );
    }
    catch(CDBException* e)
    {

        ExceptionHandler(strSQL, e);
        return false;
    }

    _STATUS_DB_END(48);
    return true;
}
MMatchDBMgr.h :

Linha : 236
Code:
    bool Ban(const int nAID);
Código:
inline void ZPostAutoBan()
{
    ZPOSTCMD0(MC_GUNZ_AUTOBAN);
}