diff --git a/src/object/client/ClntObjMgr.hpp b/src/object/client/ClntObjMgr.hpp new file mode 100644 index 0000000..781345e --- /dev/null +++ b/src/object/client/ClntObjMgr.hpp @@ -0,0 +1,16 @@ +#ifndef OBJECT_CLIENT_CLNT_OBJ_MGR_HPP +#define OBJECT_CLIENT_CLNT_OBJ_MGR_HPP + +#include + +class ClientConnection; + +class ClntObjMgr { + public: + // Member variables + uint64_t m_activePlayer = 0; + uint32_t m_mapID = 0; + ClientConnection* m_net = nullptr; +}; + +#endif diff --git a/src/object/client/ObjMgr.cpp b/src/object/client/ObjMgr.cpp index b577251..b7bb53c 100644 --- a/src/object/client/ObjMgr.cpp +++ b/src/object/client/ObjMgr.cpp @@ -1,6 +1,16 @@ #include "object/client/ObjMgr.hpp" +#include "object/client/ClntObjMgr.hpp" + +#if defined(WHOA_SYSTEM_WIN) +static thread_local ClntObjMgr* s_curMgr; +#else +static ClntObjMgr* s_curMgr; +#endif uint32_t ClntObjMgrGetMapID() { - // TODO - return -1; + if (!s_curMgr) { + return 0; + } + + return s_curMgr->m_mapID; } diff --git a/src/object/client/ObjMgr.hpp b/src/object/client/ObjMgr.hpp index 6970460..99a8ce5 100644 --- a/src/object/client/ObjMgr.hpp +++ b/src/object/client/ObjMgr.hpp @@ -1,5 +1,5 @@ -#ifndef OBJECT_CLIENT_CLIENT_OBJ_MGR_HPP -#define OBJECT_CLIENT_CLIENT_OBJ_MGR_HPP +#ifndef OBJECT_CLIENT_OBJ_MGR_HPP +#define OBJECT_CLIENT_OBJ_MGR_HPP #include