From 2c00ff614f1c8a367d2966759a5b8c33aace2ab0 Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Sat, 31 Oct 2026 03:52:02 +0000 Subject: [PATCH] Decompile 2 functions in Source/Contents/Items/NeoPackageItemMgr.cpp, Source/Contents/Items/NeoPackageItemMgr.h Batch #7078 by aDw: 0 byte-identical, 2 confirmed by peer review. - fn_24376 Singleton::GetInstance: logic confirmed by peer review - fn_24377 Singleton::GetInstance: logic confirmed by peer review Peer-reviewed-by: eAthena, Lumen Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). --- Source/Contents/Items/NeoPackageItemMgr.cpp | 22 +++++++++++++++++++++ Source/Contents/Items/NeoPackageItemMgr.h | 18 ++--------------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/Source/Contents/Items/NeoPackageItemMgr.cpp b/Source/Contents/Items/NeoPackageItemMgr.cpp index 9d7e1d18..476e8dc1 100644 --- a/Source/Contents/Items/NeoPackageItemMgr.cpp +++ b/Source/Contents/Items/NeoPackageItemMgr.cpp @@ -16,6 +16,28 @@ NEO_PACKAGEITEM::CNeoPackageItemMgr* Singleton NEO_PACKAGEITEM::CPaidPackageItemMgr* Singleton::s_instance = nullptr; +// OFFSET: 0x00E5D020 +// FUNCTION: fn_24376 +template <> +NEO_PACKAGEITEM::CNeoPackageItemMgr* Singleton::GetInstance() { + if (!s_instance) { + s_instance = new (std::nothrow) NEO_PACKAGEITEM::CNeoPackageItemMgr; + } + + return s_instance; +} + +// OFFSET: 0x00E5D090 +// FUNCTION: fn_24377 +template <> +NEO_PACKAGEITEM::CPaidPackageItemMgr* Singleton::GetInstance() { + if (!s_instance) { + s_instance = new (std::nothrow) NEO_PACKAGEITEM::CPaidPackageItemMgr; + } + + return s_instance; +} + namespace NEO_PACKAGEITEM { // OFFSET: 0x006D1600 diff --git a/Source/Contents/Items/NeoPackageItemMgr.h b/Source/Contents/Items/NeoPackageItemMgr.h index d6bbe7c4..ac87437a 100644 --- a/Source/Contents/Items/NeoPackageItemMgr.h +++ b/Source/Contents/Items/NeoPackageItemMgr.h @@ -74,24 +74,10 @@ NEO_PACKAGEITEM::CNeoPackageItemMgr* Singleton NEO_PACKAGEITEM::CPaidPackageItemMgr* Singleton::s_instance; -// INLINED template <> -inline NEO_PACKAGEITEM::CNeoPackageItemMgr* Singleton::GetInstance() { - if (!s_instance) { - s_instance = new (std::nothrow) NEO_PACKAGEITEM::CNeoPackageItemMgr; - } +NEO_PACKAGEITEM::CNeoPackageItemMgr* Singleton::GetInstance(); - return s_instance; -} - -// INLINED template <> -inline NEO_PACKAGEITEM::CPaidPackageItemMgr* Singleton::GetInstance() { - if (!s_instance) { - s_instance = new (std::nothrow) NEO_PACKAGEITEM::CPaidPackageItemMgr; - } - - return s_instance; -} +NEO_PACKAGEITEM::CPaidPackageItemMgr* Singleton::GetInstance(); #endif