From ac64bca2d96fac403fba4727f82ccf50775c66fc Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Fri, 6 Nov 2026 12:31:57 +0000 Subject: [PATCH] Decompile fn_06504 (CPrivateAirplaneMgr::Create) Batch #13272 by cremane: 0 byte-identical, 1 confirmed by peer review. - fn_06504 CPrivateAirplaneMgr::Create: logic confirmed by peer review Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). --- Source/Contents/PrivateAirplaneMgr.cpp | 24 ++++++++++++++---------- Source/Contents/PrivateAirplaneMgr.h | 4 +++- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/Source/Contents/PrivateAirplaneMgr.cpp b/Source/Contents/PrivateAirplaneMgr.cpp index 6e145142..7c704079 100644 --- a/Source/Contents/PrivateAirplaneMgr.cpp +++ b/Source/Contents/PrivateAirplaneMgr.cpp @@ -23,18 +23,22 @@ bool CPrivateAirplaneMgr::Create() { } g_privateAirplaneItems = new (std::nothrow) CPrivateAirplaneMgr(); - if (g_privateAirplaneItems != nullptr) { - if (g_privateAirplaneItems->m_initialized) { - if (CPrivateAirplaneMgr::Init()) { - return true; - } - } - - delete g_privateAirplaneItems; - g_privateAirplaneItems = nullptr; + if (g_privateAirplaneItems == nullptr) { + return false; } - return false; + if (!g_privateAirplaneItems->m_initialized) { + delete g_privateAirplaneItems; + g_privateAirplaneItems = nullptr; + return false; + } + + if (!CPrivateAirplaneMgr::Init()) { + delete g_privateAirplaneItems; + g_privateAirplaneItems = nullptr; + return false; + } + return true; } // OFFSET: 0x006D0620 diff --git a/Source/Contents/PrivateAirplaneMgr.h b/Source/Contents/PrivateAirplaneMgr.h index b2129b09..e1c5dd4d 100644 --- a/Source/Contents/PrivateAirplaneMgr.h +++ b/Source/Contents/PrivateAirplaneMgr.h @@ -20,7 +20,9 @@ public: /* 0010 */ std::set m_endableMaps; /* 0018 */ std::set m_needItems; - CPrivateAirplaneMgr() : m_initialized(true) {} + CPrivateAirplaneMgr() { + this->m_initialized = true; + } virtual ~CPrivateAirplaneMgr() = default; int GetNeedItem(int index);