Adds convenience functions to freebies.
This commit is contained in:
@@ -5,6 +5,7 @@
|
|||||||
namespace SBF {
|
namespace SBF {
|
||||||
namespace {
|
namespace {
|
||||||
using std::ostream;
|
using std::ostream;
|
||||||
|
using std::vector;
|
||||||
} // End namespace
|
} // End namespace
|
||||||
|
|
||||||
ostream& operator<<(ostream& os, const FreebieType& freebie) {
|
ostream& operator<<(ostream& os, const FreebieType& freebie) {
|
||||||
@@ -28,10 +29,31 @@ FreebieType GetFreebie(int freebie_id) {
|
|||||||
return kFreebieUnknown;
|
return kFreebieUnknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
void FillFreebies(std::vector<FreebieType>& freebies) {
|
void FillFreebies(vector<FreebieType>& freebies) {
|
||||||
freebies.clear();
|
freebies.clear();
|
||||||
for (int id = 1; id <= kFreebiesCount; id++) {
|
for (int id = 1; id <= kFreebiesCount; id++) {
|
||||||
freebies.push_back(GetFreebie(id));
|
freebies.push_back(GetFreebie(id));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vector<FreebieType> GetFreebies() {
|
||||||
|
vector<FreebieType> freebies;
|
||||||
|
|
||||||
|
FillFreebies(freebies);
|
||||||
|
|
||||||
|
return freebies;
|
||||||
|
}
|
||||||
|
|
||||||
|
vector<FreebieType> GetAvailableFreebies(int freebie_points) {
|
||||||
|
vector<FreebieType> freebies;
|
||||||
|
|
||||||
|
for (int id = 1; id <= kFreebiesCount; id++) {
|
||||||
|
FreebieType freebie = GetFreebie(id);
|
||||||
|
if (freebie.cost <= freebie_points) {
|
||||||
|
freebies.push_back(freebie);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return freebies;
|
||||||
|
}
|
||||||
} // End namespace SBF
|
} // End namespace SBF
|
||||||
|
|||||||
@@ -148,6 +148,10 @@ FreebieType GetFreebie(int freebie_id);
|
|||||||
/// @param freebies The vector to fill. It will be cleared first.
|
/// @param freebies The vector to fill. It will be cleared first.
|
||||||
void FillFreebies(std::vector<FreebieType>& freebies);
|
void FillFreebies(std::vector<FreebieType>& freebies);
|
||||||
|
|
||||||
|
std::vector<FreebieType> GetFreebies();
|
||||||
|
|
||||||
|
std::vector<FreebieType> GetAvailableFreebies(int freebie_points);
|
||||||
|
|
||||||
} // End namespace SBF
|
} // End namespace SBF
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user