auto &terrain = terrains[s];
terrain.idx = s;
terrain.tag = tokens[2];
-
terrain.mimic = s;
terrain.destroyed = s;
for (auto j = 0; j < MAX_FEAT_STATES; j++) {
}
// J:name_ja, E:name_en
- auto &terrain = *(terrains.end() - 1);
if (tokens[0] == _("J", "E")) {
if (tokens.size() < 2 || tokens[1].size() == 0) {
return PARSE_ERROR_TOO_FEW_ARGUMENTS;
}
+ auto &terrain = *terrains.rbegin();
terrain.name = tokens[1];
return PARSE_ERROR_NONE;
}
return PARSE_ERROR_TOO_FEW_ARGUMENTS;
}
+ auto &terrain = *terrains.rbegin();
terrain.mimic_tag = tokens[1];
return PARSE_ERROR_NONE;
}
return PARSE_ERROR_GENERIC;
}
+ auto &terrain = *terrains.rbegin();
terrain.d_char[F_LIT_STANDARD] = s_char;
terrain.d_attr[F_LIT_STANDARD] = s_attr;
if (tokens.size() == n) {
}
const auto &f_tokens = str_split(f, '_', false, 2);
+ auto &terrain = *terrains.rbegin();
if (f_tokens.size() == 2) {
if (f_tokens[0] == "SUBTYPE") {
info_set_value(terrain.subtype, f_tokens[1]);
return PARSE_ERROR_TOO_FEW_ARGUMENTS;
}
+ auto &terrain = *terrains.rbegin();
info_set_value(terrain.priority, tokens[1]);
return PARSE_ERROR_NONE;
}
return PARSE_ERROR_TOO_FEW_ARGUMENTS;
}
+ auto &terrain = *terrains.rbegin();
auto i = 0;
for (; i < MAX_FEAT_STATES; i++) {
if (terrain.state[i].action == TerrainCharacteristics::MAX) {
return this->terrains.begin();
}
-const std::vector<TerrainType>::const_iterator TerrainList::begin() const
+std::vector<TerrainType>::const_iterator TerrainList::begin() const
{
return this->terrains.begin();
}
+std::vector<TerrainType>::reverse_iterator TerrainList::rbegin()
+{
+ return this->terrains.rbegin();
+}
+
+std::vector<TerrainType>::const_reverse_iterator TerrainList::rbegin() const
+{
+ return this->terrains.rbegin();
+}
+
std::vector<TerrainType>::iterator TerrainList::end()
{
return this->terrains.end();
}
-const std::vector<TerrainType>::const_iterator TerrainList::end() const
+std::vector<TerrainType>::const_iterator TerrainList::end() const
{
return this->terrains.end();
}
+std::vector<TerrainType>::reverse_iterator TerrainList::rend()
+{
+ return this->terrains.rend();
+}
+
+std::vector<TerrainType>::const_reverse_iterator TerrainList::rend() const
+{
+ return this->terrains.rend();
+}
+
size_t TerrainList::size() const
{
return this->terrains.size();
static TerrainList &get_instance();
std::vector<TerrainType> &get_raw_vector();
std::vector<TerrainType>::iterator begin();
- const std::vector<TerrainType>::const_iterator begin() const;
+ std::vector<TerrainType>::const_iterator begin() const;
+ std::vector<TerrainType>::reverse_iterator rbegin();
+ std::vector<TerrainType>::const_reverse_iterator rbegin() const;
std::vector<TerrainType>::iterator end();
- const std::vector<TerrainType>::const_iterator end() const;
+ std::vector<TerrainType>::const_iterator end() const;
+ std::vector<TerrainType>::reverse_iterator rend();
+ std::vector<TerrainType>::const_reverse_iterator rend() const;
size_t size() const;
bool empty() const;
void resize(size_t new_size);