diff --git a/src/main/CMakeLists.txt b/src/main/CMakeLists.txt index c9a3f26..e1f9e0e 100644 --- a/src/main/CMakeLists.txt +++ b/src/main/CMakeLists.txt @@ -20,8 +20,8 @@ function(BUILD_GAME GAME GAME_PATH SDK) endfunction() build_game(CS2 csgo CS2) -build_game(DOTA dota DOTA) -build_game(DEADLOCK citadel DEADLOCK) +build_game(DOTA dota CS2) +build_game(DEADLOCK citadel CS2) source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Source Files" FILES ${SOURCES_LIST}) source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "Header Files" FILES ${HEADERS_LIST}) \ No newline at end of file diff --git a/src/main/dumpers/schemas/metadata_stringifier.cpp b/src/main/dumpers/schemas/metadata_stringifier.cpp index 5899d87..a11670e 100644 --- a/src/main/dumpers/schemas/metadata_stringifier.cpp +++ b/src/main/dumpers/schemas/metadata_stringifier.cpp @@ -49,6 +49,7 @@ std::unordered_set g_classWithBrokenDefaults = "Dop26_t", "FourCovMatrices3", "VMixVocoderDesc_t", + "CCitadelPlayerPawn_GraphController2" }; // Any function called after this will have uninitialized variables set to zero diff --git a/src/main/dumpers/schemas/schemas.cpp b/src/main/dumpers/schemas/schemas.cpp index a75fac2..f06f3a1 100644 --- a/src/main/dumpers/schemas/schemas.cpp +++ b/src/main/dumpers/schemas/schemas.cpp @@ -70,7 +70,13 @@ void DumpClasses(CSchemaSystemTypeScope* typeScope, std::filesystem::path schema { FOR_EACH_MAP(typeScope->m_DeclaredClasses.m_Map, iter) { - const auto classInfo = typeScope->m_DeclaredClasses.m_Map.Element(iter)->m_pClassInfo; + const auto schemaClass = typeScope->m_DeclaredClasses.m_Map.Element(iter); + const auto classInfo = schemaClass->m_pClassInfo; + if (!classInfo) + { + spdlog::warn("Null classInfo: {}::{}", typeScope->GetScopeName(), schemaClass->m_sTypeName.Get()); + continue; + } if (!std::filesystem::is_directory(schemaPath / classInfo->m_pszProjectName)) if (!std::filesystem::create_directory(schemaPath / classInfo->m_pszProjectName)) @@ -142,7 +148,13 @@ void DumpEnums(CSchemaSystemTypeScope* typeScope, std::filesystem::path schemaPa { FOR_EACH_MAP(typeScope->m_DeclaredEnums.m_Map, iter) { - const auto enumInfo = typeScope->m_DeclaredEnums.m_Map.Element(iter)->m_pEnumInfo; + const auto schemaEnum = typeScope->m_DeclaredEnums.m_Map.Element(iter); + const auto enumInfo = schemaEnum->m_pEnumInfo; + if (!enumInfo) + { + spdlog::warn("Null enumInfo {}::{}", typeScope->GetScopeName(), schemaEnum->m_sTypeName.Get()); + continue; + } if (!std::filesystem::is_directory(schemaPath / enumInfo->m_pszProjectName)) if (!std::filesystem::create_directory(schemaPath / enumInfo->m_pszProjectName)) diff --git a/src/main/utils/common.cpp b/src/main/utils/common.cpp index ec56d98..f35f1b7 100644 --- a/src/main/utils/common.cpp +++ b/src/main/utils/common.cpp @@ -21,16 +21,6 @@ void ExitError(const char* pMsg, ...) /* tier0 stub */ -void CThreadSpinRWLock::LockForRead(const char* pFileName, int nLine) -{ - // STUB -} - -void CThreadSpinRWLock::UnlockRead(const char* pFileName, int nLine) -{ - // STUB -} - LoggingResponse_t LoggingSystem_LogAssert(const char* pMessageFormat, ...) { return LR_ABORT; @@ -81,15 +71,9 @@ void CUtlString::Trim(const char*) { // STUB } -#ifdef GAME_CS2 CUtlBuffer::CUtlBuffer(const void*, int, CUtlBuffer::BufferFlags_t) { // STUB } -#else -CUtlBuffer::CUtlBuffer(void const*, int, int) { - // STUB -} -#endif void ConMsg(const char*, ...) { // STUB diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt index 6fa7fbb..7191fe7 100644 --- a/vendor/CMakeLists.txt +++ b/vendor/CMakeLists.txt @@ -41,8 +41,8 @@ function(BUILD_HL2SDK GAME GAME_PATH) endfunction() build_hl2sdk(CS2 hl2sdk-cs2) -build_hl2sdk(DOTA hl2sdk-deadlock) -build_hl2sdk(DEADLOCK hl2sdk-deadlock) +build_hl2sdk(DOTA hl2sdk-cs2) +build_hl2sdk(DEADLOCK hl2sdk-cs2) # EXTERNAL LIBRARIES # --- diff --git a/vendor/hl2sdk-cs2 b/vendor/hl2sdk-cs2 index 84a823d..0814ebc 160000 --- a/vendor/hl2sdk-cs2 +++ b/vendor/hl2sdk-cs2 @@ -1 +1 @@ -Subproject commit 84a823db042b49d2f6934b770dafbf3a366cef26 +Subproject commit 0814ebc4a18b7dd9321c06995141a64134bdd01a