diff --git a/.gitmodules b/.gitmodules index 03e721f6..367a42b0 100644 --- a/.gitmodules +++ b/.gitmodules @@ -58,3 +58,6 @@ [submodule "thirdparty/json"] path = thirdparty/json url = https://github.com/nlohmann/json +[submodule "UnleashedRecomp/api"] + path = UnleashedRecomp/api + url = https://github.com/hedge-dev/SWA.git diff --git a/UnleashedRecomp/CMakeLists.txt b/UnleashedRecomp/CMakeLists.txt index 500bc0d5..10863c02 100644 --- a/UnleashedRecomp/CMakeLists.txt +++ b/UnleashedRecomp/CMakeLists.txt @@ -441,35 +441,6 @@ compile_pixel_shader(resolve_msaa_depth_2x) compile_pixel_shader(resolve_msaa_depth_4x) compile_pixel_shader(resolve_msaa_depth_8x) -function(generate_aggregate_header INPUT_DIRECTORY OUTPUT_FILE) - get_filename_component(ABS_OUTPUT_FILE "${OUTPUT_FILE}" ABSOLUTE) - file(GLOB_RECURSE HEADER_FILES "${INPUT_DIRECTORY}/*.h") - set(HEADER_CONTENT "#pragma once\n\n") - - foreach(HEADER_FILE IN LISTS HEADER_FILES) - get_filename_component(ABS_HEADER_FILE "${HEADER_FILE}" ABSOLUTE) - if (ABS_HEADER_FILE STREQUAL ABS_OUTPUT_FILE) - continue() - endif() - file(RELATIVE_PATH RELATIVE_HEADER_FILE "${INPUT_DIRECTORY}" "${HEADER_FILE}") - string(APPEND HEADER_CONTENT "#include \"${RELATIVE_HEADER_FILE}\"\n") - endforeach() - - if (EXISTS "${OUTPUT_FILE}") - file(READ "${OUTPUT_FILE}" EXISTING_CONTENT) - if (EXISTING_CONTENT STREQUAL HEADER_CONTENT) - return() - endif() - endif() - - file(WRITE "${OUTPUT_FILE}" "${HEADER_CONTENT}") -endfunction() - -generate_aggregate_header( - "${CMAKE_CURRENT_SOURCE_DIR}/api" - "${CMAKE_CURRENT_SOURCE_DIR}/api/SWA.h" -) - set(RESOURCES_SOURCE_PATH "${PROJECT_SOURCE_DIR}/../UnleashedRecompResources") set(RESOURCES_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/res") diff --git a/UnleashedRecomp/api b/UnleashedRecomp/api new file mode 160000 index 00000000..f299dd8c --- /dev/null +++ b/UnleashedRecomp/api @@ -0,0 +1 @@ +Subproject commit f299dd8cf272a0110c91e54e2b6e308a2d897966 diff --git a/UnleashedRecomp/api/CSD/Manager/csdmBase.h b/UnleashedRecomp/api/CSD/Manager/csdmBase.h deleted file mode 100644 index d2ffca59..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmBase.h +++ /dev/null @@ -1,6 +0,0 @@ -#pragma once - -namespace Chao::CSD -{ - class CBase {}; -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmMotionPattern.h b/UnleashedRecomp/api/CSD/Manager/csdmMotionPattern.h deleted file mode 100644 index dd5df27b..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmMotionPattern.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -#include - -namespace Chao::CSD -{ - class CMotionPattern : CBase {}; -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmNode.h b/UnleashedRecomp/api/CSD/Manager/csdmNode.h deleted file mode 100644 index 3c876426..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmNode.h +++ /dev/null @@ -1,34 +0,0 @@ -#pragma once - -#include -#include -#include -#include -#include -#include - -namespace Chao::CSD -{ - struct Node; - - class CNode : public CResourceBase, SubjectBase, CBase - { - public: - SWA_INSERT_PADDING(0x34); - xpointer m_pMotionPattern; - SWA_INSERT_PADDING(0x18); - - ~CNode(); - - void SetText(const char* in_pText); - void SetText(const wchar_t* in_pText); - void GetPosition(Hedgehog::Math::CVector2& out_rResult) const; - void SetPosition(float in_X, float in_Y); - void SetHideFlag(uint32_t in_HideFlag); - void SetRotation(float in_Rotation); - void SetScale(float in_X, float in_Y); - void SetPatternIndex(uint32_t in_PatternIndex); - }; -} - -#include diff --git a/UnleashedRecomp/api/CSD/Manager/csdmNode.inl b/UnleashedRecomp/api/CSD/Manager/csdmNode.inl deleted file mode 100644 index ffefcce5..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmNode.inl +++ /dev/null @@ -1,49 +0,0 @@ -#include "SWA.inl" - -namespace Chao::CSD -{ - inline CNode::~CNode() - { - SWA_VIRTUAL_FUNCTION(void, 0, this); - } - - inline void CNode::SetText(const char* in_pText) - { - GuestToHostFunction(sub_830BF640, this, in_pText); - } - - inline void CNode::SetText(const wchar_t* in_pText) - { - GuestToHostFunction(sub_830BF640, this, in_pText); - } - - inline void CNode::GetPosition(Hedgehog::Math::CVector2& out_rResult) const - { - GuestToHostFunction(sub_830BF008, &out_rResult, this); - } - - inline void CNode::SetPosition(float in_X, float in_Y) - { - GuestToHostFunction(sub_830BF078, this, in_X, in_Y); - } - - inline void CNode::SetHideFlag(uint32_t in_HideFlag) - { - GuestToHostFunction(sub_830BF080, this, in_HideFlag); - } - - inline void CNode::SetRotation(float in_Rotation) - { - GuestToHostFunction(sub_830BF088, this, in_Rotation); - } - - inline void CNode::SetScale(float in_X, float in_Y) - { - GuestToHostFunction(sub_830BF090, this, in_X, in_Y); - } - - inline void CNode::SetPatternIndex(uint32_t in_PatternIndex) - { - GuestToHostFunction(sub_830BF300, this, in_PatternIndex); - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmNodeObserver.h b/UnleashedRecomp/api/CSD/Manager/csdmNodeObserver.h deleted file mode 100644 index abfba980..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmNodeObserver.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmObserverBase.h" - -namespace Chao::CSD -{ - class CNode; - - class CNodeObserver : public CObserverBase {}; -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.h b/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.h deleted file mode 100644 index 63daf398..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Chao::CSD -{ - template - class CObserverBase - { - public: - struct Vftable - { - be m_fpDtor; - }; - - xpointer m_pVftable; - SWA_INSERT_PADDING(0x08); - - ~CObserverBase(); - }; -} - -#include "CSD/Manager/csdmObserverBase.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.inl b/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.inl deleted file mode 100644 index beeabb4f..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmObserverBase.inl +++ /dev/null @@ -1,8 +0,0 @@ -namespace Chao::CSD -{ - template - inline CObserverBase::~CObserverBase() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmProject.h b/UnleashedRecomp/api/CSD/Manager/csdmProject.h deleted file mode 100644 index ed01cd3b..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmProject.h +++ /dev/null @@ -1,31 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "CSD/Manager/csdmBase.h" -#include "CSD/Manager/csdmResourceBase.h" - -namespace Chao::CSD -{ - struct Project; - class CProject; - class CScene; - class CTexList; - - class CProject : public CResourceBase, CBase - { - public: - SWA_INSERT_PADDING(0x1C); - RCPtr m_rcTexList; - SWA_INSERT_PADDING(0x1C); - - RCPtr CreateScene(const char* in_pName) const; - RCPtr CreateScene(const char* in_pName, const char* in_pMotionName) const; - - void DestroyScene(CScene* in_pScene); - void DestroyScene(RCPtr& inout_rcScene); - - static void DestroyScene(CProject* in_pProject, RCPtr& inout_rcScene); - }; -} - -#include "CSD/Manager/csdmProject.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmProject.inl b/UnleashedRecomp/api/CSD/Manager/csdmProject.inl deleted file mode 100644 index d106fa4a..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmProject.inl +++ /dev/null @@ -1,40 +0,0 @@ -#include "kernel/function.h" - -namespace Chao::CSD -{ - inline RCPtr CProject::CreateScene(const char* in_pName) const - { - RCPtr rcScene; - GuestToHostFunction(sub_830BEE00, this, rcScene, in_pName, nullptr); - return rcScene; - } - - inline RCPtr CProject::CreateScene(const char* in_pName, const char* in_pMotionName) const - { - RCPtr rcScene; - GuestToHostFunction(sub_830BECE0, this, rcScene, in_pName, in_pMotionName, nullptr); - return rcScene; - } - - inline void CProject::DestroyScene(CScene* in_pScene) - { - GuestToHostFunction(sub_830BE298, this, in_pScene); - } - - inline void CProject::DestroyScene(RCPtr& inout_rcScene) - { - if (!inout_rcScene) - return; - - DestroyScene(inout_rcScene.Get()); - inout_rcScene = nullptr; - } - - inline void CProject::DestroyScene(CProject* in_pProject, RCPtr& inout_rcScene) - { - if (in_pProject) - in_pProject->DestroyScene(inout_rcScene); - else - inout_rcScene = nullptr; - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCObject.h b/UnleashedRecomp/api/CSD/Manager/csdmRCObject.h deleted file mode 100644 index 143dcb07..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCObject.h +++ /dev/null @@ -1,28 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmRCPtrAbs.h" - -namespace Chao::CSD -{ - class RCPtrAbs::RCObject - { - public: - struct Vftable - { - be m_fpDtor; - be m_fpDeallocate; - }; - - xpointer m_pVftable; - xpointer m_pMemory; - be m_RefCount; - xpointer m_pDealloctor; - be m_eDealloctor; - - ~RCObject(); - void Deallocate(void* in_pMemory); - void Release(); - }; -} - -#include "CSD/Manager/csdmRCObject.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCObject.inl b/UnleashedRecomp/api/CSD/Manager/csdmRCObject.inl deleted file mode 100644 index 9a9bb565..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCObject.inl +++ /dev/null @@ -1,35 +0,0 @@ -namespace Chao::CSD -{ - inline RCPtrAbs::RCObject::~RCObject() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } - - inline RCPtrAbs::~RCPtrAbs() - { - RCPtrAbs::RCObject* pObj = m_pObject; - - m_pObject = nullptr; - - if (pObj) - pObj->Release(); - } - - inline void* RCPtrAbs::GetAbs() const - { - if (!m_pObject) - return nullptr; - - return m_pObject->m_pMemory; - } - - inline void RCPtrAbs::RCObject::Deallocate(void* in_pMemory) - { - GuestToHostFunction(m_pVftable->m_fpDeallocate, this, in_pMemory); - } - - inline void RCPtrAbs::RCObject::Release() - { - GuestToHostFunction(sub_830BA068, this); - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.h b/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.h deleted file mode 100644 index aa814cfa..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.h +++ /dev/null @@ -1,9 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmRCPtr.h" - -namespace Chao::CSD -{ - template - class RCPtr::RCObjectImp : public RCObject {}; -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.inl b/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.inl deleted file mode 100644 index 74465e61..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCObjectImp.inl +++ /dev/null @@ -1,14 +0,0 @@ -namespace Chao::CSD -{ - template - void RCPtr::RCObjectImp::Deallocate(void* in_pMemory) - { - // delete static_cast(in_pMemory); - } - - template - RCPtrAbs::RCObject* RCPtr::CreateRCObject() - { - return new RCObjectImp(); - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.h b/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.h deleted file mode 100644 index 10878100..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.h +++ /dev/null @@ -1,32 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmRCPtrAbs.h" - -namespace Chao::CSD -{ - template - class RCPtr : RCPtrAbs - { - public: - class RCObjectImp; - - RCPtr() : RCPtrAbs() {} - RCPtr(T* in_pMemory) : RCPtrAbs(in_pMemory) {} - RCPtr(const RCPtr& in_rOther) : RCPtrAbs(in_rOther) {} - RCPtr(RCPtr&& in_rOther) : RCPtrAbs(std::move(in_rOther)) {} - - void Attach(T* in_pObject); - - T* Get() const; - void Set(const RCPtr& in_rOther); - - T* operator*() const; - T* operator->() const; - - RCPtr& operator=(const RCPtr& in_rOther); - - operator bool() const; - }; -} - -#include "CSD/Manager/csdmRCPtr.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.inl b/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.inl deleted file mode 100644 index 01bcd6e1..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCPtr.inl +++ /dev/null @@ -1,45 +0,0 @@ -namespace Chao::CSD -{ - template - void RCPtr::Attach(T* in_pObject) - { - RCPtrAbs::AttachAbs(in_pObject); - } - - template - T* RCPtr::Get() const - { - return static_cast(RCPtrAbs::GetAbs()); - } - - template - void RCPtr::Set(const RCPtr& in_rOther) - { - RCPtrAbs::SetAbs(in_rOther); - } - - template - T* RCPtr::operator*() const - { - return Get(); - } - - template - T* RCPtr::operator->() const - { - return Get(); - } - - template - RCPtr& RCPtr::operator=(const RCPtr& in_rOther) - { - Set(in_rOther); - return *this; - } - - template - RCPtr::operator bool() const - { - return m_pObject != nullptr; - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.h b/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.h deleted file mode 100644 index e1e46be8..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.h +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Chao::CSD -{ - class RCPtrAbs - { - public: - class RCObject; - - struct Vftable - { - be m_fpDtor; - be m_fpCreateRCObject; - }; - - xpointer m_pVftable; - xpointer m_pObject; - - RCPtrAbs(); - RCPtrAbs(void* in_pMemory); - RCPtrAbs(const RCPtrAbs& in_rOther); - RCPtrAbs(RCPtrAbs&& in_rPtr); - - ~RCPtrAbs(); - RCObject* CreateRCObject(); - - void AttachAbs(void* in_pMemory); - void* GetAbs() const; - void SetAbs(const RCPtrAbs& in_rPtr); - - void* operator*() const; - void* operator->() const; - - RCPtrAbs& operator=(const RCPtrAbs& in_rPtr); - - operator bool() const; - }; -} - -#include "CSD/Manager/csdmRCPtrAbs.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.inl b/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.inl deleted file mode 100644 index 4374bc11..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmRCPtrAbs.inl +++ /dev/null @@ -1,58 +0,0 @@ -namespace Chao::CSD -{ - inline RCPtrAbs::RCPtrAbs() - { - AttachAbs(nullptr); - } - - inline RCPtrAbs::RCPtrAbs(void* in_pMemory) - { - AttachAbs(in_pMemory); - } - - inline RCPtrAbs::RCPtrAbs(const RCPtrAbs& in_rOther) - { - SetAbs(in_rOther); - } - - inline RCPtrAbs::RCPtrAbs(RCPtrAbs&& in_rPtr) : m_pObject(in_rPtr.m_pObject) - { - in_rPtr.m_pObject = nullptr; - } - - inline RCPtrAbs::RCObject* RCPtrAbs::CreateRCObject() - { - return GuestToHostFunction(m_pVftable->m_fpCreateRCObject, this); - } - - inline void RCPtrAbs::AttachAbs(void* in_pMemory) - { - GuestToHostFunction(sub_830BA298, this, in_pMemory); - } - - inline void RCPtrAbs::SetAbs(const RCPtrAbs& in_rPtr) - { - GuestToHostFunction(sub_830BA328, this, in_rPtr); - } - - inline void* RCPtrAbs::operator*() const - { - return GetAbs(); - } - - inline void* RCPtrAbs::operator->() const - { - return GetAbs(); - } - - inline RCPtrAbs& RCPtrAbs::operator=(const RCPtrAbs& in_rPtr) - { - SetAbs(in_rPtr); - return *this; - } - - inline RCPtrAbs::operator bool() const - { - return m_pObject != nullptr; - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.h b/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.h deleted file mode 100644 index 094ed06f..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.h +++ /dev/null @@ -1,26 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmRCPtr.h" - -namespace Chao::CSD -{ - template - class CResourceBase - { - public: - struct Vftable - { - be m_fpDtor; - be m_fpCopyResource; - }; - - xpointer m_pVftable; - RCPtr m_rcResourceHolder; - xpointer m_pResource; - - ~CResourceBase(); - void CopyResource(const CResourceBase& in_rOther); - }; -} - -#include "CSD/Manager/csdmResourceBase.h" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.inl b/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.inl deleted file mode 100644 index d459e3c9..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmResourceBase.inl +++ /dev/null @@ -1,15 +0,0 @@ -namespace Chao::CSD -{ - template - inline CResourceBase::~CResourceBase() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } - - template - inline void CResourceBase::CopyResource(const CResourceBase& in_rOther) - { - m_rcResourceHolder = in_rOther.m_rcResourceHolder; - m_pResource = in_rOther.m_pResource; - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmScene.h b/UnleashedRecomp/api/CSD/Manager/csdmScene.h deleted file mode 100644 index e26f2b91..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmScene.h +++ /dev/null @@ -1,53 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "CSD/Manager/csdmBase.h" -#include "CSD/Manager/csdmResourceBase.h" -#include "CSD/Manager/csdmSceneObserver.h" -#include "CSD/Manager/csdmSubjectBase.h" - -namespace Chao::CSD -{ - struct Scene; - class CScene; - class CNode; - - enum EMotionRepeatType : uint32_t - { - eMotionRepeatType_PlayOnce = 0, - eMotionRepeatType_Loop = 1, - eMotionRepeatType_PingPong = 2, - eMotionRepeatType_PlayThenDestroy = 3 - }; - - class CScene : public CResourceBase, SubjectBase, CBase - { - public: - SWA_INSERT_PADDING(0x60); - be m_PrevMotionFrame; - be m_MotionFrame; - be m_MotionSpeed; - be m_MotionStartFrame; - be m_MotionEndFrame; - SWA_INSERT_PADDING(0x0C); - be m_MotionDisableFlag; - SWA_INSERT_PADDING(0x10); - be m_MotionRepeatType; - SWA_INSERT_PADDING(0x2C); - - ~CScene(); - void Update(float in_DeltaTime = 0.0f); - void Render(void* in_pUnk); - - void GetNode(RCPtr& out_rResult, const char* in_pName); - - bool SetMotion(const char* in_pName); - void SetMotionFrame(float in_MotionFrame); - void SetPosition(float in_X, float in_Y); - void SetHideFlag(uint32_t in_HideFlag); - void SetRotation(float in_Angle); - void SetScale(float in_X, float in_Y); - }; -} - -#include "CSD/Manager/csdmScene.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmScene.inl b/UnleashedRecomp/api/CSD/Manager/csdmScene.inl deleted file mode 100644 index 25a5ad60..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmScene.inl +++ /dev/null @@ -1,53 +0,0 @@ -namespace Chao::CSD -{ - inline CScene::~CScene() - { - SWA_VIRTUAL_FUNCTION(void, 0, this); - } - - inline void CScene::Update(float in_DeltaTime) - { - SWA_VIRTUAL_FUNCTION(void, 2, this, in_DeltaTime); - } - - inline void CScene::Render(void* in_pUnk) - { - SWA_VIRTUAL_FUNCTION(void, 3, this, in_pUnk); - } - - inline void CScene::GetNode(RCPtr& out_rResult, const char* in_pName) - { - GuestToHostFunction(sub_830BCCA8, &out_rResult, this, in_pName); - } - - inline bool CScene::SetMotion(const char* in_pName) - { - return GuestToHostFunction(sub_830BA760, this, in_pName); - } - - inline void CScene::SetMotionFrame(float in_MotionFrame) - { - m_PrevMotionFrame = in_MotionFrame; - m_MotionFrame = in_MotionFrame; - } - - inline void CScene::SetPosition(float in_X, float in_Y) - { - GuestToHostFunction(sub_830BB550, this, in_X, in_Y); - } - - inline void CScene::SetHideFlag(uint32_t in_HideFlag) - { - GuestToHostFunction(sub_830BB378, this, in_HideFlag); - } - - inline void CScene::SetRotation(float in_Angle) - { - GuestToHostFunction(sub_830BB5F8, this, in_Angle); - } - - inline void CScene::SetScale(float in_X, float in_Y) - { - GuestToHostFunction(sub_830BB650, this, in_X, in_Y); - } -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmSceneObserver.h b/UnleashedRecomp/api/CSD/Manager/csdmSceneObserver.h deleted file mode 100644 index 2e6abb2c..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmSceneObserver.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmObserverBase.h" - -namespace Chao::CSD -{ - class CScene; - - class CSceneObserver : public CObserverBase {}; -} diff --git a/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.h b/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.h deleted file mode 100644 index cb420c30..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Chao::CSD -{ - template - class SubjectBase - { - public: - struct Vftable - { - be m_fpDtor; - be m_fpGetObservee; - }; - - xpointer m_pVftable; - SWA_INSERT_PADDING(0x0C); - - ~SubjectBase(); - TObservee* GetObservee() const; - }; -} - -#include "CSD/Manager/csdmSubjectBase.inl" diff --git a/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.inl b/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.inl deleted file mode 100644 index 9c9b7f8f..00000000 --- a/UnleashedRecomp/api/CSD/Manager/csdmSubjectBase.inl +++ /dev/null @@ -1,14 +0,0 @@ -namespace Chao::CSD -{ - template - inline SubjectBase::~SubjectBase() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } - - template - inline TObservee* SubjectBase::GetObservee() const - { - return nullptr; - } -} diff --git a/UnleashedRecomp/api/CSD/Platform/csdTexList.h b/UnleashedRecomp/api/CSD/Platform/csdTexList.h deleted file mode 100644 index 88fb7c81..00000000 --- a/UnleashedRecomp/api/CSD/Platform/csdTexList.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmBase.h" -#include "CSD/Manager/csdmRCPtr.h" - -namespace Chao::CSD -{ - class CTexList : public CBase - { - public: - struct Vftable - { - be m_fpDtor; - }; - - xpointer m_pVftable; - RCPtr m_rcData; - - ~CTexList(); - }; -} - -#include "CSD/Platform/csdTexList.inl" diff --git a/UnleashedRecomp/api/CSD/Platform/csdTexList.inl b/UnleashedRecomp/api/CSD/Platform/csdTexList.inl deleted file mode 100644 index 14835026..00000000 --- a/UnleashedRecomp/api/CSD/Platform/csdTexList.inl +++ /dev/null @@ -1,7 +0,0 @@ -namespace Chao::CSD -{ - inline CTexList::~CTexList() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Container/hhMap.h b/UnleashedRecomp/api/Hedgehog/Base/Container/hhMap.h deleted file mode 100644 index a38ba356..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Container/hhMap.h +++ /dev/null @@ -1,378 +0,0 @@ -#pragma once - -#include - -namespace hh -{ - template< - class Key, - class T, - class Compare = std::less, - class Allocator = Hedgehog::Base::TAllocator>> - class map - { - protected: - enum EColor - { - eColor_Red, - eColor_Black - }; - - struct SNode - { - using allocator_type = typename std::allocator_traits::template rebind_alloc; - - xpointer pLeft; - xpointer pParent; - xpointer pRight; - std::pair Value; - uint8_t Color; - bool IsNil; - }; - - Compare m_Comp; - typename SNode::allocator_type m_Alloc; - xpointer m_pHead; - be m_Count; - - struct SFindResult - { - SNode* pParent; - bool IsRight; - SNode* pBound; - }; - - bool LowerBoundDuplicate(const SNode* pBound, const Key& in_rKey) const - { - return !pBound->IsNil && !m_Comp(in_rKey, pBound->Value.first); - } - - SFindResult FindLowerBound(const Key& in_rKey) const - { - SFindResult result{ m_pHead->pParent, true, m_pHead }; - SNode* pNode = result.pParent; - - while (!pNode->IsNil) - { - result.pParent = pNode; - if (m_Comp(pNode->Value.first, in_rKey)) - { - result.IsRight = true; - pNode = pNode->pRight; - } - else - { - result.IsRight = false; - result.pBound = pNode; - pNode = pNode->pLeft; - } - } - - return result; - } - - SNode* Find(const Key& in_rKey) const - { - const SFindResult result = FindLowerBound(in_rKey); - return LowerBoundDuplicate(result.pBound, in_rKey) ? result.pBound : m_pHead.get(); - } - - static SNode* Max(SNode* pNode) - { - while (!pNode->pRight->IsNil) - pNode = pNode->pRight; - - return pNode; - } - - static SNode* Min(SNode* pNode) - { - while (!pNode->pLeft->IsNil) - pNode = pNode->pLeft; - - return pNode; - } - - public: - using key_type = Key; - using mapped_type = T; - using value_type = std::pair; - using size_type = std::size_t; - using difference_type = std::ptrdiff_t; - using key_compare = Compare; - using allocator_type = Allocator; - using reference = value_type&; - using const_reference = const value_type&; - using pointer = typename std::allocator_traits::pointer; - using const_pointer = typename std::allocator_traits::const_pointer; - - class iterator - { - public: - using iterator_category = std::bidirectional_iterator_tag; - using value_type = std::pair; - using difference_type = std::ptrdiff_t; - using pointer = value_type*; - using reference = value_type&; - - iterator(const std::nullptr_t&) = delete; - iterator(SNode* pNode) : m_pNode(pNode) {} - - reference operator*() const { return m_pNode->Value; } - pointer operator->() const { return &m_pNode->Value; } - - iterator& operator++() - { - if (m_pNode->pRight->IsNil) - { - SNode* pNode; - while (!(pNode = m_pNode->pParent)->IsNil && m_pNode == pNode->pRight) - m_pNode = pNode; - - m_pNode = pNode; - } - else - { - m_pNode = map::Min(m_pNode->pRight); - } - - return *this; - } - - iterator operator++(int) - { - iterator temp(*this); - ++(*this); - return temp; - } - - iterator& operator--() - { - if (m_pNode->IsNil) - { - m_pNode = m_pNode->pRight; - } - else if (m_pNode->pLeft->IsNil) - { - SNode* pNode; - while (!(pNode = m_pNode->pParent)->IsNil && m_pNode == pNode->pLeft) - m_pNode = pNode; - - if (!m_pNode->IsNil) - m_pNode = pNode; - } - else - { - m_pNode = map::Max(m_pNode->pLeft); - } - - return *this; - } - - iterator operator--(int) - { - iterator temp(*this); - --(*this); - return temp; - } - - bool operator==(const iterator& rhs) const { return m_pNode == rhs.m_pNode; } - bool operator!=(const iterator& rhs) const { return !(*this == rhs); } - - private: - SNode* m_pNode; - friend class iterator; - friend class map; - }; - - class const_iterator - { - public: - using iterator_category = std::bidirectional_iterator_tag; - using value_type = std::pair; - using difference_type = std::ptrdiff_t; - using pointer = const value_type*; - using reference = const value_type&; - - const_iterator(const std::nullptr_t&) = delete; - const_iterator(SNode* pNode) : m_pNode(pNode) {} - const_iterator(const iterator& iterator) : m_pNode(iterator.m_pNode) {} - - reference operator*() const { return m_pNode->Value; } - pointer operator->() const { return &m_pNode->Value; } - - const_iterator& operator++() - { - if (m_pNode->pRight->IsNil) - { - SNode* pNode; - while (!(pNode = m_pNode->pParent)->IsNil && m_pNode == pNode->pRight) - m_pNode = pNode; - - m_pNode = pNode; - } - else - { - m_pNode = map::Min(m_pNode->pRight); - } - - return *this; - } - - const_iterator operator++(int) - { - const_iterator temp(*this); - ++(*this); - return temp; - } - - const_iterator& operator--() - { - if (m_pNode->IsNil) - { - m_pNode = m_pNode->pRight; - } - else if (m_pNode->pLeft->IsNil) - { - SNode* pNode; - while (!(pNode = m_pNode->pParent)->IsNil && m_pNode == pNode->pLeft) - m_pNode = pNode; - - if (!m_pNode->IsNil) - m_pNode = pNode; - } - else - { - m_pNode = map::Max(m_pNode->pLeft); - } - - return *this; - } - - const_iterator operator--(int) - { - const_iterator temp(*this); - --(*this); - return temp; - } - - bool operator==(const const_iterator& rhs) const { return m_pNode == rhs.m_pNode; } - bool operator!=(const const_iterator& rhs) const { return !(*this == rhs); } - - private: - SNode* m_pNode; - friend class map; - }; - - using reverse_iterator = std::reverse_iterator; - using const_reverse_iterator = std::reverse_iterator; - - public: - allocator_type get_allocator() const - { - return m_Alloc; - } - - T& at(const Key& key) - { - return Find(key)->Value.second; - } - - const T& at(const Key& key) const - { - return Find(key)->Value.second; - } - - iterator begin() - { - return iterator(m_pHead->pLeft); - } - - const_iterator begin() const - { - return const_iterator(m_pHead->pLeft); - } - - const_iterator cbegin() const - { - return const_iterator(m_pHead->pLeft); - } - - iterator end() - { - return iterator(m_pHead); - } - - const_iterator end() const - { - return const_iterator(m_pHead); - } - - const_iterator cend() const - { - return const_iterator(m_pHead); - } - - reverse_iterator rbegin() - { - return reverse_iterator(end()); - } - - const_reverse_iterator rbegin() const - { - return const_reverse_iterator(end()); - } - - const_reverse_iterator crbegin() const - { - return const_reverse_iterator(cend()); - } - - reverse_iterator rend() - { - return reverse_iterator(begin()); - } - - const_reverse_iterator rend() const - { - return const_reverse_iterator(begin()); - } - - const_reverse_iterator crend() const - { - return const_reverse_iterator(cbegin()); - } - - bool empty() const - { - return m_Count == 0; - } - - size_type size() const - { - return m_Count; - } - - size_type max_size() const - { - return ~0u; - } - - size_type count(const Key& key) const - { - return LowerBoundDuplicate(FindLowerBound(key).pBound, key) ? 1u : 0u; - } - - iterator find(const Key& key) - { - return iterator(Find(key)); - } - - const_iterator find(const Key& key) const - { - return const_iterator(Find(key)); - } - }; - - static_assert(sizeof(map) == 0xC); -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Container/hhVector.h b/UnleashedRecomp/api/Hedgehog/Base/Container/hhVector.h deleted file mode 100644 index 42f3b959..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Container/hhVector.h +++ /dev/null @@ -1,255 +0,0 @@ -#pragma once - -#include - -namespace hh -{ - template> - class vector - { - protected: - Allocator m_Alloc; - xpointer m_pFirst; - xpointer m_pLast; - xpointer m_pEnd; - - public: - using value_type = T; - using allocator_type = Allocator; - using size_type = std::size_t; - using difference_type = std::ptrdiff_t; - using reference = value_type&; - using const_reference = const value_type&; - using pointer = typename std::allocator_traits::pointer; - using const_pointer = typename std::allocator_traits::const_pointer; - - class iterator - { - public: - using iterator_category = std::random_access_iterator_tag; - using value_type = T; - using difference_type = std::ptrdiff_t; - using pointer = T*; - using reference = T&; - - iterator() : m_pPtr(nullptr) {} - iterator(T* p) : m_pPtr(p) {} - - reference operator*() const { return *m_pPtr; } - pointer operator->() const { return m_pPtr; } - - iterator& operator++() { ++m_pPtr; return *this; } - iterator operator++(int) { iterator tmp = *this; ++(*this); return tmp; } - - iterator& operator--() { --m_pPtr; return *this; } - iterator operator--(int) { iterator tmp = *this; --(*this); return tmp; } - - iterator& operator+=(difference_type n) { m_pPtr += n; return *this; } - iterator operator+(difference_type n) const { iterator tmp = *this; return tmp += n; } - friend iterator operator+(difference_type n, iterator it) { return it + n; } - - iterator& operator-=(difference_type n) { return *this += -n; } - iterator operator-(difference_type n) const { iterator tmp = *this; return tmp -= n; } - difference_type operator-(const iterator& other) const { return m_pPtr - other.m_pPtr; } - - reference operator[](difference_type n) const { return *(*this + n); } - - bool operator==(const iterator& other) const { return m_pPtr == other.m_pPtr; } - bool operator!=(const iterator& other) const { return !(*this == other); } - bool operator<(const iterator& other) const { return m_pPtr < other.m_pPtr; } - bool operator<=(const iterator& other) const { return !(other < *this); } - bool operator>(const iterator& other) const { return other < *this; } - bool operator>=(const iterator& other) const { return !(*this < other); } - - private: - T* m_pPtr; - - friend class vector; - friend class const_iterator; - }; - - class const_iterator - { - public: - using iterator_category = std::random_access_iterator_tag; - using value_type = T; - using difference_type = std::ptrdiff_t; - using pointer = const T*; - using reference = const T&; - - const_iterator() : m_pPtr(nullptr) {} - const_iterator(T* p) : m_pPtr(p) {} - const_iterator(const iterator& other) : m_pPtr(other.m_pPtr) {} - - reference operator*() const { return *m_pPtr; } - pointer operator->() const { return m_pPtr; } - - const_iterator& operator++() { ++m_pPtr; return *this; } - const_iterator operator++(int) { const_iterator tmp = *this; ++(*this); return tmp; } - - const_iterator& operator--() { --m_pPtr; return *this; } - const_iterator operator--(int) { const_iterator tmp = *this; --(*this); return tmp; } - - const_iterator& operator+=(difference_type n) { m_pPtr += n; return *this; } - const_iterator operator+(difference_type n) const { const_iterator tmp = *this; return tmp += n; } - friend const_iterator operator+(difference_type n, const_iterator it) { return it + n; } - - const_iterator& operator-=(difference_type n) { return *this += -n; } - const_iterator operator-(difference_type n) const { const_iterator tmp = *this; return tmp -= n; } - difference_type operator-(const const_iterator& other) const { return m_pPtr - other.m_pPtr; } - - reference operator[](difference_type n) const { return *(*this + n); } - - bool operator==(const const_iterator& other) const { return m_pPtr == other.m_pPtr; } - bool operator!=(const const_iterator& other) const { return !(*this == other); } - bool operator<(const const_iterator& other) const { return m_pPtr < other.m_pPtr; } - bool operator<=(const const_iterator& other) const { return !(other < *this); } - bool operator>(const const_iterator& other) const { return other < *this; } - bool operator>=(const const_iterator& other) const { return !(*this < other); } - - private: - T* m_pPtr; - friend class vector; - }; - - using reverse_iterator = std::reverse_iterator; - using const_reverse_iterator = std::reverse_iterator; - - allocator_type get_allocator() const - { - return m_Alloc; - } - - reference at(size_type pos) - { - return m_pFirst[pos]; - } - - const_reference at(size_type pos) const - { - return m_pFirst[pos]; - } - - reference operator[](size_type pos) - { - return m_pFirst[pos]; - } - - const_reference operator[](size_type pos) const - { - return m_pFirst[pos]; - } - - reference front() - { - return m_pFirst[0]; - } - - const_reference front() const - { - return m_pFirst[0]; - } - - reference back() - { - return m_pLast[-1]; - } - - const_reference back() const - { - return m_pLast[-1]; - } - - T* data() - { - return m_pFirst; - } - - const T* data() const - { - return m_pFirst; - } - - iterator begin() - { - return iterator(m_pFirst); - } - - const_iterator begin() const - { - return const_iterator(m_pFirst); - } - - const_iterator cbegin() const - { - return const_iterator(m_pFirst); - } - - iterator end() - { - return iterator(m_pLast); - } - - const_iterator end() const - { - return const_iterator(m_pLast); - } - - const_iterator cend() const - { - return const_iterator(m_pLast); - } - - reverse_iterator rbegin() - { - return reverse_iterator(end()); - } - - const_reverse_iterator rbegin() const - { - return const_reverse_iterator(end()); - } - - const_reverse_iterator crbegin() const - { - return const_reverse_iterator(cend()); - } - - reverse_iterator rend() - { - return reverse_iterator(begin()); - } - - const_reverse_iterator rend() const - { - return const_reverse_iterator(begin()); - } - - const_reverse_iterator crend() const - { - return const_reverse_iterator(cbegin()); - } - - bool empty() const - { - return m_pFirst == m_pLast; - } - - size_type size() const - { - return m_pLast - m_pFirst; - } - - size_type max_size() const - { - return ~0u; - } - - size_type capacity() const - { - return m_pEnd - m_pFirst; - } - }; - - SWA_ASSERT_SIZEOF(vector, 0x10); -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/System/hhAllocator.h b/UnleashedRecomp/api/Hedgehog/Base/System/hhAllocator.h deleted file mode 100644 index 044aad47..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/System/hhAllocator.h +++ /dev/null @@ -1,36 +0,0 @@ -#pragma once - -#include "SWA.inl" - -inline void* __HH_ALLOC(const uint32_t in_Size) -{ - return GuestToHostFunction(sub_822C0988, in_Size); -} - -inline void __HH_FREE(const void* in_pData) -{ - GuestToHostFunction(sub_822C0270, in_pData); -} - -namespace Hedgehog::Base -{ - template - class TAllocator - { - public: - using value_type = T; - - TAllocator() noexcept {} - template TAllocator(TAllocator const&) noexcept {} - - value_type* allocate(std::size_t n) - { - return reinterpret_cast(__HH_ALLOC(n * sizeof(value_type))); - } - - void deallocate(value_type* p, std::size_t) noexcept - { - __HH_FREE(p); - } - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.h b/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.h deleted file mode 100644 index 2b874e9c..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Base -{ - class CSharedString; - - class CStringSymbol - { - public: - be m_Index; - - CStringSymbol(); - CStringSymbol(const char* in_pName); - CStringSymbol(const CSharedString& in_rName); - - bool operator==(const CStringSymbol& in_rOther) const; - bool operator!=(const CStringSymbol& in_rOther) const; - bool operator<(const CStringSymbol& in_rOther) const; - }; - - SWA_ASSERT_OFFSETOF(CStringSymbol, m_Index, 0); - SWA_ASSERT_SIZEOF(CStringSymbol, 4); -} - -#include diff --git a/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.inl b/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.inl deleted file mode 100644 index b0acc103..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/System/hhSymbol.inl +++ /dev/null @@ -1,31 +0,0 @@ -namespace Hedgehog::Base -{ - inline CStringSymbol::CStringSymbol() - { - } - - inline CStringSymbol::CStringSymbol(const char* in_pName) - { - GuestToHostFunction(sub_82E014D8, this, in_pName); - } - - inline CStringSymbol::CStringSymbol(const CSharedString& in_rName) - { - GuestToHostFunction(sub_82E013B0, this, &in_rName); - } - - inline bool CStringSymbol::operator==(const CStringSymbol& in_rOther) const - { - return m_Index == in_rOther.m_Index; - } - - inline bool CStringSymbol::operator!=(const CStringSymbol& in_rOther) const - { - return m_Index != in_rOther.m_Index; - } - - inline bool CStringSymbol::operator<(const CStringSymbol& in_rOther) const - { - return m_Index < in_rOther.m_Index; - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolder.h b/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolder.h deleted file mode 100644 index 1e23c78c..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolder.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include "Hedgehog/Base/Thread/hhHolderBase.h" - -#define HH_BASE_HOLDER(x) \ - Hedgehog::Base::THolder(x) - -namespace Hedgehog::Base -{ - template - class THolder : public CHolderBase - { - public: - THolder(T* in_pObject) : CHolderBase(in_pObject, ForceSync) {} - - T* get() const; - T* operator->() const; - T* operator*() const; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolderBase.h b/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolderBase.h deleted file mode 100644 index 2d5d80a1..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhHolderBase.h +++ /dev/null @@ -1,28 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Hedgehog::Base -{ - class CSynchronizedObject; - - class CHolderBase - { - protected: - xpointer m_pSynchronizedObject; - bool m_Locked; - - public: - CHolderBase() : m_pSynchronizedObject(nullptr), m_Locked(false) {} - CHolderBase(CSynchronizedObject* in_pSynchronizedObject, bool in_ForceSync = false); - CHolderBase(CHolderBase&& io_rOther); - CHolderBase(const CHolderBase& in_rOther); - ~CHolderBase(); - - CSynchronizedObject* get() const; - CSynchronizedObject* operator->() const; - CSynchronizedObject* operator*() const; - - explicit operator bool() const; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedObject.h b/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedObject.h deleted file mode 100644 index d84df970..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedObject.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Hedgehog::Base -{ - class CSynchronizedObject - { - public: - SWA_INSERT_PADDING(0x04); - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedPtr.h b/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedPtr.h deleted file mode 100644 index 53889dd1..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Thread/hhSynchronizedPtr.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Base/Thread/hhHolder.h" - -namespace Hedgehog::Base -{ - template - class TSynchronizedPtr - { - xpointer m_pObject; - - public: - TSynchronizedPtr(T* in_pObject); - TSynchronizedPtr(); - TSynchronizedPtr(const TSynchronizedPtr& in_rOther); - TSynchronizedPtr(TSynchronizedPtr&& io_rOther); - - TSynchronizedPtr& operator=(T* const in_pObject); - - THolder get() const; - THolder operator->() const; - THolder operator*() const; - - explicit operator bool() const; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.h b/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.h deleted file mode 100644 index bc3dbc2b..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Base -{ - struct SStringHolder - { - be RefCount; - char aStr[]; - - static SStringHolder* GetHolder(const char* in_pStr); - static SStringHolder* Make(const char* in_pStr); - - void AddRef(); - void Release(); - - bool IsUnique() const; - }; -} - -#include diff --git a/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.inl b/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.inl deleted file mode 100644 index 0daf6e6f..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Type/detail/hhStringHolder.inl +++ /dev/null @@ -1,47 +0,0 @@ -namespace Hedgehog::Base -{ - inline SStringHolder* SStringHolder::GetHolder(const char* in_pStr) - { - return (SStringHolder*)((size_t)in_pStr - sizeof(RefCount)); - } - - inline SStringHolder* SStringHolder::Make(const char* in_pStr) - { - auto pHolder = (SStringHolder*)__HH_ALLOC(sizeof(RefCount) + strlen(in_pStr) + 1); - pHolder->RefCount = 1; - strcpy(pHolder->aStr, in_pStr); - return pHolder; - } - - inline void SStringHolder::AddRef() - { - std::atomic_ref refCount(RefCount.value); - - be original, incremented; - do - { - original = RefCount; - incremented = original + 1; - } while (!refCount.compare_exchange_weak(original.value, incremented.value)); - } - - inline void SStringHolder::Release() - { - std::atomic_ref refCount(RefCount.value); - - be original, decremented; - do - { - original = RefCount; - decremented = original - 1; - } while (!refCount.compare_exchange_weak(original.value, decremented.value)); - - if (decremented == 0) - __HH_FREE(this); - } - - inline bool SStringHolder::IsUnique() const - { - return RefCount == 1; - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.h b/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.h deleted file mode 100644 index 8ce1201c..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.h +++ /dev/null @@ -1,38 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Base -{ - class CSharedString - { - private: - xpointer m_pStr; - - SStringHolder* GetHolder() const; - - CSharedString(SStringHolder* in_pHolder); - - public: - static constexpr size_t npos = ~0u; - - CSharedString(); - CSharedString(const char* in_pStr); - CSharedString(const CSharedString& in_rOther); - CSharedString(CSharedString&& io_rOther); - ~CSharedString(); - - const char* get() const; - const char* c_str() const; - const char* data() const; - - size_t size() const; - size_t length() const; - bool empty() const; - - const char* begin() const; - const char* end() const; - }; -} - -#include diff --git a/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.inl b/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.inl deleted file mode 100644 index 2bddc716..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/Type/hhSharedString.inl +++ /dev/null @@ -1,78 +0,0 @@ -namespace Hedgehog::Base -{ - inline SStringHolder* CSharedString::GetHolder() const - { - return SStringHolder::GetHolder(m_pStr); - } - - inline CSharedString::CSharedString(SStringHolder* in_pHolder) : m_pStr(in_pHolder->aStr) - { - } - - inline CSharedString::CSharedString() : m_pStr(nullptr) - { - } - - inline CSharedString::CSharedString(const char* in_pStr) : m_pStr(nullptr) - { - size_t length; - - if (in_pStr && (length = strlen(in_pStr)) != 0) - m_pStr.ptr = g_memory.MapVirtual(SStringHolder::Make(in_pStr)->aStr); - } - - inline CSharedString::CSharedString(const CSharedString& in_rOther) : m_pStr(in_rOther.m_pStr) - { - GetHolder()->AddRef(); - } - - inline CSharedString::CSharedString(CSharedString&& io_rOther) : m_pStr(io_rOther.m_pStr) - { - io_rOther.m_pStr = nullptr; - } - - inline CSharedString::~CSharedString() - { - GetHolder()->Release(); - } - - inline const char* CSharedString::get() const - { - return m_pStr; - } - - inline const char* CSharedString::c_str() const - { - return get(); - } - - inline const char* CSharedString::data() const - { - return get(); - } - - inline size_t CSharedString::size() const - { - return strlen(m_pStr); - } - - inline size_t CSharedString::length() const - { - return size(); - } - - inline bool CSharedString::empty() const - { - return size() == 0; - } - - inline const char* CSharedString::begin() const - { - return get(); - } - - inline const char* CSharedString::end() const - { - return &m_pStr[size()]; - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Base/hhObject.h b/UnleashedRecomp/api/Hedgehog/Base/hhObject.h deleted file mode 100644 index 80723ee2..00000000 --- a/UnleashedRecomp/api/Hedgehog/Base/hhObject.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Hedgehog::Base -{ - class CObject - { - public: - CObject(); - CObject(const swa_null_ctor&); - - void* operator new(const size_t in_Size); - void* operator new(const size_t in_Size, const size_t in_Align); - - void operator delete(void* in_pMem); - - void* operator new(const size_t in_Size, void* in_pObj); - void* operator new(const size_t in_Size, const size_t in_Align, void* in_pObj); - - void operator delete(void* in_pMem, void* in_pObj); - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.h b/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.h deleted file mode 100644 index 3a7ac2b0..00000000 --- a/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.h +++ /dev/null @@ -1,40 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Database -{ - enum EDatabaseDataFlags : uint8_t - { - eDatabaseDataFlags_IsMadeOne = 0x1, - eDatabaseDataFlags_IsMadeAll = 0x2, - eDatabaseDataFlags_CreatedFromArchive = 0x4, - eDatabaseDataFlags_IsMadeMakingOne = 0x8 - }; - - class CDatabaseData : public Base::CObject - { - public: - struct Vftable - { - be m_fpDtor; - be m_fpCheckMadeAll; - }; - - xpointer m_pVftable; - uint8_t m_Flags; - Base::CSharedString m_TypeAndName; - - ~CDatabaseData(); - bool CheckMadeAll(); - - bool IsMadeOne() const; - void SetMadeOne(); - - bool IsMadeAllInternal(); - bool IsMadeAll(); - }; -} - -#include "Hedgehog/Database/System/hhDatabaseData.inl" diff --git a/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.inl b/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.inl deleted file mode 100644 index 6132b394..00000000 --- a/UnleashedRecomp/api/Hedgehog/Database/System/hhDatabaseData.inl +++ /dev/null @@ -1,36 +0,0 @@ -namespace Hedgehog::Database -{ - inline CDatabaseData::~CDatabaseData() - { - GuestToHostFunction(m_pVftable->m_fpDtor, this); - } - - inline bool CDatabaseData::CheckMadeAll() - { - return GuestToHostFunction(m_pVftable->m_fpCheckMadeAll, this); - } - - inline bool CDatabaseData::IsMadeOne() const - { - return (m_Flags & eDatabaseDataFlags_IsMadeOne) != 0; - } - - inline void CDatabaseData::SetMadeOne() - { - m_Flags |= eDatabaseDataFlags_IsMadeOne; - } - - inline bool CDatabaseData::IsMadeAllInternal() - { - if ((m_Flags & eDatabaseDataFlags_IsMadeOne) == 0 || !CheckMadeAll()) - return false; - - m_Flags |= eDatabaseDataFlags_IsMadeAll; - return true; - } - - inline bool CDatabaseData::IsMadeAll() - { - return (m_Flags & eDatabaseDataFlags_IsMadeAll) != 0 || IsMadeAllInternal(); - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Math/Matrix.h b/UnleashedRecomp/api/Hedgehog/Math/Matrix.h deleted file mode 100644 index a2798362..00000000 --- a/UnleashedRecomp/api/Hedgehog/Math/Matrix.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Math -{ - class CMatrix - { - public: - be m_M00; - be m_M01; - be m_M02; - be m_M03; - be m_M10; - be m_M11; - be m_M12; - be m_M13; - be m_M20; - be m_M21; - be m_M22; - be m_M23; - be m_M30; - be m_M31; - be m_M32; - be m_M33; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Math/Quaternion.h b/UnleashedRecomp/api/Hedgehog/Math/Quaternion.h deleted file mode 100644 index b0bc5771..00000000 --- a/UnleashedRecomp/api/Hedgehog/Math/Quaternion.h +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Math -{ - class CQuaternion - { - public: - be X; - be Y; - be Z; - be W; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Math/Vector.h b/UnleashedRecomp/api/Hedgehog/Math/Vector.h deleted file mode 100644 index 7ea0e382..00000000 --- a/UnleashedRecomp/api/Hedgehog/Math/Vector.h +++ /dev/null @@ -1,31 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Hedgehog::Math -{ - class CVector2 - { - public: - be X; - be Y; - }; - - class CVector - { - public: - be X; - be Y; - be Z; - be W; - }; - - class CVector4 - { - public: - be X; - be Y; - be Z; - be W; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/MatrixNode/hhMatrixNode.h b/UnleashedRecomp/api/Hedgehog/MirageCore/MatrixNode/hhMatrixNode.h deleted file mode 100644 index 5304186d..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/MatrixNode/hhMatrixNode.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Mirage -{ - class CMatrixNodeListener; - - class CMatrixNode : public Base::CObject - { - public: - SWA_INSERT_PADDING(0x60); - }; - - SWA_ASSERT_SIZEOF(CMatrixNode, 0x60); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhTransform.h b/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhTransform.h deleted file mode 100644 index 751598b7..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhTransform.h +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Mirage -{ - class CTransform - { - public: - Math::CQuaternion m_Rotation; - Math::CVector m_Position; - Math::CMatrix m_Matrix; - }; - - SWA_ASSERT_OFFSETOF(CTransform, m_Rotation, 0x00); - SWA_ASSERT_OFFSETOF(CTransform, m_Position, 0x10); - SWA_ASSERT_OFFSETOF(CTransform, m_Matrix, 0x20); - SWA_ASSERT_SIZEOF(CTransform, 0x60); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhVertexDeclarationPtr.h b/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhVertexDeclarationPtr.h deleted file mode 100644 index bf0c4917..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/Misc/hhVertexDeclarationPtr.h +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Mirage -{ - class CRenderingInfrastructure; - - class CVertexDeclarationPtr - { - public: - xpointer m_pD3DVertexDeclaration; - xpointer m_pRenderingInfrastructure; - }; - - SWA_ASSERT_OFFSETOF(CVertexDeclarationPtr, m_pD3DVertexDeclaration, 0x0); - SWA_ASSERT_OFFSETOF(CVertexDeclarationPtr, m_pRenderingInfrastructure, 0x4); - SWA_ASSERT_SIZEOF(CVertexDeclarationPtr, 0x8); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMaterialData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMaterialData.h deleted file mode 100644 index 0be6a3e2..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMaterialData.h +++ /dev/null @@ -1,39 +0,0 @@ -#pragma once - -#include - -#include -#include - -namespace Hedgehog::Mirage -{ - class CMaterialData; - class CTexsetData; - class CShaderListData; - class CParameterFloat4Element; - class CParameterInt4Element; - class CParameterBoolElement; - - class CMaterialData : public Database::CDatabaseData - { - public: - boost::shared_ptr m_spShaderListData; - boost::shared_ptr m_spTexsetData; - hh::vector> m_Float4Params; - hh::vector> m_Int4Params; - hh::vector> m_Bool4Params; - uint8_t m_AlphaThreshold; - bool m_DoubleSided; - bool m_Additive; - }; - - SWA_ASSERT_OFFSETOF(CMaterialData, m_spShaderListData, 0xC); - SWA_ASSERT_OFFSETOF(CMaterialData, m_spTexsetData, 0x14); - SWA_ASSERT_OFFSETOF(CMaterialData, m_Float4Params, 0x1C); - SWA_ASSERT_OFFSETOF(CMaterialData, m_Int4Params, 0x2C); - SWA_ASSERT_OFFSETOF(CMaterialData, m_Bool4Params, 0x3C); - SWA_ASSERT_OFFSETOF(CMaterialData, m_AlphaThreshold, 0x4C); - SWA_ASSERT_OFFSETOF(CMaterialData, m_DoubleSided, 0x4D); - SWA_ASSERT_OFFSETOF(CMaterialData, m_Additive, 0x4E); - SWA_ASSERT_SIZEOF(CMaterialData, 0x50); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshData.h deleted file mode 100644 index 3fc6a9f9..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshData.h +++ /dev/null @@ -1,43 +0,0 @@ -#pragma once - -#include - -#include -#include -#include - -namespace Hedgehog::Mirage -{ - class CMaterialData; - - class CMeshData : public Database::CDatabaseData - { - public: - be m_IndexNum; - be m_VertexNum; - be m_VertexSize; - be m_NodeNum; - xpointer m_pNodeIndices; - be m_VertexOffset; - be m_IndexOffset; - xpointer m_pD3DIndexBuffer; - xpointer m_pD3DVertexBuffer; - CVertexDeclarationPtr m_VertexDeclarationPtr; - SWA_INSERT_PADDING(0x4); - boost::shared_ptr m_spMaterial; - SWA_INSERT_PADDING(0xC); - }; - - SWA_ASSERT_OFFSETOF(CMeshData, m_IndexNum, 0xC); - SWA_ASSERT_OFFSETOF(CMeshData, m_VertexNum, 0x10); - SWA_ASSERT_OFFSETOF(CMeshData, m_VertexSize, 0x14); - SWA_ASSERT_OFFSETOF(CMeshData, m_NodeNum, 0x18); - SWA_ASSERT_OFFSETOF(CMeshData, m_pNodeIndices, 0x1C); - SWA_ASSERT_OFFSETOF(CMeshData, m_VertexOffset, 0x20); - SWA_ASSERT_OFFSETOF(CMeshData, m_IndexOffset, 0x24); - SWA_ASSERT_OFFSETOF(CMeshData, m_pD3DIndexBuffer, 0x28); - SWA_ASSERT_OFFSETOF(CMeshData, m_pD3DVertexBuffer, 0x2C); - SWA_ASSERT_OFFSETOF(CMeshData, m_VertexDeclarationPtr, 0x30); - SWA_ASSERT_OFFSETOF(CMeshData, m_spMaterial, 0x3C); - SWA_ASSERT_SIZEOF(CMeshData, 0x50); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshIndexData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshIndexData.h deleted file mode 100644 index 4c01e289..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMeshIndexData.h +++ /dev/null @@ -1,26 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CMaterialData; - - class CMeshIndexData : public Hedgehog::Database::CDatabaseData - { - public: - be m_IndexNum; - be m_NodeNum; - xpointer m_pNodeIndices; - xpointer m_pD3DIndexBuffer; - boost::shared_ptr m_spMaterial; - }; - - SWA_ASSERT_OFFSETOF(CMeshIndexData, m_IndexNum, 0xC); - SWA_ASSERT_OFFSETOF(CMeshIndexData, m_NodeNum, 0x10); - SWA_ASSERT_OFFSETOF(CMeshIndexData, m_pNodeIndices, 0x14); - SWA_ASSERT_OFFSETOF(CMeshIndexData, m_pD3DIndexBuffer, 0x18); - SWA_ASSERT_OFFSETOF(CMeshIndexData, m_spMaterial, 0x1C); - SWA_ASSERT_SIZEOF(CMeshIndexData, 0x24); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhModelData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhModelData.h deleted file mode 100644 index d29bc11f..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhModelData.h +++ /dev/null @@ -1,46 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CNodeGroupModelData; - class CMeshData; - class CModelNodeData; - class CMatrixData; - class CAabbData; - class CSphereData; - class CMorphModelData; - - class CModelData : public Database::CDatabaseData - { - public: - be m_NodeGroupModelNum; - hh::vector> m_NodeGroupModels; - hh::vector> m_OpaqueMeshes; - hh::vector> m_TransparentMeshes; - hh::vector> m_PunchThroughMeshes; - be m_NodeNum; - boost::shared_ptr m_spNodeParentIndices; - boost::shared_ptr m_spNodes; - boost::shared_ptr m_spNodeMatrices; - boost::shared_ptr m_spAabb; - boost::shared_ptr m_spSphere; - hh::vector> m_MorphModels; - }; - - SWA_ASSERT_OFFSETOF(CModelData, m_NodeGroupModelNum, 0xC); - SWA_ASSERT_OFFSETOF(CModelData, m_NodeGroupModels, 0x10); - SWA_ASSERT_OFFSETOF(CModelData, m_OpaqueMeshes, 0x20); - SWA_ASSERT_OFFSETOF(CModelData, m_TransparentMeshes, 0x30); - SWA_ASSERT_OFFSETOF(CModelData, m_PunchThroughMeshes, 0x40); - SWA_ASSERT_OFFSETOF(CModelData, m_NodeNum, 0x50); - SWA_ASSERT_OFFSETOF(CModelData, m_spNodeParentIndices, 0x54); - SWA_ASSERT_OFFSETOF(CModelData, m_spNodes, 0x5C); - SWA_ASSERT_OFFSETOF(CModelData, m_spNodeMatrices, 0x64); - SWA_ASSERT_OFFSETOF(CModelData, m_spAabb, 0x6C); - SWA_ASSERT_OFFSETOF(CModelData, m_spSphere, 0x74); - SWA_ASSERT_OFFSETOF(CModelData, m_MorphModels, 0x7C); - SWA_ASSERT_SIZEOF(CModelData, 0x8C); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMorphModelData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMorphModelData.h deleted file mode 100644 index 7da092b0..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhMorphModelData.h +++ /dev/null @@ -1,38 +0,0 @@ -#pragma once - -#include - -#include -#include -#include - -namespace Hedgehog::Mirage -{ - class CMorphTargetData; - class CMeshIndexData; - - class CMorphModelData : public Hedgehog::Database::CDatabaseData - { - public: - be m_VertexNum; - be m_VertexSize; - be m_MorphTargetVertexSize; - xpointer m_pD3DVertexBuffer; - CVertexDeclarationPtr m_VertexDeclarationPtr; - hh::vector> m_MorphTargetList; - hh::vector> m_OpaqueMeshList; - hh::vector> m_TransparentMeshList; - hh::vector> m_PunchThroughMeshList; - }; - - SWA_ASSERT_OFFSETOF(CMorphModelData, m_VertexNum, 0xC); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_VertexSize, 0x10); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_MorphTargetVertexSize, 0x14); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_pD3DVertexBuffer, 0x18); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_VertexDeclarationPtr, 0x1C); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_MorphTargetList, 0x24); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_OpaqueMeshList, 0x34); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_TransparentMeshList, 0x44); - SWA_ASSERT_OFFSETOF(CMorphModelData, m_PunchThroughMeshList, 0x54); - SWA_ASSERT_SIZEOF(CMorphModelData, 0x64); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhNodeGroupModelData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhNodeGroupModelData.h deleted file mode 100644 index 1c37548b..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhNodeGroupModelData.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CMeshData; - - class CNodeGroupModelData : public Database::CDatabaseData - { - public: - hh::vector> m_OpaqueMeshes; - hh::vector> m_TransparentMeshes; - hh::vector> m_PunchThroughMeshes; - be m_SpecialMeshGroupNum; - boost::shared_ptr> m_SpecialMeshGroupModes; - hh::vector>> m_SpecialMeshGroups; - Base::CSharedString m_Name; - }; - - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_OpaqueMeshes, 0xC); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_TransparentMeshes, 0x1C); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_PunchThroughMeshes, 0x2C); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_SpecialMeshGroupNum, 0x3C); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_SpecialMeshGroupModes, 0x40); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_SpecialMeshGroups, 0x48); - SWA_ASSERT_OFFSETOF(CNodeGroupModelData, m_Name, 0x58); - SWA_ASSERT_SIZEOF(CNodeGroupModelData, 0x5C); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderCodeData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderCodeData.h deleted file mode 100644 index ab275e28..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderCodeData.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once - -#include - -#include - -namespace Hedgehog::Base -{ - class CCriticalSectionD3D9; -} - -namespace Hedgehog::Mirage -{ - class CRenderingInfrastructure; - - class CPixelShaderCodeData : public Database::CDatabaseData - { - public: - xpointer m_pD3DPixelShader; - xpointer m_spFunction; - boost::shared_ptr m_spCriticalSection; - xpointer m_pRenderingInfrastructure; - }; - - SWA_ASSERT_OFFSETOF(CPixelShaderCodeData, m_pD3DPixelShader, 0xC); - SWA_ASSERT_OFFSETOF(CPixelShaderCodeData, m_spFunction, 0x10); - SWA_ASSERT_OFFSETOF(CPixelShaderCodeData, m_spCriticalSection, 0x14); - SWA_ASSERT_OFFSETOF(CPixelShaderCodeData, m_pRenderingInfrastructure, 0x1C); - SWA_ASSERT_SIZEOF(CPixelShaderCodeData, 0x20); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderData.h deleted file mode 100644 index e2740243..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhPixelShaderData.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CPixelShaderCodeData; - class CPixelShaderParameterData; - - class CPixelShaderData : public Hedgehog::Database::CDatabaseData - { - public: - boost::shared_ptr m_spCode; - SWA_INSERT_PADDING(0x4); - hh::vector> m_ParameterList; - }; - - SWA_ASSERT_OFFSETOF(CPixelShaderData, m_spCode, 0xC); - SWA_ASSERT_OFFSETOF(CPixelShaderData, m_ParameterList, 0x18); - SWA_ASSERT_SIZEOF(CPixelShaderData, 0x28); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhShaderListData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhShaderListData.h deleted file mode 100644 index 3731fff8..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhShaderListData.h +++ /dev/null @@ -1,46 +0,0 @@ -#pragma once - -#include - -#include -#include -#include - -namespace Hedgehog::Mirage -{ - class CVertexShaderData; - class CPixelShaderData; - - class CVertexShaderPermutationData - { - public: - hh::map, boost::shared_ptr> m_VertexShaders; - be m_SubPermutations; - }; - - SWA_ASSERT_OFFSETOF(CVertexShaderPermutationData, m_VertexShaders, 0x0); - SWA_ASSERT_OFFSETOF(CVertexShaderPermutationData, m_SubPermutations, 0xC); - SWA_ASSERT_SIZEOF(CVertexShaderPermutationData, 0x10); - - class CPixelShaderPermutationData - { - public: - hh::map> m_VertexShaderPermutations; - hh::map, boost::shared_ptr> m_PixelShaders; - be m_SubPermutations; - }; - - SWA_ASSERT_OFFSETOF(CPixelShaderPermutationData, m_VertexShaderPermutations, 0x0); - SWA_ASSERT_OFFSETOF(CPixelShaderPermutationData, m_PixelShaders, 0xC); - SWA_ASSERT_OFFSETOF(CPixelShaderPermutationData, m_SubPermutations, 0x18); - SWA_ASSERT_SIZEOF(CPixelShaderPermutationData, 0x1C); - - class CShaderListData : public Database::CDatabaseData - { - public: - hh::map m_PixelShaderPermutations; - }; - - SWA_ASSERT_OFFSETOF(CShaderListData, m_PixelShaderPermutations, 0xC); - SWA_ASSERT_SIZEOF(CShaderListData, 0x18); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTerrainModelData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTerrainModelData.h deleted file mode 100644 index 5f0d6b33..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTerrainModelData.h +++ /dev/null @@ -1,29 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CSphereData; - class CNodeGroupModelData; - class CMeshData; - - class CTerrainModelData : public Database::CDatabaseData - { - public: - SWA_INSERT_PADDING(0x4); - hh::vector> m_NodeGroupModels; - hh::vector> m_OpaqueMeshes; - hh::vector> m_TransparentMeshes; - hh::vector> m_PunchThroughMeshes; - boost::shared_ptr m_spSphere; - }; - - SWA_ASSERT_OFFSETOF(CTerrainModelData, m_NodeGroupModels, 0x10); - SWA_ASSERT_OFFSETOF(CTerrainModelData, m_OpaqueMeshes, 0x20); - SWA_ASSERT_OFFSETOF(CTerrainModelData, m_TransparentMeshes, 0x30); - SWA_ASSERT_OFFSETOF(CTerrainModelData, m_PunchThroughMeshes, 0x40); - SWA_ASSERT_OFFSETOF(CTerrainModelData, m_spSphere, 0x50); - SWA_ASSERT_SIZEOF(CTerrainModelData, 0x58); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTexsetData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTexsetData.h deleted file mode 100644 index 627bf04d..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTexsetData.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once - -#include - -#include -#include - -namespace Hedgehog::Mirage -{ - class CTextureData; - - class CTexsetData : public Database::CDatabaseData - { - public: - hh::vector> m_TextureList; - hh::vector m_TextureNameList; - bool m_ConstTexCoord; - }; - - SWA_ASSERT_OFFSETOF(CTexsetData, m_TextureList, 0xC); - SWA_ASSERT_OFFSETOF(CTexsetData, m_TextureNameList, 0x1C); - SWA_ASSERT_OFFSETOF(CTexsetData, m_ConstTexCoord, 0x2C); - SWA_ASSERT_SIZEOF(CTexsetData, 0x30); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTextureData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTextureData.h deleted file mode 100644 index cf8abbee..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhTextureData.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Mirage -{ - class CTextureData : public Database::CDatabaseData - { - public: - SWA_INSERT_PADDING(0x8); - uint8_t m_TexcoordIndex; - SWA_INSERT_PADDING(0x1B); - }; - - SWA_ASSERT_OFFSETOF(CTextureData, m_TexcoordIndex, 0x14); - SWA_ASSERT_SIZEOF(CTextureData, 0x30); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderCodeData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderCodeData.h deleted file mode 100644 index 9956d2e2..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderCodeData.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once - -#include - -#include - -namespace Hedgehog::Base -{ - class CCriticalSectionD3D9; -} - -namespace Hedgehog::Mirage -{ - class CRenderingInfrastructure; - - class CVertexShaderCodeData : public Database::CDatabaseData - { - public: - xpointer m_pD3DVertexShader; - xpointer m_spFunction; - boost::shared_ptr m_spCriticalSection; - xpointer m_pRenderingInfrastructure; - }; - - SWA_ASSERT_OFFSETOF(CVertexShaderCodeData, m_pD3DVertexShader, 0xC); - SWA_ASSERT_OFFSETOF(CVertexShaderCodeData, m_spFunction, 0x10); - SWA_ASSERT_OFFSETOF(CVertexShaderCodeData, m_spCriticalSection, 0x14); - SWA_ASSERT_OFFSETOF(CVertexShaderCodeData, m_pRenderingInfrastructure, 0x1C); - SWA_ASSERT_SIZEOF(CVertexShaderCodeData, 0x20); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderData.h b/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderData.h deleted file mode 100644 index f9509952..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/RenderData/hhVertexShaderData.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include -#include - -namespace Hedgehog::Mirage -{ - class CVertexShaderCodeData; - class CVertexShaderParameterData; - - class CVertexShaderData : public Hedgehog::Database::CDatabaseData - { - public: - boost::shared_ptr m_spCode; - SWA_INSERT_PADDING(0x4); - hh::vector> m_ParameterList; - }; - - SWA_ASSERT_OFFSETOF(CVertexShaderData, m_spCode, 0xC); - SWA_ASSERT_OFFSETOF(CVertexShaderData, m_ParameterList, 0x18); - SWA_ASSERT_SIZEOF(CVertexShaderData, 0x28); -} diff --git a/UnleashedRecomp/api/Hedgehog/MirageCore/Renderable/hhRenderable.h b/UnleashedRecomp/api/Hedgehog/MirageCore/Renderable/hhRenderable.h deleted file mode 100644 index 73fd409e..00000000 --- a/UnleashedRecomp/api/Hedgehog/MirageCore/Renderable/hhRenderable.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Base/hhObject.h" - -namespace Hedgehog::Mirage -{ - class CRenderable : public Base::CObject - { - public: - xpointer m_pVftable; - bool m_Enabled; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Sparkle/hhParticleMaterial.h b/UnleashedRecomp/api/Hedgehog/Sparkle/hhParticleMaterial.h deleted file mode 100644 index 75bb1b33..00000000 --- a/UnleashedRecomp/api/Hedgehog/Sparkle/hhParticleMaterial.h +++ /dev/null @@ -1,41 +0,0 @@ -#pragma once - -#include - -#include -#include - -namespace Hedgehog::Mirage -{ - class CShaderListData; -} - -namespace Hedgehog::Sparkle -{ - class CParticleMaterial : public Hedgehog::Database::CDatabaseData - { - public: - enum EBlendMode - { - eBlendMode_Zero, - eBlendMode_Typical, - eBlendMode_Add, - eBlendMode_Subtract - }; - - hh::vector m_spFieldC; - boost::shared_ptr m_spDefaultShaderListData; // BillboardParticle_d[v] - boost::shared_ptr m_spShaderListData; - bool m_Field2C; - be m_BlendMode; - be m_AddressMode; - Hedgehog::Base::CSharedString m_MaterialName; - Hedgehog::Base::CSharedString m_TextureName; - Hedgehog::Base::CSharedString m_DeflectionTextureName; - Hedgehog::Base::CSharedString m_ShaderName; - be m_Field48; - be m_Field4C; - }; - - SWA_ASSERT_SIZEOF(CParticleMaterial, 0x50); -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageActor.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageActor.h deleted file mode 100644 index c7d55493..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageActor.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Universe/Engine/hhMessageProcess.h" -#include "Hedgehog/Universe/Thread/hhParallelJob.h" - -namespace Hedgehog::Universe -{ - class CMessageActor : public IMessageProcess, public IParallelJob - { - public: - SWA_INSERT_PADDING(0x88); - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageProcess.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageProcess.h deleted file mode 100644 index b5b42d49..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhMessageProcess.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Base/hhObject.h" - -namespace Hedgehog::Universe -{ - class IMessageProcess : public Base::CObject - { - public: - IMessageProcess() {} - IMessageProcess(const swa_null_ctor& nil) : CObject(nil) {} - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.h deleted file mode 100644 index 269cf865..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.h +++ /dev/null @@ -1,32 +0,0 @@ -#pragma once - -#include -#include -#include -#include - -namespace Hedgehog::Universe -{ - class CStateMachineBase : public IStateMachineMessageReceiver, public Base::CObject - { - public: - class CStateBase : public IMessageProcess - { - public: - SWA_INSERT_PADDING(0x08); - xpointer m_pContext; - xpointer m_pStateMachine; - be m_Time; - SWA_INSERT_PADDING(0x4C); - - void* GetContextBase() const; - - template - T* GetContextBase() const; - }; - - SWA_INSERT_PADDING(0x60); - }; -} - -#include diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.inl b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.inl deleted file mode 100644 index 0750b37f..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineBase.inl +++ /dev/null @@ -1,13 +0,0 @@ -namespace Hedgehog::Universe -{ - inline void* CStateMachineBase::CStateBase::GetContextBase() const - { - return m_pContext; - } - - template - inline T* CStateMachineBase::CStateBase::GetContextBase() const - { - return (T*)m_pContext.get(); - } -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineMessageReceiver.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineMessageReceiver.h deleted file mode 100644 index f75ce5ee..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhStateMachineMessageReceiver.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include - -namespace Hedgehog::Universe -{ - class IStateMachineMessageReceiver - { - public: - IStateMachineMessageReceiver(const swa_null_ctor&) {} - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateInfo.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateInfo.h deleted file mode 100644 index 4369392e..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateInfo.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace Hedgehog::Universe -{ - struct SUpdateInfo - { - be DeltaTime; - be Frame; - Base::CSharedString Category; - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateUnit.h b/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateUnit.h deleted file mode 100644 index 64513e66..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Engine/hhUpdateUnit.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Universe/Thread/hhParallelJob.h" - -namespace Hedgehog::Universe -{ - class CUpdateUnit : public Base::CObject, public IParallelJob - { - public: - xpointer m_pVftable; - SWA_INSERT_PADDING(0x20); - - CUpdateUnit(const swa_null_ctor& nil) : CObject(nil), IParallelJob(nil) {} - CUpdateUnit(); - - // TODO: implement virtual functions. - // virtual ~CUpdateUnit(); - // - // virtual void ExecuteParallelJob(const SUpdateInfo& in_rUpdateInfo) override; - // - // virtual void UpdateParallel(const SUpdateInfo& in_rUpdateInfo) {} - // virtual void UpdateSerial(const SUpdateInfo& in_rUpdateInfo) {} - }; -} diff --git a/UnleashedRecomp/api/Hedgehog/Universe/Thread/hhParallelJob.h b/UnleashedRecomp/api/Hedgehog/Universe/Thread/hhParallelJob.h deleted file mode 100644 index 60b59be3..00000000 --- a/UnleashedRecomp/api/Hedgehog/Universe/Thread/hhParallelJob.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Universe/Engine/hhUpdateInfo.h" - -namespace Hedgehog::Universe -{ - class IParallelJob - { - public: - xpointer m_pVftable; - - IParallelJob() {} - IParallelJob(const swa_null_ctor&) {} - - // TODO: implement virtual functions. - // virtual ~IParallelJob() = default; - // - // virtual void ExecuteParallelJob(const SUpdateInfo& in_rUpdateInfo) = 0; - }; -} diff --git a/UnleashedRecomp/api/README.md b/UnleashedRecomp/api/README.md deleted file mode 100644 index 8239ff7e..00000000 --- a/UnleashedRecomp/api/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# SWA - -## Contribution Guide - -### Naming Conventions - -- Use `camelCase` for local variables, `SNAKE_CASE` for preprocessor macros, and `PascalCase` for everything else. SWA-specific types that don't exist in the game should use `snake_case` for better differentiation. -- Class names should be prefixed with `C`, e.g., `CSonicContext`. -- Struct names should be prefixed with `S`, e.g., `SUpdateInfo`. -- Class members should be prefixed with `m_`, e.g., `m_Time`. Do not use this prefix for struct members. -- Enum names should be prefixed with `E`, e.g., `ELightType`. -- Enum members should start with `e`, followed by the enum name and an underscore, e.g., `eLightType_Point`. -- For enum members indicating the count of elements, prefix with `n`, followed by the name, e.g., `nLightType`. -- Pointers should be prefixed with `p`, e.g., `pSonicContext`. -- Shared pointers should be prefixed with `sp`, e.g., `spDatabase`. -- References should be prefixed with `r`, e.g., `rMessage`. -- Input function arguments should be prefixed with `in_`, e.g., `in_Name`. -- Output function arguments should be prefixed with `out_`, e.g., `out_Value`. -- Static class members should be prefixed with `ms_`, e.g., `ms_Instance`. -- Static members outside a class should be prefixed with `g_`, e.g., `g_AllocationTracker`. -- SWA-specific preprocessor macros should start with `SWA_`, e.g., `SWA_INSERT_PADDING`. -- Hedgehog namespace-specific preprocessor macros should start with `HH_` along with the library's shorthand, e.g., `HH_FND_MSG_MAKE_TYPE`. -- Function pointers should be prefixed with `fp`, e.g., `fpCGameObjectConstructor`. - -Combine prefixes as necessary, e.g., `m_sp` for a shared pointer as a class member or `in_r` for a const reference as a function argument. - -### Coding Style - -- Always place curly brackets on a new line. -- Prefer forward declaring types over including their respective headers. -- Use <> includes relative to the project's root directory path. -- Use C++17's nested namespace feature instead of defining multiple namespaces on separate lines. -- Enum classes are prohibited as they were not available when the game was developed. -- Avoid placing function definitions in .h files, instead, implement functions in the header's respective .inl file, similar to a .cpp file. -- Ensure that all class members are declared as public. Even if you suspect that a class member was private in the original code, having it public is more convenient in a modding API. -- Avoid placing multiple class definitions in a single header file unless you have a good reason to do so. -- Keep function pointers or addresses outside functions, define them as global variables in the corresponding .inl file. Mark these global variables as `inline` and never nest them within class definitions. You do not need to use the `g_` prefix for function pointers, `fp` is sufficient. -- Use primitive types defined in `cstdint` instead of using types that come with the language, e.g., use `uint32_t` instead of `unsigned int`. Using `float`, `double` and `bool` is okay. - -### Mapping Rules - -- Always include the corresponding `offsetof`/`sizeof` assertions for mapped classes/structs. If you are uncertain about the type's size, you can omit the `sizeof` assertion. -- Use the exact type name from the game if it's available through RTTI, otherwise, you can look for shared pointers that may reveal the original type name. -- If you are unsure about the name of a class/struct member, use `Field` followed by the hexadecimal byte offset (e.g., `m_Field194`). Avoid names like `m_StoresThisThingMaybe`, you can write comments next to the definition for speculations. -- If a portion of the byte range is irrelevant to your research or not mapped yet, use the `SWA_INSERT_PADDING` macro to align class/struct members correctly. -- When the class has a virtual function table, if you don't want to map every function in it, you can map only the virtual destructor. -- The original file locations are likely available in the executable file as assertion file paths. If you cannot find the file path, use your intuition to place the file in a sensible place. \ No newline at end of file diff --git a/UnleashedRecomp/api/SWA.h b/UnleashedRecomp/api/SWA.h deleted file mode 100644 index dbeb7dfd..00000000 --- a/UnleashedRecomp/api/SWA.h +++ /dev/null @@ -1,129 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmBase.h" -#include "CSD/Manager/csdmMotionPattern.h" -#include "CSD/Manager/csdmNode.h" -#include "CSD/Manager/csdmNodeObserver.h" -#include "CSD/Manager/csdmObserverBase.h" -#include "CSD/Manager/csdmProject.h" -#include "CSD/Manager/csdmRCObject.h" -#include "CSD/Manager/csdmRCObjectImp.h" -#include "CSD/Manager/csdmRCPtr.h" -#include "CSD/Manager/csdmRCPtrAbs.h" -#include "CSD/Manager/csdmResourceBase.h" -#include "CSD/Manager/csdmScene.h" -#include "CSD/Manager/csdmSceneObserver.h" -#include "CSD/Manager/csdmSubjectBase.h" -#include "CSD/Platform/csdTexList.h" -#include "Hedgehog/Base/Container/hhMap.h" -#include "Hedgehog/Base/Container/hhVector.h" -#include "Hedgehog/Base/System/hhAllocator.h" -#include "Hedgehog/Base/System/hhSymbol.h" -#include "Hedgehog/Base/Thread/hhHolder.h" -#include "Hedgehog/Base/Thread/hhHolderBase.h" -#include "Hedgehog/Base/Thread/hhSynchronizedObject.h" -#include "Hedgehog/Base/Thread/hhSynchronizedPtr.h" -#include "Hedgehog/Base/Type/detail/hhStringHolder.h" -#include "Hedgehog/Base/Type/hhSharedString.h" -#include "Hedgehog/Base/hhObject.h" -#include "Hedgehog/Database/System/hhDatabaseData.h" -#include "Hedgehog/Math/Matrix.h" -#include "Hedgehog/Math/Quaternion.h" -#include "Hedgehog/Math/Vector.h" -#include "Hedgehog/MirageCore/MatrixNode/hhMatrixNode.h" -#include "Hedgehog/MirageCore/Misc/hhTransform.h" -#include "Hedgehog/MirageCore/Misc/hhVertexDeclarationPtr.h" -#include "Hedgehog/MirageCore/RenderData/hhMaterialData.h" -#include "Hedgehog/MirageCore/RenderData/hhMeshData.h" -#include "Hedgehog/MirageCore/RenderData/hhMeshIndexData.h" -#include "Hedgehog/MirageCore/RenderData/hhModelData.h" -#include "Hedgehog/MirageCore/RenderData/hhMorphModelData.h" -#include "Hedgehog/MirageCore/RenderData/hhNodeGroupModelData.h" -#include "Hedgehog/MirageCore/RenderData/hhPixelShaderCodeData.h" -#include "Hedgehog/MirageCore/RenderData/hhPixelShaderData.h" -#include "Hedgehog/MirageCore/RenderData/hhShaderListData.h" -#include "Hedgehog/MirageCore/RenderData/hhTerrainModelData.h" -#include "Hedgehog/MirageCore/RenderData/hhTexsetData.h" -#include "Hedgehog/MirageCore/RenderData/hhTextureData.h" -#include "Hedgehog/MirageCore/RenderData/hhVertexShaderCodeData.h" -#include "Hedgehog/MirageCore/RenderData/hhVertexShaderData.h" -#include "Hedgehog/MirageCore/Renderable/hhRenderable.h" -#include "Hedgehog/Sparkle/hhParticleMaterial.h" -#include "Hedgehog/Universe/Engine/hhMessageActor.h" -#include "Hedgehog/Universe/Engine/hhMessageProcess.h" -#include "Hedgehog/Universe/Engine/hhStateMachineBase.h" -#include "Hedgehog/Universe/Engine/hhStateMachineMessageReceiver.h" -#include "Hedgehog/Universe/Engine/hhUpdateInfo.h" -#include "Hedgehog/Universe/Engine/hhUpdateUnit.h" -#include "Hedgehog/Universe/Thread/hhParallelJob.h" -#include "SWA/Achievement/AchievementID.h" -#include "SWA/Achievement/AchievementManager.h" -#include "SWA/Achievement/AchievementTest.h" -#include "SWA/Boss/EggDragoon/Object/BossEggDragoonDrillMissile.h" -#include "SWA/CSD/CsdDatabaseWrapper.h" -#include "SWA/CSD/CsdProject.h" -#include "SWA/CSD/CsdTexListMirage.h" -#include "SWA/CSD/GameObjectCSD.h" -#include "SWA/Camera/Camera.h" -#include "SWA/Camera/CameraController.h" -#include "SWA/CharacterUtility/CharacterProxy.h" -#include "SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h" -#include "SWA/ExtraStage/Tails/Enemy/Boss/State/StateBase.h" -#include "SWA/ExtraStage/Tails/Enemy/Boss/State/StateBattle.h" -#include "SWA/ExtraStage/Tails/Player/ExPlayerTails.h" -#include "SWA/Globals.h" -#include "SWA/HUD/GeneralWindow/GeneralWindow.h" -#include "SWA/HUD/Loading/Loading.h" -#include "SWA/HUD/Pause/HudPause.h" -#include "SWA/HUD/SaveIcon/SaveIcon.h" -#include "SWA/HUD/Sonic/HudSonicStage.h" -#include "SWA/Inspire/InspireMovieOverlay.h" -#include "SWA/Inspire/InspireMovieOverlayInfo.h" -#include "SWA/Inspire/InspireOpacityAnimationInfo.h" -#include "SWA/Inspire/InspireScene.h" -#include "SWA/Inspire/InspireSceneData.h" -#include "SWA/Inspire/InspireSceneInfo.h" -#include "SWA/Inspire/InspireTextureAnimationInfo.h" -#include "SWA/Inspire/InspireTextureOverlay.h" -#include "SWA/Inspire/InspireTextureOverlayInfo.h" -#include "SWA/Menu/MenuWindowBase.h" -#include "SWA/Message/MsgRequestHelp.h" -#include "SWA/Movie/MovieDisplayer.h" -#include "SWA/Movie/MovieManager.h" -#include "SWA/Object/Common/DashPanel/ObjDashPanel.h" -#include "SWA/Object/SonicStage/EU/RollingBarrel/ObjRollingBarrel.h" -#include "SWA/Player/Character/EvilSonic/EvilSonic.h" -#include "SWA/Player/Character/EvilSonic/EvilSonicContext.h" -#include "SWA/Player/Character/EvilSonic/Hud/EvilHudGuide.h" -#include "SWA/Sequence/Unit/SequenceUnitBase.h" -#include "SWA/Sequence/Unit/SequenceUnitPlayMovie.h" -#include "SWA/Sequence/Utility/SequencePlayMovieWrapper.h" -#include "SWA/Sound/Sound.h" -#include "SWA/Sound/SoundBGMActSonic.h" -#include "SWA/Sound/SoundBGMBase.h" -#include "SWA/System/Application.h" -#include "SWA/System/ApplicationD3D9.h" -#include "SWA/System/ApplicationDocument.h" -#include "SWA/System/ApplicationXenon.h" -#include "SWA/System/Game.h" -#include "SWA/System/GameDocument.h" -#include "SWA/System/GameMode/GameMode.h" -#include "SWA/System/GameMode/GameModeStage.h" -#include "SWA/System/GameMode/GameModeStageMovie.h" -#include "SWA/System/GameMode/GameModeStageTitle.h" -#include "SWA/System/GameMode/Title/TitleMenu.h" -#include "SWA/System/GameMode/Title/TitleStateBase.h" -#include "SWA/System/GameMode/Title/TitleStateIntro.h" -#include "SWA/System/GameMode/Title/TitleStateMenu.h" -#include "SWA/System/GameMode/Title/TitleStateWorldMap.h" -#include "SWA/System/GameMode/WorldMap/WorldMapCamera.h" -#include "SWA/System/GameMode/WorldMap/WorldMapCursor.h" -#include "SWA/System/GameObject.h" -#include "SWA/System/GameParameter.h" -#include "SWA/System/GammaController.h" -#include "SWA/System/InputState.h" -#include "SWA/System/MatrixNodeTransform.h" -#include "SWA/System/PadState.h" -#include "SWA/System/World.h" -#include "boost/smart_ptr/make_shared_object.h" -#include "boost/smart_ptr/shared_ptr.h" diff --git a/UnleashedRecomp/api/SWA.inl b/UnleashedRecomp/api/SWA.inl deleted file mode 100644 index acffd8fc..00000000 --- a/UnleashedRecomp/api/SWA.inl +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include -#include - -#define SWA_CONCAT2(x, y) x##y -#define SWA_CONCAT(x, y) SWA_CONCAT2(x, y) - -#define SWA_INSERT_PADDING(length) \ - uint8_t SWA_CONCAT(pad, __LINE__)[length] - -#define SWA_ASSERT_OFFSETOF(type, field, offset) \ - static_assert(offsetof(type, field) == offset) - -#define SWA_ASSERT_SIZEOF(type, size) \ - static_assert(sizeof(type) == size) - -#define SWA_VIRTUAL_FUNCTION(returnType, virtualIndex, ...) \ - GuestToHostFunction(*(be*)(g_memory.Translate(*(be*)(this) + (4 * virtualIndex))), __VA_ARGS__) - -struct swa_null_ctor {}; diff --git a/UnleashedRecomp/api/SWA/Achievement/AchievementID.h b/UnleashedRecomp/api/SWA/Achievement/AchievementID.h deleted file mode 100644 index 971894fe..00000000 --- a/UnleashedRecomp/api/SWA/Achievement/AchievementID.h +++ /dev/null @@ -1,55 +0,0 @@ -#pragma once - -enum EAchievementID : uint32_t -{ - eAchievementID_StillBroken = 24, - eAchievementID_LookingBetter, - eAchievementID_StillAJigsawPuzzle, - eAchievementID_PickingUpThePieces, - eAchievementID_AlmostThere, - eAchievementID_OneMoreToGo, - eAchievementID_WorldSavior = 31, - eAchievementID_PartlyCloudy, - eAchievementID_Sunny, - eAchievementID_HalfMoon, - eAchievementID_FullMoon, - eAchievementID_BlueStreak, - eAchievementID_PowerOverwhelming, - eAchievementID_GettingTheHangOfThings, - eAchievementID_CreatureOfTheNight, - eAchievementID_HelpingHand, - eAchievementID_LayTheSmackdown, - eAchievementID_WallCrawler, - eAchievementID_Airdevil, - eAchievementID_Hyperdrive, - eAchievementID_Basher, - eAchievementID_Smasher, - eAchievementID_Crasher, - eAchievementID_Thrasher, - eAchievementID_SocialButterfly, - eAchievementID_HungryHungryHedgehog, - eAchievementID_AcePilot, - eAchievementID_DayTripper, - eAchievementID_HardDaysNight, - eAchievementID_GetOnTheExorciseBandwagon, - eAchievementID_GyroWithRelish = 64, - eAchievementID_PigInABlanket, - eAchievementID_ExoticToppings, - eAchievementID_SausageFriedRice, - eAchievementID_IcedHotdog, - eAchievementID_KebabOnABun, - eAchievementID_KetchupAndMustard, - eAchievementID_HardBoiled, - eAchievementID_FriedClamRoll, - eAchievementID_FirstTimeCustomer, - eAchievementID_OhYouShouldntHave, - eAchievementID_ThatsEnoughSeriously, - eAchievementID_Hedgehunk, - eAchievementID_IAintAfraidOfNoGhost, - eAchievementID_BFFs, - eAchievementID_SpeedingTicket, - eAchievementID_ComboKing, - eAchievementID_RingLeader, - eAchievementID_KnockoutBrawler, - eAchievementID_BlueMeteor -}; diff --git a/UnleashedRecomp/api/SWA/Achievement/AchievementManager.h b/UnleashedRecomp/api/SWA/Achievement/AchievementManager.h deleted file mode 100644 index 00c78fe7..00000000 --- a/UnleashedRecomp/api/SWA/Achievement/AchievementManager.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA::Achievement -{ - class CManager : public Hedgehog::Universe::CUpdateUnit - { - public: - class CMember - { - public: - SWA_INSERT_PADDING(0x08); - be m_AchievementID; - }; - - SWA_INSERT_PADDING(0x98); - xpointer m_pMember; - be m_IsUnlocked; - SWA_INSERT_PADDING(0x10); - }; -} diff --git a/UnleashedRecomp/api/SWA/Achievement/AchievementTest.h b/UnleashedRecomp/api/SWA/Achievement/AchievementTest.h deleted file mode 100644 index 02b4d8dc..00000000 --- a/UnleashedRecomp/api/SWA/Achievement/AchievementTest.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CAchievementTest - { - public: - SWA_INSERT_PADDING(0x38); - be m_Unk1; - be m_AchievementID; - uint8_t m_Unk2; - }; -} diff --git a/UnleashedRecomp/api/SWA/Boss/EggDragoon/Object/BossEggDragoonDrillMissile.h b/UnleashedRecomp/api/SWA/Boss/EggDragoon/Object/BossEggDragoonDrillMissile.h deleted file mode 100644 index cbb3294b..00000000 --- a/UnleashedRecomp/api/SWA/Boss/EggDragoon/Object/BossEggDragoonDrillMissile.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include -#include "SWA/System/MatrixNodeTransform.h" - -namespace SWA::Boss::EggDragoon::DrillMissile -{ - class CMissile - { - public: - SWA_INSERT_PADDING(0xC4); - xpointer m_pMatrixNodeTransform; - SWA_INSERT_PADDING(0x68); - be m_Speed; - }; -} diff --git a/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.h b/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.h deleted file mode 100644 index 94abf973..00000000 --- a/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include "boost/smart_ptr/shared_ptr.h" - -namespace Hedgehog::Database -{ - class CDatabase; -} - -namespace SWA -{ - class CCsdProject; - - class CCsdDatabaseWrapper - { - public: - Hedgehog::Database::CDatabase* m_pDatabase; - - CCsdDatabaseWrapper(Hedgehog::Database::CDatabase* in_pDatabase) : m_pDatabase(in_pDatabase) {} - - boost::shared_ptr GetCsdProject(const Hedgehog::Base::CSharedString& in_rName); - }; -} - -#include "SWA/CSD/CsdDatabaseWrapper.inl" diff --git a/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.inl b/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.inl deleted file mode 100644 index 70c79455..00000000 --- a/UnleashedRecomp/api/SWA/CSD/CsdDatabaseWrapper.inl +++ /dev/null @@ -1,9 +0,0 @@ -namespace SWA -{ - inline boost::shared_ptr CCsdDatabaseWrapper::GetCsdProject(const Hedgehog::Base::CSharedString& in_rName) - { - boost::shared_ptr spCsdProject; - GuestToHostFunction(sub_825E2B40, &in_rName, this, &spCsdProject, 0); - return spCsdProject; - } -} diff --git a/UnleashedRecomp/api/SWA/CSD/CsdProject.h b/UnleashedRecomp/api/SWA/CSD/CsdProject.h deleted file mode 100644 index 0211933a..00000000 --- a/UnleashedRecomp/api/SWA/CSD/CsdProject.h +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#include "CSD/Manager/csdmRCPtr.h" -#include "Hedgehog/Database/System/hhDatabaseData.h" - -namespace Chao::CSD -{ - class CProject; -} - -namespace SWA -{ - class CCsdProject : public Hedgehog::Database::CDatabaseData - { - public: - Chao::CSD::RCPtr m_rcProject; - }; -} diff --git a/UnleashedRecomp/api/SWA/CSD/CsdTexListMirage.h b/UnleashedRecomp/api/SWA/CSD/CsdTexListMirage.h deleted file mode 100644 index ee0be919..00000000 --- a/UnleashedRecomp/api/SWA/CSD/CsdTexListMirage.h +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#include "CSD/Platform/csdTexList.h" - -namespace Hedgehog::Mirage -{ - class CTexsetData; -} - -namespace SWA -{ - class CCsdTexListMirage : public Chao::CSD::CTexList - { - public: - boost::shared_ptr m_spTexsetData; - SWA_INSERT_PADDING(0x04); - }; -} diff --git a/UnleashedRecomp/api/SWA/CSD/GameObjectCSD.h b/UnleashedRecomp/api/SWA/CSD/GameObjectCSD.h deleted file mode 100644 index 5049fdb0..00000000 --- a/UnleashedRecomp/api/SWA/CSD/GameObjectCSD.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "CSD/Manager/csdmRCPtr.h" -#include "SWA/System/GameObject.h" - -namespace Chao::CSD -{ - class CProject; -} - -namespace SWA -{ - class CGameObjectCSD : public CGameObject - { - public: - xpointer m_pVftable; - Chao::CSD::RCPtr m_rcProject; - }; -} diff --git a/UnleashedRecomp/api/SWA/Camera/Camera.h b/UnleashedRecomp/api/SWA/Camera/Camera.h deleted file mode 100644 index 1d3db6c6..00000000 --- a/UnleashedRecomp/api/SWA/Camera/Camera.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CCamera : public CGameObject // , public Hedgehog::Universe::TStateMachine - { - public: - xpointer m_pVftable; - SWA_INSERT_PADDING(0xC4); - be m_VertAspectRatio; - SWA_INSERT_PADDING(0x48); - be m_HorzAspectRatio; - SWA_INSERT_PADDING(0x178); - be m_FieldOfView; - be m_VertFieldOfView; - be m_HorzFieldOfView; - SWA_INSERT_PADDING(0x18); - bool m_InvertY; - bool m_InvertX; - }; -} diff --git a/UnleashedRecomp/api/SWA/Camera/CameraController.h b/UnleashedRecomp/api/SWA/Camera/CameraController.h deleted file mode 100644 index 9262ed05..00000000 --- a/UnleashedRecomp/api/SWA/Camera/CameraController.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CCameraController : public Hedgehog::Universe::CStateMachineBase::CStateBase - { - public: - SWA_INSERT_PADDING(0x04); - be m_FieldOfView; - SWA_INSERT_PADDING(0x68); - }; - - SWA_ASSERT_OFFSETOF(CCameraController, m_FieldOfView, 0x64); - SWA_ASSERT_SIZEOF(CCameraController, 0xD0); -} diff --git a/UnleashedRecomp/api/SWA/CharacterUtility/CharacterProxy.h b/UnleashedRecomp/api/SWA/CharacterUtility/CharacterProxy.h deleted file mode 100644 index 4032727c..00000000 --- a/UnleashedRecomp/api/SWA/CharacterUtility/CharacterProxy.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CCharacterProxy - { - public: - SWA_INSERT_PADDING(0x120); - Hedgehog::Math::CVector m_Position; - Hedgehog::Math::CVector m_Velocity; - }; -} diff --git a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h b/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h deleted file mode 100644 index 90fec504..00000000 --- a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h +++ /dev/null @@ -1,36 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CExStageBoss - { - public: - class CStateBase; - class CStateBattle; - - class CExStageBossStateContext - { - public: - SWA_INSERT_PADDING(0x14C); - be m_SplineProgress; - SWA_INSERT_PADDING(0x0C); - be m_SplineSpeed; - SWA_INSERT_PADDING(0x28); - be m_Field188; - be m_Field18C; - SWA_INSERT_PADDING(0x21); - bool m_IsBattleStart; - SWA_INSERT_PADDING(0x36E); - be m_Field520; - }; - }; - - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_SplineProgress, 0x14C); - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_SplineSpeed, 0x15C); - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_Field188, 0x188); - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_Field18C, 0x18C); - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_IsBattleStart, 0x1B1); - SWA_ASSERT_OFFSETOF(CExStageBoss::CExStageBossStateContext, m_Field520, 0x520); -} diff --git a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBase.h b/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBase.h deleted file mode 100644 index 7aaa9b8b..00000000 --- a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBase.h +++ /dev/null @@ -1,9 +0,0 @@ -#pragma once - -#include -#include "SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h" - -namespace SWA -{ - class CExStageBoss::CStateBase : public Hedgehog::Universe::CStateMachineBase::CStateBase {}; -} diff --git a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBattle.h b/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBattle.h deleted file mode 100644 index 4fbfdd45..00000000 --- a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Enemy/Boss/State/StateBattle.h +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#include -#include "SWA/ExtraStage/Tails/Enemy/Boss/ExStageBoss.h" - -namespace SWA -{ - class CExStageBoss::CStateBattle : public CExStageBoss::CStateBase - { - public: - SWA_INSERT_PADDING(0x08); - be m_Field68; - be m_FramesSinceLastMissile; - }; - - SWA_ASSERT_OFFSETOF(CExStageBoss::CStateBattle, m_Field68, 0x68); - SWA_ASSERT_OFFSETOF(CExStageBoss::CStateBattle, m_FramesSinceLastMissile, 0x6C); -} diff --git a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Player/ExPlayerTails.h b/UnleashedRecomp/api/SWA/ExtraStage/Tails/Player/ExPlayerTails.h deleted file mode 100644 index c91eb1e1..00000000 --- a/UnleashedRecomp/api/SWA/ExtraStage/Tails/Player/ExPlayerTails.h +++ /dev/null @@ -1,35 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CExPlayerTails - { - public: - class CExPlayerTailsStateContext - { - public: - SWA_INSERT_PADDING(0x1F8); - be m_SplineBossStart; - be m_SplineEnd; - SWA_INSERT_PADDING(0x30); - be m_SplineProgress; - SWA_INSERT_PADDING(0x10); - xpointer m_Field244; - SWA_INSERT_PADDING(0x18); - be m_SplineSpeed; - SWA_INSERT_PADDING(0x0C); - be m_State; // 0 - Intro; 1 - Boss Intro; 3 - Boss - }; - - class CStateBase : public Hedgehog::Universe::CStateMachineBase::CStateBase {}; - }; - - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_SplineBossStart, 0x1F8); - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_SplineEnd, 0x1FC); - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_SplineProgress, 0x230); - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_Field244, 0x244); - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_SplineSpeed, 0x260); - SWA_ASSERT_OFFSETOF(CExPlayerTails::CExPlayerTailsStateContext, m_State, 0x270); -} diff --git a/UnleashedRecomp/api/SWA/Globals.h b/UnleashedRecomp/api/SWA/Globals.h deleted file mode 100644 index ddd6accd..00000000 --- a/UnleashedRecomp/api/SWA/Globals.h +++ /dev/null @@ -1,77 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - struct SGlobals - { - // ms_DrawLightFieldSamplingPoint: サンプリング点をデバッグ表示 - static inline bool* ms_DrawLightFieldSamplingPoint; - - // N/A - static inline bool* ms_IsAutoSaveWarningShown; - - // ms_IgnoreLightFieldData: データを無視する - static inline bool* ms_IgnoreLightFieldData; - - // IsCollisionRender - static inline bool* ms_IsCollisionRender; - - // N/A - static inline bool* ms_IsLoading; - - // IsObjectCollisionRender - static inline bool* ms_IsObjectCollisionRender; - - // ms_IsRenderDebugDraw: デバッグ描画 - static inline bool* ms_IsRenderDebugDraw; - - // ms_IsRenderDebugDrawText: デバッグ文字描画 - static inline bool* ms_IsRenderDebugDrawText; - - // ms_IsRenderDebugPositionDraw: デバッグ位置描画 - static inline bool* ms_IsRenderDebugPositionDraw; - - // ms_IsRenderGameMainHud: ゲームメインHUD 描画 - static inline bool* ms_IsRenderGameMainHud; - - // ms_IsRenderHud: 全 HUD 描画 - static inline bool* ms_IsRenderHud; - - // ms_IsRenderHudPause: ポーズメニュー 描画 - static inline bool* ms_IsRenderHudPause; - - // N/A - static inline bool* ms_IsTitleStateMenu; - - // IsTriggerRender - static inline bool* ms_IsTriggerRender; - - // ms_LightFieldDebug: 値をデバッグ表示 - static inline bool* ms_LightFieldDebug; - - // VisualizeLoadedLevel: ミップレベルを視覚化 赤=0, 緑=1, 青=2, 黄=未ロード - static inline bool* ms_VisualizeLoadedLevel; - - static void Init() - { - ms_DrawLightFieldSamplingPoint = (bool*)MmGetHostAddress(0x83367BCE); - ms_IgnoreLightFieldData = (bool*)MmGetHostAddress(0x83367BCF); - ms_IsAutoSaveWarningShown = (bool*)MmGetHostAddress(0x83367BC1); - ms_IsCollisionRender = (bool*)MmGetHostAddress(0x833678A6); - ms_IsLoading = (bool*)MmGetHostAddress(0x83367A4C); - ms_IsObjectCollisionRender = (bool*)MmGetHostAddress(0x83367905); - ms_IsRenderDebugDraw = (bool*)MmGetHostAddress(0x8328BB23); - ms_IsRenderDebugDrawText = (bool*)MmGetHostAddress(0x8328BB25); - ms_IsRenderDebugPositionDraw = (bool*)MmGetHostAddress(0x8328BB24); - ms_IsRenderGameMainHud = (bool*)MmGetHostAddress(0x8328BB27); - ms_IsRenderHud = (bool*)MmGetHostAddress(0x8328BB26); - ms_IsRenderHudPause = (bool*)MmGetHostAddress(0x8328BB28); - ms_IsTitleStateMenu = (bool*)MmGetHostAddress(0x83367BC0); - ms_IsTriggerRender = (bool*)MmGetHostAddress(0x83367904); - ms_LightFieldDebug = (bool*)MmGetHostAddress(0x83367BCD); - ms_VisualizeLoadedLevel = (bool*)MmGetHostAddress(0x833678C1); - } - }; -} diff --git a/UnleashedRecomp/api/SWA/HUD/GeneralWindow/GeneralWindow.h b/UnleashedRecomp/api/SWA/HUD/GeneralWindow/GeneralWindow.h deleted file mode 100644 index f17d2e42..00000000 --- a/UnleashedRecomp/api/SWA/HUD/GeneralWindow/GeneralWindow.h +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - enum EWindowStatus : uint32_t - { - eWindowStatus_Closed, - eWindowStatus_OpeningMessage = 2, - eWindowStatus_DisplayingMessage, - eWindowStatus_OpeningControls, - eWindowStatus_DisplayingControls - }; - - class CGeneralWindow - { - public: - SWA_INSERT_PADDING(0xD0); - Chao::CSD::RCPtr m_rcGeneral; - Chao::CSD::RCPtr m_rcBg; - Chao::CSD::RCPtr m_rcWindow; - Chao::CSD::RCPtr m_rcWindow_2; - Chao::CSD::RCPtr m_rcWindowSelect; - Chao::CSD::RCPtr m_rcFooter; - SWA_INSERT_PADDING(0x58); - be m_Status; - be m_CursorIndex; - SWA_INSERT_PADDING(0x04); - be m_SelectedIndex; - }; - - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcGeneral, 0xD0); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcBg, 0xD8); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcWindow, 0xE0); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcWindow_2, 0xE8); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcWindowSelect, 0xF0); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_rcFooter, 0xF8); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_Status, 0x158); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_CursorIndex, 0x15C); - SWA_ASSERT_OFFSETOF(CGeneralWindow, m_SelectedIndex, 0x164); -} diff --git a/UnleashedRecomp/api/SWA/HUD/Loading/Loading.h b/UnleashedRecomp/api/SWA/HUD/Loading/Loading.h deleted file mode 100644 index 66d88d81..00000000 --- a/UnleashedRecomp/api/SWA/HUD/Loading/Loading.h +++ /dev/null @@ -1,40 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - enum ELoadingDisplayType - { - eLoadingDisplayType_MilesElectric, - eLoadingDisplayType_None, - eLoadingDisplayType_WerehogMovie, - eLoadingDisplayType_MilesElectricContext, - eLoadingDisplayType_Arrows, - eLoadingDisplayType_NowLoading, - eLoadingDisplayType_EventGallery, - eLoadingDisplayType_ChangeTimeOfDay, - eLoadingDisplayType_Blank - }; - - class CLoading - { - public: - SWA_INSERT_PADDING(0xD8); - be m_FieldD8; - SWA_INSERT_PADDING(0x3C); - Chao::CSD::RCPtr m_rcNightToDay; - SWA_INSERT_PADDING(0x0C); - be m_IsVisible; - SWA_INSERT_PADDING(0x0C); - be m_LoadingDisplayType; - SWA_INSERT_PADDING(0x61); - bool m_IsNightToDay; - }; - - SWA_ASSERT_OFFSETOF(CLoading, m_FieldD8, 0xD8); - SWA_ASSERT_OFFSETOF(CLoading, m_rcNightToDay, 0x118); - SWA_ASSERT_OFFSETOF(CLoading, m_IsVisible, 0x12C); - SWA_ASSERT_OFFSETOF(CLoading, m_LoadingDisplayType, 0x13C); - SWA_ASSERT_OFFSETOF(CLoading, m_IsNightToDay, 0x1A1); -} diff --git a/UnleashedRecomp/api/SWA/HUD/Pause/HudPause.h b/UnleashedRecomp/api/SWA/HUD/Pause/HudPause.h deleted file mode 100644 index 904e803b..00000000 --- a/UnleashedRecomp/api/SWA/HUD/Pause/HudPause.h +++ /dev/null @@ -1,88 +0,0 @@ -#pragma once - -#include - -using namespace Chao::CSD; - -namespace SWA -{ - enum EActionType : uint32_t - { - eActionType_Undefined, - eActionType_Status, - eActionType_Return, - eActionType_Inventory, - eActionType_Skills, - eActionType_Lab, - eActionType_Wait, - eActionType_Restart = 8, - eActionType_Continue - }; - - enum EMenuType : uint32_t - { - eMenuType_WorldMap, - eMenuType_Village, - eMenuType_Stage, - eMenuType_Hub, - eMenuType_Misc - }; - - enum EStatusType : uint32_t - { - eStatusType_Idle, - eStatusType_Accept, - eStatusType_Decline - }; - - enum ETransitionType : uint32_t - { - eTransitionType_Undefined, - eTransitionType_Quit = 2, - eTransitionType_Dialog = 5, - eTransitionType_Hide, - eTransitionType_Abort, - eTransitionType_SubMenu - }; - - class CHudPause : public CGameObject - { - public: - SWA_INSERT_PADDING(0x30); - RCPtr m_rcPause; - RCPtr m_rcBg; - RCPtr m_rcBg1; - RCPtr m_rcBg1_2; - RCPtr m_rcBg1Select; - RCPtr m_rcBg1Select_2; - RCPtr m_rcStatusTitle; - RCPtr m_rcFooterA; - SWA_INSERT_PADDING(0x59); - bool m_IsVisible; - SWA_INSERT_PADDING(0x02); - be m_Action; - be m_Menu; - be m_Status; - be m_Transition; - SWA_INSERT_PADDING(0x04); - be m_Submenu; - SWA_INSERT_PADDING(0x18); - bool m_IsShown; - }; - - SWA_ASSERT_OFFSETOF(CHudPause, m_rcPause, 0xEC); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg, 0xF4); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1, 0xFC); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1_2, 0x104); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1Select, 0x10C); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcBg1Select_2, 0x114); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcStatusTitle, 0x11C); - SWA_ASSERT_OFFSETOF(CHudPause, m_rcFooterA, 0x124); - SWA_ASSERT_OFFSETOF(CHudPause, m_IsVisible, 0x185); - SWA_ASSERT_OFFSETOF(CHudPause, m_Action, 0x188); - SWA_ASSERT_OFFSETOF(CHudPause, m_Menu, 0x18C); - SWA_ASSERT_OFFSETOF(CHudPause, m_Status, 0x190); - SWA_ASSERT_OFFSETOF(CHudPause, m_Transition, 0x194); - SWA_ASSERT_OFFSETOF(CHudPause, m_Submenu, 0x19C); - SWA_ASSERT_OFFSETOF(CHudPause, m_IsShown, 0x1B8); -} diff --git a/UnleashedRecomp/api/SWA/HUD/SaveIcon/SaveIcon.h b/UnleashedRecomp/api/SWA/HUD/SaveIcon/SaveIcon.h deleted file mode 100644 index 61d5ec77..00000000 --- a/UnleashedRecomp/api/SWA/HUD/SaveIcon/SaveIcon.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CSaveIcon : Hedgehog::Universe::CUpdateUnit - { - public: - SWA_INSERT_PADDING(0xD8); - bool m_IsVisible; - }; -} diff --git a/UnleashedRecomp/api/SWA/HUD/Sonic/HudSonicStage.h b/UnleashedRecomp/api/SWA/HUD/Sonic/HudSonicStage.h deleted file mode 100644 index 59e2d070..00000000 --- a/UnleashedRecomp/api/SWA/HUD/Sonic/HudSonicStage.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CHudSonicStage - { - public: - SWA_INSERT_PADDING(0xE0); - Chao::CSD::RCPtr m_rcPlayScreen; - Chao::CSD::RCPtr m_rcSpeedGauge; - Chao::CSD::RCPtr m_rcRingEnergyGauge; - Chao::CSD::RCPtr m_rcGaugeFrame; - SWA_INSERT_PADDING(0x28); - Chao::CSD::RCPtr m_rcScoreCount; - Chao::CSD::RCPtr m_rcTimeCount; - Chao::CSD::RCPtr m_rcTimeCount2; - Chao::CSD::RCPtr m_rcTimeCount3; - Chao::CSD::RCPtr m_rcPlayerCount; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlay.h b/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlay.h deleted file mode 100644 index 17536685..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlay.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA::Inspire -{ - class CScene; - - class CMovieOverlay - { - public: - boost::shared_ptr m_spInfo; - xpointer m_pScene; - xpointer m_pTextureData; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlayInfo.h b/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlayInfo.h deleted file mode 100644 index de5549a7..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireMovieOverlayInfo.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class CMovieOverlayInfo - { - public: - Hedgehog::Base::CSharedString m_MovieName; - be m_Prepare; - be m_InStart; - be m_InEnd; - be m_OutStart; - be m_OutEnd; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireOpacityAnimationInfo.h b/UnleashedRecomp/api/SWA/Inspire/InspireOpacityAnimationInfo.h deleted file mode 100644 index e281e17c..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireOpacityAnimationInfo.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class COpacityAnimationInfo - { - public: - be m_Opacity; - be m_Frame; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireScene.h b/UnleashedRecomp/api/SWA/Inspire/InspireScene.h deleted file mode 100644 index 780ed8cc..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireScene.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - struct SSceneData - { - be Frame; - be Cut; - bool IsPlaying; - SWA_INSERT_PADDING(0x177); - }; - - class CScene - { - public: - SWA_INSERT_PADDING(0xC0); - xpointer m_pData; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireSceneData.h b/UnleashedRecomp/api/SWA/Inspire/InspireSceneData.h deleted file mode 100644 index 88db2497..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireSceneData.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class CSceneData // : public Hedgehog::Database::CDatabaseData - { - public: - SWA_INSERT_PADDING(0x80); - Hedgehog::Base::CSharedString m_ResourceName; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireSceneInfo.h b/UnleashedRecomp/api/SWA/Inspire/InspireSceneInfo.h deleted file mode 100644 index 617a7eb3..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireSceneInfo.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class CSceneInfo {}; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireTextureAnimationInfo.h b/UnleashedRecomp/api/SWA/Inspire/InspireTextureAnimationInfo.h deleted file mode 100644 index d500ae44..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireTextureAnimationInfo.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class CTextureAnimationInfo - { - public: - SWA_INSERT_PADDING(0x10); - Hedgehog::Base::CSharedString m_MovieTex; - Hedgehog::Base::CSharedString m_MovieSfd; - SWA_INSERT_PADDING(0x08); - be m_Prepare; - be m_Start; - be m_End; - be m_Width; - be m_Height; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlay.h b/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlay.h deleted file mode 100644 index 8384c3c8..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlay.h +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA::Inspire -{ - class CScene; - - class CTextureOverlay - { - public: - xpointer m_pVftable; - boost::shared_ptr m_spInfo; - xpointer m_pScene; - boost::shared_ptr m_spTextureData; - }; -} diff --git a/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlayInfo.h b/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlayInfo.h deleted file mode 100644 index fd35d64a..00000000 --- a/UnleashedRecomp/api/SWA/Inspire/InspireTextureOverlayInfo.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include - -namespace SWA::Inspire -{ - class CTextureOverlayInfo - { - public: - Hedgehog::Base::CSharedString m_Picture; - be m_Start; - be m_End; - }; -} diff --git a/UnleashedRecomp/api/SWA/Menu/MenuWindowBase.h b/UnleashedRecomp/api/SWA/Menu/MenuWindowBase.h deleted file mode 100644 index ccab2f68..00000000 --- a/UnleashedRecomp/api/SWA/Menu/MenuWindowBase.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CMenuWindowBase - { - public: - SWA_INSERT_PADDING(0x10); - }; -} diff --git a/UnleashedRecomp/api/SWA/Message/MsgRequestHelp.h b/UnleashedRecomp/api/SWA/Message/MsgRequestHelp.h deleted file mode 100644 index 3b8ed1ca..00000000 --- a/UnleashedRecomp/api/SWA/Message/MsgRequestHelp.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA::Message -{ - class MsgRequestHelp - { - public: - SWA_INSERT_PADDING(0x1C); - Hedgehog::Base::CSharedString m_Name; - }; -} diff --git a/UnleashedRecomp/api/SWA/Movie/MovieDisplayer.h b/UnleashedRecomp/api/SWA/Movie/MovieDisplayer.h deleted file mode 100644 index 229d23ec..00000000 --- a/UnleashedRecomp/api/SWA/Movie/MovieDisplayer.h +++ /dev/null @@ -1,29 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CMovieDisplayer : public Hedgehog::Universe::CUpdateUnit, public Hedgehog::Mirage::CRenderable - { - public: - struct SVertexData - { - be X; - be Y; - be Z; - be U; - be V; - }; - - SWA_INSERT_PADDING(0x04); - be m_MovieWidth; - be m_MovieHeight; - SWA_INSERT_PADDING(0x74); - SVertexData m_TopLeft; - SVertexData m_TopRight; - SVertexData m_BottomRight; - SVertexData m_BottomLeft; - SWA_INSERT_PADDING(0xF0); - }; -} diff --git a/UnleashedRecomp/api/SWA/Movie/MovieManager.h b/UnleashedRecomp/api/SWA/Movie/MovieManager.h deleted file mode 100644 index 4de3429e..00000000 --- a/UnleashedRecomp/api/SWA/Movie/MovieManager.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CMovieManager // : Hedgehog::Base::TSingleton - { - public: - static CMovieManager* GetInstance(); - - xpointer m_pVftable; - SWA_INSERT_PADDING(0x330); - }; -} - -#include "SWA/Movie/MovieManager.inl" diff --git a/UnleashedRecomp/api/SWA/Movie/MovieManager.inl b/UnleashedRecomp/api/SWA/Movie/MovieManager.inl deleted file mode 100644 index e9412070..00000000 --- a/UnleashedRecomp/api/SWA/Movie/MovieManager.inl +++ /dev/null @@ -1,7 +0,0 @@ -namespace SWA -{ - inline CMovieManager* CMovieManager::GetInstance() - { - return *(xpointer*)MmGetHostAddress(0x8336758C); - } -} diff --git a/UnleashedRecomp/api/SWA/Object/Common/DashPanel/ObjDashPanel.h b/UnleashedRecomp/api/SWA/Object/Common/DashPanel/ObjDashPanel.h deleted file mode 100644 index 45c05a55..00000000 --- a/UnleashedRecomp/api/SWA/Object/Common/DashPanel/ObjDashPanel.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CObjDashPanel - { - public: - SWA_INSERT_PADDING(0xE8); - be m_FieldE8; - be m_Speed; - }; -} diff --git a/UnleashedRecomp/api/SWA/Object/SonicStage/EU/RollingBarrel/ObjRollingBarrel.h b/UnleashedRecomp/api/SWA/Object/SonicStage/EU/RollingBarrel/ObjRollingBarrel.h deleted file mode 100644 index 644b4534..00000000 --- a/UnleashedRecomp/api/SWA/Object/SonicStage/EU/RollingBarrel/ObjRollingBarrel.h +++ /dev/null @@ -1,35 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CObjRollingBarrel - { - public: - class CElement - { - public: - SWA_INSERT_PADDING(0xEC); - xpointer m_FieldEC; - SWA_INSERT_PADDING(0x20); - be m_Roll; - }; - - SWA_INSERT_PADDING(0xE8); - be m_GenerationTime; - SWA_INSERT_PADDING(0x09); - bool m_FieldF5; - SWA_INSERT_PADDING(0x0A); - be m_RandomRange; - be m_Field104; - }; - - SWA_ASSERT_OFFSETOF(CObjRollingBarrel::CElement, m_FieldEC, 0xEC); - SWA_ASSERT_OFFSETOF(CObjRollingBarrel::CElement, m_Roll, 0x110); - - SWA_ASSERT_OFFSETOF(CObjRollingBarrel, m_GenerationTime, 0xE8); - SWA_ASSERT_OFFSETOF(CObjRollingBarrel, m_FieldF5, 0xF5); - SWA_ASSERT_OFFSETOF(CObjRollingBarrel, m_RandomRange, 0x100); - SWA_ASSERT_OFFSETOF(CObjRollingBarrel, m_Field104, 0x104); -} diff --git a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonic.h b/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonic.h deleted file mode 100644 index bee25d07..00000000 --- a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonic.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "SWA/Player/Character/EvilSonic/EvilSonicContext.h" - -namespace SWA::Player -{ - class CEvilSonic // : public CPlayer - { - public: - SWA_INSERT_PADDING(0xC4); - xpointer m_spContext; - }; -} diff --git a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonicContext.h b/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonicContext.h deleted file mode 100644 index d8f38ae3..00000000 --- a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/EvilSonicContext.h +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "SWA/Player/Character/EvilSonic/Hud/EvilHudGuide.h" - -namespace SWA::Player -{ - class CEvilSonicContext // : public CPlayerContext - { - public: - SWA_INSERT_PADDING(0x688); - be m_DarkGaiaEnergy; - SWA_INSERT_PADDING(0x138); - be m_AnimationID; - SWA_INSERT_PADDING(0x38); - be m_UnkHudGuideF32; - be m_UnkHudGuideU32; - SWA_INSERT_PADDING(0x18); - be m_GuideType; - SWA_INSERT_PADDING(0xA8); - be m_OutOfControlCount; - }; -} diff --git a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/Hud/EvilHudGuide.h b/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/Hud/EvilHudGuide.h deleted file mode 100644 index d872fe48..00000000 --- a/UnleashedRecomp/api/SWA/Player/Character/EvilSonic/Hud/EvilHudGuide.h +++ /dev/null @@ -1,30 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace SWA::Player -{ - enum EGuideAction : uint32_t - { - eGuideAction_Single, - eGuideAction_Chain - }; - - enum EGuideType : uint32_t - { - eGuideType_A, - eGuideType_B, - eGuideType_X, - eGuideType_Y - }; - - class CEvilHudGuide : public CGameObject - { - public: - xpointer m_pVftable; - SWA_INSERT_PADDING(0x8D); - bool m_IsShown; - bool m_IsVisible; - be m_GuideType; - }; -} diff --git a/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitBase.h b/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitBase.h deleted file mode 100644 index d45387f2..00000000 --- a/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitBase.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA::Sequence::Unit -{ - class CUnitBase : public Hedgehog::Base::CObject - { - public: - xpointer m_pVftable; - SWA_INSERT_PADDING(0x14); - }; -} diff --git a/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitPlayMovie.h b/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitPlayMovie.h deleted file mode 100644 index 285e678e..00000000 --- a/UnleashedRecomp/api/SWA/Sequence/Unit/SequenceUnitPlayMovie.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include - -namespace SWA::Sequence::Unit -{ - class CPlayMovieUnit : public CUnitBase - { - public: - Hedgehog::Base::CSharedString m_SceneName; - }; -} diff --git a/UnleashedRecomp/api/SWA/Sequence/Utility/SequencePlayMovieWrapper.h b/UnleashedRecomp/api/SWA/Sequence/Utility/SequencePlayMovieWrapper.h deleted file mode 100644 index 47a3e361..00000000 --- a/UnleashedRecomp/api/SWA/Sequence/Utility/SequencePlayMovieWrapper.h +++ /dev/null @@ -1,44 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/MirageCore/Renderable/hhRenderable.h" - -namespace SWA::Sequence::Utility -{ - class CPlayMovieWrapper - { - public: - class CRender : public Hedgehog::Mirage::CRenderable - { - public: - struct SVertexData - { - be X; - be Y; - be Z; - be U; - be V; - }; - - be m_ScreenWidth; - be m_ScreenHeight; - be m_MovieWidth; - be m_MovieHeight; - SWA_INSERT_PADDING(0x74); - SVertexData m_TopLeft; - SVertexData m_TopRight; - SVertexData m_BottomRight; - SVertexData m_BottomLeft; - bool m_Field1A4; - SWA_INSERT_PADDING(0x18); - be m_TimeElapsed; - }; - - xpointer m_pVftable; - Hedgehog::Base::CSharedString m_SceneName; - SWA_INSERT_PADDING(0x10); - xpointer m_pRender; - SWA_INSERT_PADDING(0x04); - xpointer m_pResourceName; - }; -} diff --git a/UnleashedRecomp/api/SWA/Sound/Sound.h b/UnleashedRecomp/api/SWA/Sound/Sound.h deleted file mode 100644 index d43c43a7..00000000 --- a/UnleashedRecomp/api/SWA/Sound/Sound.h +++ /dev/null @@ -1,56 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CSoundAdministrator : public CGameObject - { - public: - class CSimplePlayer {}; - - class CBgm - { - public: - xpointer m_pThis; - boost::shared_ptr m_spSoundBGM; - be m_Volume1; - be m_Volume2; - be m_Volume3; - be m_Volume4; - SWA_INSERT_PADDING(0x10); - }; - - class CCommunicator - { - public: - class CCommunicatorDevice : Hedgehog::Base::CSynchronizedObject - { - public: - SWA_INSERT_PADDING(0x08); - Hedgehog::Base::CSharedString m_HostName; - SWA_INSERT_PADDING(0x04); - Hedgehog::Base::CSharedString m_Category; - Hedgehog::Base::CSharedString m_Command; - SWA_INSERT_PADDING(0x04); - }; - - xpointer m_pThis; - boost::shared_ptr m_spCommunicatorDevice; - }; - - class CMember - { - public: - boost::shared_ptr m_spSimplePlayer; - boost::shared_ptr m_spBgm; - boost::shared_ptr m_spCommunicator; - SWA_INSERT_PADDING(0x58); - }; - - xpointer m_pVftable; - SWA_INSERT_PADDING(0x04); - xpointer m_pMember; - }; -} diff --git a/UnleashedRecomp/api/SWA/Sound/SoundBGMActSonic.h b/UnleashedRecomp/api/SWA/Sound/SoundBGMActSonic.h deleted file mode 100644 index 5f3371ac..00000000 --- a/UnleashedRecomp/api/SWA/Sound/SoundBGMActSonic.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CSoundBGMActSonic : public CSoundBGMBase - { - public: - class CMember - { - public: - SWA_INSERT_PADDING(0x58); - be m_Volume1; - be m_Volume2; - }; - - xpointer m_pMember; - }; -} diff --git a/UnleashedRecomp/api/SWA/Sound/SoundBGMBase.h b/UnleashedRecomp/api/SWA/Sound/SoundBGMBase.h deleted file mode 100644 index 3f8a7c2f..00000000 --- a/UnleashedRecomp/api/SWA/Sound/SoundBGMBase.h +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CSoundBGMBase : Hedgehog::Universe::CMessageActor - { - public: - SWA_INSERT_PADDING(0x04); // vftable ptr - SWA_INSERT_PADDING(0x04); - xpointer m_pGameDocument; - bool m_Unk; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/Application.h b/UnleashedRecomp/api/SWA/System/Application.h deleted file mode 100644 index 5efd399a..00000000 --- a/UnleashedRecomp/api/SWA/System/Application.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CApplication : public Hedgehog::Base::CObject - { - public: - class CMember - { - public: - xpointer m_pApplicationDocument; - }; - - xpointer m_pVftable; - xpointer m_pMember; - SWA_INSERT_PADDING(0x18); - }; -} diff --git a/UnleashedRecomp/api/SWA/System/ApplicationD3D9.h b/UnleashedRecomp/api/SWA/System/ApplicationD3D9.h deleted file mode 100644 index ef88f297..00000000 --- a/UnleashedRecomp/api/SWA/System/ApplicationD3D9.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CApplicationD3D9 : public CApplication {}; -} diff --git a/UnleashedRecomp/api/SWA/System/ApplicationDocument.h b/UnleashedRecomp/api/SWA/System/ApplicationDocument.h deleted file mode 100644 index 1e6ab27f..00000000 --- a/UnleashedRecomp/api/SWA/System/ApplicationDocument.h +++ /dev/null @@ -1,132 +0,0 @@ -#pragma once - -#include -#include -#include -#include - -namespace Hedgehog::Base -{ - class CCriticalSection; -} - -namespace Hedgehog::Database -{ - class CDatabase; -} - -namespace Hedgehog::Mirage -{ - class CMatrixNode; - class CRenderScene; -} - -namespace Hedgehog::Universe -{ - class CParallelJobManagerD3D9; -} - -namespace SWA -{ - class CApplication; - class CDatabaseTree; - - enum ELanguage : uint32_t - { - eLanguage_English, - eLanguage_Japanese, - eLanguage_German, - eLanguage_French, - eLanguage_Italian, - eLanguage_Spanish - }; - - enum EVoiceLanguage : uint32_t - { - eVoiceLanguage_English, - eVoiceLanguage_Japanese - }; - - enum ERegion : uint32_t - { - eRegion_Japan, - eRegion_RestOfWorld - }; - - class CApplicationDocument : public Hedgehog::Base::CSynchronizedObject - { - public: - class CMember - { - public: - xpointer m_pApplication; - boost::shared_ptr m_spParallelJobManagerD3D9; - SWA_INSERT_PADDING(0x14); - boost::shared_ptr m_spGame; - SWA_INSERT_PADDING(0x14); - boost::shared_ptr m_spInspireDatabase; - SWA_INSERT_PADDING(0x30); - Hedgehog::Base::CSharedString m_Field74; - SWA_INSERT_PADDING(0x0C); - boost::shared_ptr m_spMatrixNodeRoot; - SWA_INSERT_PADDING(0x14); - CGammaController m_GammaController; - boost::shared_ptr m_spLoading; - SWA_INSERT_PADDING(0x14); - boost::shared_ptr m_spAchievementManager; - boost::shared_ptr m_spDatabaseTree; - Hedgehog::Base::CSharedString m_Field10C; - SWA_INSERT_PADDING(0x1C); - boost::shared_ptr m_spRenderScene; - SWA_INSERT_PADDING(0x04); - boost::shared_ptr m_spGameParameter; - SWA_INSERT_PADDING(0x0C); - boost::anonymous_shared_ptr m_spItemParamManager; - SWA_INSERT_PADDING(0x64); - boost::shared_ptr m_spCriticalSection; - SWA_INSERT_PADDING(0x14); - bool m_ShowDLCInfo; - SWA_INSERT_PADDING(0x08); - }; - - // TODO: Hedgehog::Base::TSynchronizedPtr - static CApplicationDocument* GetInstance(); - - xpointer m_pMember; - be m_Language; - be m_VoiceLanguage; - SWA_INSERT_PADDING(0x08); - be m_Region; - bool m_InspireVoices; - bool m_InspireSubtitles; - SWA_INSERT_PADDING(0x28); - }; - - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_pApplication, 0x00); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spParallelJobManagerD3D9, 0x04); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spGame, 0x20); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spInspireDatabase, 0x3C); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_Field74, 0x74); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spMatrixNodeRoot, 0x84); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_GammaController, 0xA0); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spLoading, 0xE0); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spAchievementManager, 0xFC); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spDatabaseTree, 0x104); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_Field10C, 0x10C); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spRenderScene, 0x12C); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spGameParameter, 0x138); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spItemParamManager, 0x14C); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_spCriticalSection, 0x1B8); - SWA_ASSERT_OFFSETOF(CApplicationDocument::CMember, m_ShowDLCInfo, 0x1D4); - SWA_ASSERT_SIZEOF(CApplicationDocument::CMember, 0x1E0); - - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_pMember, 0x04); - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_Language, 0x08); - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_VoiceLanguage, 0x0C); - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_Region, 0x18); - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_InspireVoices, 0x1C); - SWA_ASSERT_OFFSETOF(CApplicationDocument, m_InspireSubtitles, 0x1D); - SWA_ASSERT_SIZEOF(CApplicationDocument, 0x48); -} - -#include "ApplicationDocument.inl" diff --git a/UnleashedRecomp/api/SWA/System/ApplicationDocument.inl b/UnleashedRecomp/api/SWA/System/ApplicationDocument.inl deleted file mode 100644 index 4e1652de..00000000 --- a/UnleashedRecomp/api/SWA/System/ApplicationDocument.inl +++ /dev/null @@ -1,8 +0,0 @@ -namespace SWA -{ - // TODO: Hedgehog::Base::TSynchronizedPtr - inline CApplicationDocument* CApplicationDocument::GetInstance() - { - return *(xpointer*)MmGetHostAddress(0x833678A0); - } -} diff --git a/UnleashedRecomp/api/SWA/System/ApplicationXenon.h b/UnleashedRecomp/api/SWA/System/ApplicationXenon.h deleted file mode 100644 index ed5d6c1c..00000000 --- a/UnleashedRecomp/api/SWA/System/ApplicationXenon.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CApplicationXenon : public CApplicationD3D9 - { - public: - SWA_INSERT_PADDING(0x1B4); - }; -} diff --git a/UnleashedRecomp/api/SWA/System/Game.h b/UnleashedRecomp/api/SWA/System/Game.h deleted file mode 100644 index 9e0101ae..00000000 --- a/UnleashedRecomp/api/SWA/System/Game.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -namespace SWA -{ - class CGame // : Hedgehog::Universe::TStateMachine - { - public: - SWA_INSERT_PADDING(0xFC); - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameDocument.h b/UnleashedRecomp/api/SWA/System/GameDocument.h deleted file mode 100644 index d7013011..00000000 --- a/UnleashedRecomp/api/SWA/System/GameDocument.h +++ /dev/null @@ -1,73 +0,0 @@ -#pragma once - -namespace Hedgehog::Database -{ - class CDatabase; -} - -namespace SWA -{ - class CGameDocument : public Hedgehog::Base::CSynchronizedObject - { - public: - class CMember - { - public: - struct SScoreInfo - { - be SRank; - be ARank; - be BRank; - be CRank; - be DRank; - SWA_INSERT_PADDING(0x0C); - be PointMarkerRecordSpeed; - SWA_INSERT_PADDING(0x0C); - be PointMarkerCount; - be EnemyScore; - be TrickScore; - SWA_INSERT_PADDING(0x10); - }; - - SWA_INSERT_PADDING(0x1C); - boost::shared_ptr m_spDatabase; - SWA_INSERT_PADDING(0x88); - Hedgehog::Base::CSharedString m_StageName; - xpointer m_pSoundAdministrator; - SWA_INSERT_PADDING(0x48); - xpointer m_pGeneralWindow; - SWA_INSERT_PADDING(0xD8); - SScoreInfo m_ScoreInfo; - SWA_INSERT_PADDING(0x0C); - }; - - // TODO: Hedgehog::Base::TSynchronizedPtr - static CGameDocument* GetInstance(); - - xpointer m_pVftable; - xpointer m_pMember; - }; - - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, SRank, 0x00); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, ARank, 0x04); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, BRank, 0x08); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, CRank, 0x0C); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, DRank, 0x10); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, PointMarkerRecordSpeed, 0x20); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, PointMarkerCount, 0x30); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, EnemyScore, 0x34); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember::SScoreInfo, TrickScore, 0x38); - SWA_ASSERT_SIZEOF(CGameDocument::CMember::SScoreInfo, 0x4C); - - SWA_ASSERT_OFFSETOF(CGameDocument::CMember, m_spDatabase, 0x1C); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember, m_StageName, 0xAC); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember, m_pSoundAdministrator, 0xB0); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember, m_pGeneralWindow, 0xFC); - SWA_ASSERT_OFFSETOF(CGameDocument::CMember, m_ScoreInfo, 0x1D8); - SWA_ASSERT_SIZEOF(CGameDocument::CMember, 0x230); - - SWA_ASSERT_OFFSETOF(CGameDocument, m_pMember, 0x08); - SWA_ASSERT_SIZEOF(CGameDocument, 0x0C); -} - -#include "GameDocument.inl" diff --git a/UnleashedRecomp/api/SWA/System/GameDocument.inl b/UnleashedRecomp/api/SWA/System/GameDocument.inl deleted file mode 100644 index c973a5cd..00000000 --- a/UnleashedRecomp/api/SWA/System/GameDocument.inl +++ /dev/null @@ -1,8 +0,0 @@ -namespace SWA -{ - // TODO: Hedgehog::Base::TSynchronizedPtr - inline CGameDocument* CGameDocument::GetInstance() - { - return *(xpointer*)MmGetHostAddress(0x83367900); - } -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/GameMode.h b/UnleashedRecomp/api/SWA/System/GameMode/GameMode.h deleted file mode 100644 index 8c64abcf..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/GameMode.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CGameMode : public Hedgehog::Universe::CStateMachineBase::CStateBase - { - public: - SWA_INSERT_PADDING(0x08); - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStage.h b/UnleashedRecomp/api/SWA/System/GameMode/GameModeStage.h deleted file mode 100644 index eeba70c5..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStage.h +++ /dev/null @@ -1,13 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CGameModeStage : public CGameMode - { - public: - xpointer m_pVftable; - SWA_INSERT_PADDING(0x1B4); - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageMovie.h b/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageMovie.h deleted file mode 100644 index e1a95df4..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageMovie.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CGameModeStageMovie : public CGameModeStage - { - public: - class CRender : public Hedgehog::Mirage::CRenderable - { - public: - xpointer m_pThis; - }; - - xpointer m_pVftable; - SWA_INSERT_PADDING(0x224); - xpointer m_pRender; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageTitle.h b/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageTitle.h deleted file mode 100644 index b2b6f845..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/GameModeStageTitle.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CGameModeStageTitle : public CGameModeStage - { - public: - SWA_INSERT_PADDING(0x0E); - bool m_IsPlayingAdvertiseMovie; - be m_AdvertiseMovieWaitTime; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleMenu.h b/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleMenu.h deleted file mode 100644 index bb195cea..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleMenu.h +++ /dev/null @@ -1,39 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CTitleMenu : public CMenuWindowBase - { - public: - SWA_INSERT_PADDING(0x28); - be m_Field38; - bool m_Field3C; // Seems to be related to exit transition. - SWA_INSERT_PADDING(0x04); - be m_CursorIndex; - SWA_INSERT_PADDING(0x0C); - bool m_Field54; // Seems to be related to exit transition. - SWA_INSERT_PADDING(0x0B); - be m_Field60; - SWA_INSERT_PADDING(0x34); - bool m_Field98; - bool m_IsDeleteCheckMessageOpen; - bool m_Field9A; // Seems to be related to cursor selection. - SWA_INSERT_PADDING(0x04); - bool m_Field9F; - SWA_INSERT_PADDING(0x02); - bool m_IsDLCInfoMessageOpen; - }; - - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field38, 0x38); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field3C, 0x3C); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_CursorIndex, 0x44); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field54, 0x54); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field60, 0x60); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field98, 0x98); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_IsDeleteCheckMessageOpen, 0x99); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field9A, 0x9A); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_Field9F, 0x9F); - SWA_ASSERT_OFFSETOF(CTitleMenu, m_IsDLCInfoMessageOpen, 0xA2); -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateBase.h b/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateBase.h deleted file mode 100644 index b14bcebd..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateBase.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CTitleStateBase : public Hedgehog::Universe::CStateMachineBase::CStateBase {}; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateIntro.h b/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateIntro.h deleted file mode 100644 index 618a0783..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateIntro.h +++ /dev/null @@ -1,8 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CTitleStateIntro : public CTitleStateBase {}; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateMenu.h b/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateMenu.h deleted file mode 100644 index b79a49e9..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateMenu.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CTitleStateMenu : public CTitleStateBase - { - public: - class CTitleStateMenuContext - { - public: - SWA_INSERT_PADDING(0x1E8); - xpointer m_pTitleMenu; - }; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateWorldMap.h b/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateWorldMap.h deleted file mode 100644 index 4934d740..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/Title/TitleStateWorldMap.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CTitleStateWorldMap : public CTitleStateBase - { - public: - SWA_INSERT_PADDING(0x08); - xpointer m_pWorldMapCursor; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCamera.h b/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCamera.h deleted file mode 100644 index 77c1ab3b..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCamera.h +++ /dev/null @@ -1,26 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CWorldMapCamera : public CCameraController - { - public: - be m_Pitch; - be m_Yaw; - be m_Distance; - be m_RotationSpeed; - SWA_INSERT_PADDING(0x08); - bool m_CanMove; - SWA_INSERT_PADDING(0x34); - be m_TiltToEarthTransitionSpeed; - }; - - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_Pitch, 0xD0); - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_Yaw, 0xD4); - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_Distance, 0xD8); - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_RotationSpeed, 0xDC); - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_CanMove, 0xE8); - SWA_ASSERT_OFFSETOF(CWorldMapCamera, m_TiltToEarthTransitionSpeed, 0x120); -} diff --git a/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCursor.h b/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCursor.h deleted file mode 100644 index 03ceb730..00000000 --- a/UnleashedRecomp/api/SWA/System/GameMode/WorldMap/WorldMapCursor.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CWorldMapCursor : public CMenuWindowBase - { - public: - SWA_INSERT_PADDING(0x24); - be m_LeftStickVertical; - be m_LeftStickHorizontal; - bool m_IsCursorMoving; - SWA_INSERT_PADDING(0x07); - be m_CursorY; - be m_CursorX; - }; - - SWA_ASSERT_OFFSETOF(CWorldMapCursor, m_LeftStickVertical, 0x34); - SWA_ASSERT_OFFSETOF(CWorldMapCursor, m_LeftStickHorizontal, 0x38); - SWA_ASSERT_OFFSETOF(CWorldMapCursor, m_IsCursorMoving, 0x3C); - SWA_ASSERT_OFFSETOF(CWorldMapCursor, m_CursorY, 0x44); - SWA_ASSERT_OFFSETOF(CWorldMapCursor, m_CursorX, 0x48); -} diff --git a/UnleashedRecomp/api/SWA/System/GameObject.h b/UnleashedRecomp/api/SWA/System/GameObject.h deleted file mode 100644 index dd4f7fd1..00000000 --- a/UnleashedRecomp/api/SWA/System/GameObject.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Base/Thread/hhSynchronizedPtr.h" -#include "Hedgehog/Universe/Engine/hhMessageActor.h" -#include "Hedgehog/Universe/Engine/hhUpdateUnit.h" - -namespace SWA -{ - class CGameDocument; - class CWorld; - - class CGameObject : public Hedgehog::Universe::CUpdateUnit, public Hedgehog::Universe::CMessageActor - { - public: - class CMember - { - public: - Hedgehog::Base::TSynchronizedPtr m_pGameDocument; - Hedgehog::Base::TSynchronizedPtr m_pWorld; - SWA_INSERT_PADDING(0x70); - }; - - xpointer m_pVftable; - xpointer m_pMember; - }; -} diff --git a/UnleashedRecomp/api/SWA/System/GameParameter.h b/UnleashedRecomp/api/SWA/System/GameParameter.h deleted file mode 100644 index da6b3735..00000000 --- a/UnleashedRecomp/api/SWA/System/GameParameter.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CGameParameter // : public Hedgehog::Universe::CMessageActor - { - public: - struct SSaveData - { - SWA_INSERT_PADDING(0x8600); - be DLCFlags[8]; - SWA_INSERT_PADDING(0x15C); - }; - - struct SStageParameter; - - SWA_INSERT_PADDING(0x94); - xpointer m_pSaveData; - xpointer m_pStageParameter; - }; - - SWA_ASSERT_OFFSETOF(CGameParameter::SSaveData, DLCFlags, 0x8600); -} diff --git a/UnleashedRecomp/api/SWA/System/GammaController.h b/UnleashedRecomp/api/SWA/System/GammaController.h deleted file mode 100644 index d695acfa..00000000 --- a/UnleashedRecomp/api/SWA/System/GammaController.h +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include -#include - -namespace SWA -{ - class CGammaController : public Hedgehog::Base::CObject - { - public: - SWA_INSERT_PADDING(0x10); - uint8_t m_Field10; - SWA_INSERT_PADDING(0x0F); - Hedgehog::Math::CVector4 m_Gamma; - Hedgehog::Math::CVector4 m_Field30; - }; - - SWA_ASSERT_OFFSETOF(CGammaController, m_Field10, 0x10); - SWA_ASSERT_OFFSETOF(CGammaController, m_Gamma, 0x20); - SWA_ASSERT_OFFSETOF(CGammaController, m_Field30, 0x30); - SWA_ASSERT_SIZEOF(CGammaController, 0x40); -} diff --git a/UnleashedRecomp/api/SWA/System/InputState.h b/UnleashedRecomp/api/SWA/System/InputState.h deleted file mode 100644 index b42c67eb..00000000 --- a/UnleashedRecomp/api/SWA/System/InputState.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "PadState.h" - -namespace SWA -{ - class CInputState : public Hedgehog::Base::CSynchronizedObject - { - public: - // TODO: Hedgehog::Base::TSynchronizedPtr - static CInputState* GetInstance(); - - SPadState m_PadStates[8]; - be m_CurrentPadStateIndex; - - const SPadState& GetPadState() const; - }; -} - -#include "InputState.inl" diff --git a/UnleashedRecomp/api/SWA/System/InputState.inl b/UnleashedRecomp/api/SWA/System/InputState.inl deleted file mode 100644 index 7b961c4d..00000000 --- a/UnleashedRecomp/api/SWA/System/InputState.inl +++ /dev/null @@ -1,13 +0,0 @@ -namespace SWA -{ - // TODO: Hedgehog::Base::TSynchronizedPtr - inline CInputState* CInputState::GetInstance() - { - return *(xpointer*)MmGetHostAddress(0x83361F5C); - } - - inline const SPadState& CInputState::GetPadState() const - { - return m_PadStates[m_CurrentPadStateIndex]; - } -} diff --git a/UnleashedRecomp/api/SWA/System/MatrixNodeTransform.h b/UnleashedRecomp/api/SWA/System/MatrixNodeTransform.h deleted file mode 100644 index 887c1617..00000000 --- a/UnleashedRecomp/api/SWA/System/MatrixNodeTransform.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include - -namespace SWA -{ - class CMatrixNodeTransform : public Hedgehog::Mirage::CMatrixNode - { - public: - Hedgehog::Mirage::CTransform m_Transform; - Hedgehog::Math::CMatrix m_WorldMatrix; - }; - - SWA_ASSERT_OFFSETOF(CMatrixNodeTransform, m_Transform, 0x60); - SWA_ASSERT_OFFSETOF(CMatrixNodeTransform, m_WorldMatrix, 0xC0); - SWA_ASSERT_SIZEOF(CMatrixNodeTransform, 0x100); -} diff --git a/UnleashedRecomp/api/SWA/System/PadState.h b/UnleashedRecomp/api/SWA/System/PadState.h deleted file mode 100644 index a27df47d..00000000 --- a/UnleashedRecomp/api/SWA/System/PadState.h +++ /dev/null @@ -1,73 +0,0 @@ -#pragma once - -#include "SWA.inl" - -namespace SWA -{ - enum EKeyState : uint32_t - { - eKeyState_None = 0x0, - - eKeyState_A = 0x1, - eKeyState_B = 0x2, - eKeyState_X = 0x8, - eKeyState_Y = 0x10, - - eKeyState_DpadUp = 0x40, - eKeyState_DpadDown = 0x80, - eKeyState_DpadLeft = 0x100, - eKeyState_DpadRight = 0x200, - - eKeyState_Start = 0x400, - eKeyState_Select = 0x800, - - eKeyState_LeftBumper = 0x1000, - eKeyState_RightBumper = 0x2000, - - eKeyState_LeftTrigger = 0x4000, - eKeyState_RightTrigger = 0x8000, - - eKeyState_LeftStick = 0x10000, - eKeyState_RightStick = 0x20000, - - eKeyState_LeftStickUp = 0x40000, - eKeyState_LeftStickDown = 0x80000, - eKeyState_LeftStickLeft = 0x100000, - eKeyState_LeftStickRight = 0x200000, - - eKeyState_RightStickUp = 0x400000, - eKeyState_RightStickDown = 0x800000, - eKeyState_RightStickLeft = 0x1000000, - eKeyState_RightStickRight = 0x2000000 - }; - - struct SPadState - { - be DownState; - be UpState; - be TappedState; - be ReleasedState; - - be LeftStickHorizontal; - be LeftStickVertical; - - SWA_INSERT_PADDING(0x04); - - be RightStickHorizontal; - be RightStickVertical; - - SWA_INSERT_PADDING(0x04); - - be LeftTrigger; - be RightTrigger; - - SWA_INSERT_PADDING(0x08); - - bool IsDown(const EKeyState in_Keys) const; - bool IsUp(const EKeyState in_Keys) const; - bool IsTapped(const EKeyState in_Keys) const; - bool IsReleased(const EKeyState in_Keys) const; - }; -} - -#include "PadState.inl" diff --git a/UnleashedRecomp/api/SWA/System/PadState.inl b/UnleashedRecomp/api/SWA/System/PadState.inl deleted file mode 100644 index 483bcd13..00000000 --- a/UnleashedRecomp/api/SWA/System/PadState.inl +++ /dev/null @@ -1,22 +0,0 @@ -namespace SWA -{ - inline bool SPadState::IsDown(const EKeyState in_Keys) const - { - return (DownState & in_Keys) == in_Keys; - } - - inline bool SPadState::IsUp(const EKeyState in_Keys) const - { - return (UpState & in_Keys) == in_Keys; - } - - inline bool SPadState::IsTapped(const EKeyState in_Keys) const - { - return (TappedState & in_Keys) == in_Keys; - } - - inline bool SPadState::IsReleased(const EKeyState in_Keys) const - { - return (ReleasedState & in_Keys) == in_Keys; - } -} \ No newline at end of file diff --git a/UnleashedRecomp/api/SWA/System/World.h b/UnleashedRecomp/api/SWA/System/World.h deleted file mode 100644 index aafbcd2f..00000000 --- a/UnleashedRecomp/api/SWA/System/World.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include "SWA.inl" -#include "Hedgehog/Base/Thread/hhSynchronizedObject.h" -#include "Hedgehog/Universe/Engine/hhMessageActor.h" - -namespace SWA -{ - class CWorld : public Hedgehog::Base::CSynchronizedObject, public Hedgehog::Universe::CMessageActor - { - public: - class CMember - { - public: - SWA_INSERT_PADDING(0x80); - }; - - xpointer m_pMember; - }; -} diff --git a/UnleashedRecomp/api/boost/smart_ptr/make_shared_object.h b/UnleashedRecomp/api/boost/smart_ptr/make_shared_object.h deleted file mode 100644 index 9bba6b4b..00000000 --- a/UnleashedRecomp/api/boost/smart_ptr/make_shared_object.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include "boost/smart_ptr/shared_ptr.h" - -namespace boost -{ - template - shared_ptr make_shared(TArgs&&... args) - { - return shared_ptr(new T(std::forward(args)...)); - } -} diff --git a/UnleashedRecomp/api/boost/smart_ptr/shared_ptr.h b/UnleashedRecomp/api/boost/smart_ptr/shared_ptr.h deleted file mode 100644 index 4ff5625b..00000000 --- a/UnleashedRecomp/api/boost/smart_ptr/shared_ptr.h +++ /dev/null @@ -1,186 +0,0 @@ -#pragma once - -#include -#include - -namespace boost -{ - namespace detail - { - class sp_counted_base - { - protected: - struct vftable_t - { - be destructor; - be dispose; - be destroy; - be get_deleter; - }; - - xpointer vftable_; - be use_count_; - be weak_count_; - - public: - // TODO - sp_counted_base() = delete; - - void add_ref() - { - std::atomic_ref useCount(use_count_.value); - - be original, incremented; - do - { - original = use_count_; - incremented = original + 1; - } while (!useCount.compare_exchange_weak(original.value, incremented.value)); - } - - void release() - { - std::atomic_ref useCount(use_count_.value); - - be original, decremented; - do - { - original = use_count_; - decremented = original - 1; - } while (!useCount.compare_exchange_weak(original.value, decremented.value)); - - if (decremented == 0) - { - GuestToHostFunction(vftable_->dispose, this); - weak_release(); - } - } - - void weak_release() - { - std::atomic_ref weakCount(weak_count_.value); - - be original, decremented; - do - { - original = weak_count_; - decremented = original - 1; - } while (!weakCount.compare_exchange_weak(original.value, decremented.value)); - - if (decremented == 0) - { - GuestToHostFunction(vftable_->destroy, this); - } - } - - uint32_t use_count() const - { - return ByteSwap(static_cast(use_count_.value)); - } - - bool unique() const - { - return use_count() == 1; - } - }; - - template< class T > struct sp_dereference - { - typedef T& type; - }; - - template<> struct sp_dereference< void > - { - typedef void type; - }; - } - - template - class shared_ptr - { - private: - xpointer px; - xpointer pn; - - void add_ref() - { - if (pn) - pn->add_ref(); - } - - void release() - { - if (pn) - pn->release(); - } - - public: - shared_ptr() : px(), pn() {} - - // TODO - explicit shared_ptr(T* p) = delete; - - shared_ptr(const shared_ptr& other) : px(other.px), pn(other.pn) - { - add_ref(); - } - - shared_ptr(shared_ptr&& other) noexcept : px(std::exchange(other.px, nullptr)), - pn(std::exchange(other.pn, nullptr)) {} - - ~shared_ptr() - { - release(); - } - - shared_ptr& operator=(const shared_ptr& other) - { - if (this != &other) - { - release(); - - px = other.px; - pn = other.pn; - - add_ref(); - } - - return *this; - } - - shared_ptr& operator=(shared_ptr&& other) noexcept - { - if (this != &other) - { - release(); - - px = std::exchange(other.px, nullptr); - pn = std::exchange(other.pn, nullptr); - } - - return *this; - } - - shared_ptr& operator=(std::nullptr_t) - { - release(); - - px = NULL; - pn = NULL; - - return *this; - } - - T* get() const { return px; } - - detail::sp_dereference operator*() const { assert(px); return *px; } - T* operator->() const { assert(px); return px; } - - explicit operator bool() const { return px != nullptr; } - - size_t use_count() const { return pn ? pn->use_count() : 0; } - bool unique() const { return !pn || pn->unique(); } - }; - - using anonymous_shared_ptr = shared_ptr; -}