#include "CDRewardsTable.h" void CDRewardsTable::LoadValuesFromDatabase() { auto tableData = CDClientDatabase::ExecuteQuery("SELECT * FROM Rewards"); auto& entries = GetEntriesMutable(); while (!tableData.eof()) { CDRewards entry; entry.id = tableData.getIntField("id", -1); entry.levelID = tableData.getIntField("LevelID", -1); entry.missionID = tableData.getIntField("MissionID", -1); entry.rewardType = tableData.getIntField("RewardType", -1); entry.value = tableData.getIntField("value", -1); entry.count = tableData.getIntField("count", -1); entries.insert(std::make_pair(entry.id, entry)); tableData.nextRow(); } tableData.finalize(); } std::vector CDRewardsTable::GetByLevelID(uint32_t levelID) { std::vector result{}; for (const auto& e : GetEntries()) { if (e.second.levelID == levelID) result.push_back(e.second); } return result; }