knightonline/server/shared/database/MonsterSummonListSet.h

33 lines
859 B
C++

#pragma once
class CMonsterSummonListSet : public OdbcRecordset
{
public:
CMonsterSummonListSet(OdbcConnection * dbConnection, MonsterSummonListArray * pMap)
: OdbcRecordset(dbConnection), m_pMap(pMap) {}
virtual tstring GetTableName() { return _T("MONSTER_SUMMON_LIST"); }
virtual tstring GetColumns() { return _T("sSid, sLevel, sProbability, bType"); }
virtual bool Fetch()
{
_MONSTER_SUMMON_LIST pData;
_dbCommand->FetchUInt16(1, pData.sSid);
_dbCommand->FetchUInt16(2, pData.sLevel);
_dbCommand->FetchUInt16(3, pData.sProbability);
_dbCommand->FetchByte(4, pData.bType);
auto itr = m_pMap->GetData(pData.bType);
if (itr == nullptr)
{
itr = new MonsterSummonList();
m_pMap->PutData(pData.bType, itr);
}
// pType, MonsterSummonList vector
itr->push_back(pData);
return true;
}
MonsterSummonListArray *m_pMap;
};