From d9ab718ffb7684f1c5920a40ca5f08d151b0a08e Mon Sep 17 00:00:00 2001 From: QuestionableM <77170113+QuestionableM@users.noreply.github.com> Date: Sat, 14 May 2022 10:54:54 -0700 Subject: [PATCH] Improved the object getters --- Code/Lib/BuildVersion.h | 2 +- Code/ObjectDatabase/ModData.cpp | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/Code/Lib/BuildVersion.h b/Code/Lib/BuildVersion.h index b378257..20cd8ca 100644 --- a/Code/Lib/BuildVersion.h +++ b/Code/Lib/BuildVersion.h @@ -1,2 +1,2 @@ #pragma once -#define SMBC_BUILD_VERSION 863 \ No newline at end of file +#define SMBC_BUILD_VERSION 864 \ No newline at end of file diff --git a/Code/ObjectDatabase/ModData.cpp b/Code/ObjectDatabase/ModData.cpp index bd50306..a423010 100644 --- a/Code/ObjectDatabase/ModData.cpp +++ b/Code/ObjectDatabase/ModData.cpp @@ -180,20 +180,26 @@ namespace SMBC const PartData* Mod::GetPart(const SMBC::Uuid& uuid) { - const ObjectData* current_obj = GetObject(uuid); - if (!current_obj || current_obj->Type() != ObjectType::Part) + if (Mod::AllObjects.find(uuid) == Mod::AllObjects.end()) return nullptr; - return static_cast(current_obj); + const ObjectData* p_cur_obj = Mod::AllObjects.at(uuid); + if (p_cur_obj->Type() != ObjectType::Part) + return nullptr; + + return static_cast(p_cur_obj); } const BlockData* Mod::GetBlock(const SMBC::Uuid& uuid) { - const ObjectData* current_obj = GetObject(uuid); - if (!current_obj || current_obj->Type() != ObjectType::Block) + if (Mod::AllObjects.find(uuid) == Mod::AllObjects.end()) + return nullptr; + + const ObjectData* p_cur_obj = Mod::AllObjects.at(uuid); + if (p_cur_obj->Type() != ObjectType::Block) return nullptr; - return static_cast(current_obj); + return static_cast(p_cur_obj); } Mod* Mod::CreateModFromDirectory(const std::wstring& dir)