This commit is contained in:
@@ -7,7 +7,7 @@ namespace PkmnLib::Library {
|
||||
uint8_t _flingPower;
|
||||
|
||||
public:
|
||||
Item(const Arbutils::CaseInsensitiveConstString& name, CreatureLib::Library::ItemCategory category,
|
||||
Item(const ArbUt::CaseInsensitiveConstString& name, CreatureLib::Library::ItemCategory category,
|
||||
CreatureLib::Library::BattleItemCategory battleCategory, int32_t price,
|
||||
const std::unordered_set<uint32_t>& flags, uint8_t flingPower) noexcept
|
||||
: CreatureLib::Library::Item(name, category, battleCategory, price, flags), _flingPower(flingPower) {}
|
||||
|
||||
@@ -6,16 +6,21 @@
|
||||
namespace PkmnLib::Library {
|
||||
class ItemLibrary : public CreatureLib::Library::ItemLibrary {
|
||||
public:
|
||||
inline bool TryGet(const Arbutils::CaseInsensitiveConstString& name, const Item*& item) const {
|
||||
return CreatureLib::Library::ItemLibrary::TryGet(name, (const CreatureLib::Library::Item*&)item);
|
||||
inline bool TryGet(const ArbUt::CaseInsensitiveConstString& name, ArbUt::BorrowedPtr<const Item>& item) const {
|
||||
auto v = item.As<const CreatureLib::Library::Item>();
|
||||
auto res = CreatureLib::Library::ItemLibrary::TryGet(name.GetHash(), v);
|
||||
item = v.ForceAs<const Item>();
|
||||
return res;
|
||||
}
|
||||
|
||||
inline const Item* Get(const Arbutils::CaseInsensitiveConstString& name) const {
|
||||
return reinterpret_cast<const Item*>(CreatureLib::Library::ItemLibrary::Get(name));
|
||||
inline ArbUt::BorrowedPtr<const Item> Get(const ArbUt::CaseInsensitiveConstString& name) const {
|
||||
return CreatureLib::Library::ItemLibrary::Get(name).ForceAs<const Item>();
|
||||
}
|
||||
inline ArbUt::BorrowedPtr<const Item> operator[](const ArbUt::CaseInsensitiveConstString& name) const {
|
||||
return Get(name);
|
||||
}
|
||||
const Item* operator[](const Arbutils::CaseInsensitiveConstString& name) const { return Get(name); }
|
||||
|
||||
void Insert(const Arbutils::CaseInsensitiveConstString& name, const Item* item) {
|
||||
void Insert(const ArbUt::CaseInsensitiveConstString& name, const Item* item) {
|
||||
CreatureLib::Library::ItemLibrary::Insert(name, item);
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user