diff --git a/config/RMCP01/module/symbols.txt b/config/RMCP01/module/symbols.txt index b98dc2e9..f3fbb269 100644 --- a/config/RMCP01/module/symbols.txt +++ b/config/RMCP01/module/symbols.txt @@ -7199,16 +7199,16 @@ setToMMSuspensionUnk3__Q23Net10NetManagerFv = .text:0x00146554; // type:function setDisconnectInfo__Q23Net10NetManagerFQ23Net14DisconnectTypel = .text:0x0014656C; // type:function size:0x94 getDisconnectInfo__Q23Net10NetManagerFv = .text:0x00146600; // type:function size:0x7C resetDisconnectInfo__Q23Net10NetManagerFv = .text:0x0014667C; // type:function size:0x5C -getTimeDiff__Q23Net10NetManagerFv = .text:0x001466D8; // type:function size:0x60 +matchMakingElapsedSeconds__Q23Net10NetManagerFv = .text:0x001466D8; // type:function size:0x60 fn_1_146738 = .text:0x00146738; // type:function size:0x58 fn_1_146790 = .text:0x00146790; // type:function size:0x28 fn_1_1467B8 = .text:0x001467B8; // type:function size:0x134 fn_1_1468EC = .text:0x001468EC; // type:function size:0xCC fn_1_1469B8 = .text:0x001469B8; // type:function size:0x30 -isConnectionStateIdleOrInMM__Q23Net10NetManagerFv = .text:0x001469E8; // type:function size:0xA8 -isTaskExist__Q23Net10NetManagerFv = .text:0x00146A90; // type:function size:0x2C -isConnectionStateIdle__Q23Net10NetManagerFv = .text:0x00146ABC; // type:function size:0x90 -hasFoundMatch__Q23Net10NetManagerFv = .text:0x00146B4C; // type:function size:0x40 +isConnectionStateIdleOrInMM__Q23Net10NetManagerCFv = .text:0x001469E8; // type:function size:0xA8 +isTaskThreadIdle__Q23Net10NetManagerFv = .text:0x00146A90; // type:function size:0x2C +isConnectionStateIdle__Q23Net10NetManagerCFv = .text:0x00146ABC; // type:function size:0x90 +hasFoundMatch__Q23Net10NetManagerCFv = .text:0x00146B4C; // type:function size:0x40 fn_1_146B8C = .text:0x00146B8C; // type:function size:0xB8 setConnectionStateIdle__Q23Net10NetManagerFv = .text:0x00146C44; // type:function size:0xC RKNetController_construct = .text:0x00146C50; // type:function size:0x3D8 scope:global align:4 diff --git a/src/net/NetManager.cpp b/src/net/NetManager.cpp index 77e66c93..d985f2b9 100644 --- a/src/net/NetManager.cpp +++ b/src/net/NetManager.cpp @@ -155,7 +155,7 @@ void NetManager::resetDisconnectInfo() { OSUnlockMutex(&m_mutex); } -s32 NetManager::getTimeDiff() { +s32 NetManager::matchMakingElapsedSeconds() { s32 time = m_matchMakingInfos[m_currMMInfo].m_MMStartTime; // has to do u64 comparison @@ -164,10 +164,10 @@ s32 NetManager::getTimeDiff() { } OSTime currTime = OSGetTime(); - return ((s32)currTime - time) / OS_TIMER_CLOCK; + return OSTicksToSeconds((s32)currTime - time); } -bool NetManager::isConnectionStateIdleOrInMM() { +bool NetManager::isConnectionStateIdleOrInMM() const { bool idleOrMM = false; switch (getConnectionState()) { @@ -180,16 +180,13 @@ bool NetManager::isConnectionStateIdleOrInMM() { return idleOrMM; } -bool NetManager::isTaskExist() { - // checks if we've requested mainNetworkLoop - return m_taskThread->isTaskExist() ? false : true; -} +bool NetManager::isTaskThreadIdle() { return !m_taskThread->isTaskExist(); } -bool NetManager::isConnectionStateIdle() { +bool NetManager::isConnectionStateIdle() const { return getConnectionState() == CONNECTION_STATE_IDLE; } -bool NetManager::hasFoundMatch() { +bool NetManager::hasFoundMatch() const { bool inMatch = false; bool isMyAidInMatch = (1 << m_matchMakingInfos[m_currMMInfo].m_myAid) & @@ -211,7 +208,7 @@ void NetManager::setConnectionState(ConnectionState connState) { m_connectionState = connState; } -NetManager::ConnectionState NetManager::getConnectionState() { +NetManager::ConnectionState NetManager::getConnectionState() const { s32 code; u32 type; DWC_GetLastErrorEx(&code, &type); diff --git a/src/net/NetManager.hpp b/src/net/NetManager.hpp index 9641e6c9..fdc8039e 100644 --- a/src/net/NetManager.hpp +++ b/src/net/NetManager.hpp @@ -76,23 +76,23 @@ class NetManager { void resetDisconnectInfo(); - s32 getTimeDiff(); + s32 matchMakingElapsedSeconds(); void initMMInfos(); - bool isConnectionStateIdleOrInMM(); + bool isConnectionStateIdleOrInMM() const; - bool isTaskExist(); + bool isTaskThreadIdle(); - bool isConnectionStateIdle(); + bool isConnectionStateIdle() const; - bool hasFoundMatch(); + bool hasFoundMatch() const; void setConnectionStateIdle(); void setConnectionState(ConnectionState connState); - inline ConnectionState getConnectionState(); + inline ConnectionState getConnectionState() const; void* alloc(u32 size, s32 alignment); diff --git a/src/net/packets/RACEHEADER1.hpp b/src/net/packets/RACEHEADER1.hpp index 5d6b184b..f3584e15 100644 --- a/src/net/packets/RACEHEADER1.hpp +++ b/src/net/packets/RACEHEADER1.hpp @@ -11,14 +11,13 @@ static_assert(sizeof(RACEHEADER1Packet) == 0x28); class RACEHEADER1Handler { public: - static RACEHEADER1Handler *getInstance() { - return spInstance; - } - void setPrepared(); void reset(); + static RACEHEADER1Handler *getInstance() { + return spInstance; + } private: bool m_prepared; u8 _004[0x260 - 0x001]; diff --git a/src/net/packets/ROOM.hpp b/src/net/packets/ROOM.hpp index bbc48467..8cf770ac 100644 --- a/src/net/packets/ROOM.hpp +++ b/src/net/packets/ROOM.hpp @@ -35,7 +35,6 @@ class ROOMHandler { static ROOMHandler *getInstance() { return spInstance; } - private: u8 _00[0x80 - 0x00]; diff --git a/src/net/packets/USER.hpp b/src/net/packets/USER.hpp index a9d092be..acfdc00b 100644 --- a/src/net/packets/USER.hpp +++ b/src/net/packets/USER.hpp @@ -11,14 +11,12 @@ static_assert(sizeof(USERPacket) == 0xc0); class USERHandler { public: + void update(); + static USERHandler *getInstance() { return spInstance; } - - void update(); - private: - u8 _000[0x9f0 - 0x000]; static USERHandler *spInstance;