make unsealable table ordered
This commit is contained in:
@@ -1134,7 +1134,7 @@ public:
|
|||||||
return std::make_pair(event_table.data(), event_table.size());
|
return std::make_pair(event_table.data(), event_table.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual const std::unordered_set<uint32_t>& all_unsealable_items() const {
|
virtual const std::set<uint32_t>& all_unsealable_items() const {
|
||||||
return this->unsealable_items;
|
return this->unsealable_items;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1178,7 +1178,7 @@ protected:
|
|||||||
std::vector<SoundRemaps> sound_remaps;
|
std::vector<SoundRemaps> sound_remaps;
|
||||||
std::vector<TechBoost> tech_boosts;
|
std::vector<TechBoost> tech_boosts;
|
||||||
std::vector<std::vector<EventItem>> unwrap_table;
|
std::vector<std::vector<EventItem>> unwrap_table;
|
||||||
std::unordered_set<uint32_t> unsealable_items;
|
std::set<uint32_t> unsealable_items;
|
||||||
std::vector<RangedSpecial> ranged_specials;
|
std::vector<RangedSpecial> ranged_specials;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2872,7 +2872,7 @@ public:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual const std::unordered_set<uint32_t>& all_unsealable_items() const {
|
virtual const std::set<uint32_t>& all_unsealable_items() const {
|
||||||
if constexpr (requires { this->root->unsealable_table; }) {
|
if constexpr (requires { this->root->unsealable_table; }) {
|
||||||
if (!this->unsealable_table.has_value()) {
|
if (!this->unsealable_table.has_value()) {
|
||||||
auto& ret = this->unsealable_table.emplace();
|
auto& ret = this->unsealable_table.emplace();
|
||||||
@@ -2884,7 +2884,7 @@ public:
|
|||||||
}
|
}
|
||||||
return *this->unsealable_table;
|
return *this->unsealable_table;
|
||||||
} else {
|
} else {
|
||||||
static const std::unordered_set<uint32_t> empty_set{};
|
static const std::set<uint32_t> empty_set{};
|
||||||
return empty_set;
|
return empty_set;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3215,7 +3215,7 @@ protected:
|
|||||||
// the matching order matters.
|
// the matching order matters.
|
||||||
mutable std::optional<std::map<uint32_t, std::vector<ItemCombination>>> item_combination_index;
|
mutable std::optional<std::map<uint32_t, std::vector<ItemCombination>>> item_combination_index;
|
||||||
|
|
||||||
mutable std::optional<std::unordered_set<uint32_t>> unsealable_table;
|
mutable std::optional<std::set<uint32_t>> unsealable_table;
|
||||||
};
|
};
|
||||||
|
|
||||||
using ItemParameterTableDCNTE = BinaryItemParameterTableT<
|
using ItemParameterTableDCNTE = BinaryItemParameterTableT<
|
||||||
|
|||||||
@@ -472,7 +472,7 @@ public:
|
|||||||
virtual std::pair<const EventItem*, size_t> get_event_items(uint8_t event_number) const = 0;
|
virtual std::pair<const EventItem*, size_t> get_event_items(uint8_t event_number) const = 0;
|
||||||
|
|
||||||
// unsealable_table accessors
|
// unsealable_table accessors
|
||||||
virtual const std::unordered_set<uint32_t>& all_unsealable_items() const = 0;
|
virtual const std::set<uint32_t>& all_unsealable_items() const = 0;
|
||||||
bool is_unsealable_item(uint8_t data1_0, uint8_t data1_1, uint8_t data1_2) const;
|
bool is_unsealable_item(uint8_t data1_0, uint8_t data1_1, uint8_t data1_2) const;
|
||||||
bool is_unsealable_item(const ItemData& item) const;
|
bool is_unsealable_item(const ItemData& item) const;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user