From 984088f7a9ba7f6b57fb8fb7a5d6ec399814adca Mon Sep 17 00:00:00 2001 From: Deukhoofd Date: Wed, 22 Apr 2020 10:34:09 +0200 Subject: [PATCH] Rework TryGet on MoveLibrary to be less ugly. --- src/Library/Moves/MoveLibrary.hpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Library/Moves/MoveLibrary.hpp b/src/Library/Moves/MoveLibrary.hpp index fee9cf6..ece12d3 100644 --- a/src/Library/Moves/MoveLibrary.hpp +++ b/src/Library/Moves/MoveLibrary.hpp @@ -11,7 +11,12 @@ namespace PkmnLib::Library { virtual const MoveData* operator[](const Arbutils::CaseInsensitiveConstString& name) const { return Get(name); } inline bool TryGet(const Arbutils::CaseInsensitiveConstString& name, const MoveData*& move) const { - return CreatureLib::Library::AttackLibrary::TryGet(name, (const CreatureLib::Library::AttackData*&)move); + const CreatureLib::Library::AttackData* ptr; + if (CreatureLib::Library::AttackLibrary::TryGet(name, ptr)){ + move = dynamic_cast(ptr); + return true; + } + return false; } const MoveData* Get(const Arbutils::CaseInsensitiveConstString& name) const { return dynamic_cast(CreatureLib::Library::AttackLibrary::Get(name));