61 lines
1.8 KiB
C++
61 lines
1.8 KiB
C++
#ifndef __TEMP_USER_H__
|
|
#define __TEMP_USER_H__
|
|
|
|
#pragma once
|
|
|
|
#include "UserSession.h"
|
|
|
|
struct MSG_CG_CONNECTION_ENTERSERVER_SYN;
|
|
|
|
class TempUser : public UserSession
|
|
{
|
|
public:
|
|
TempUser();
|
|
virtual ~TempUser();
|
|
|
|
virtual BOOL SendPacket(MSG_BASE* pMsg, WORD wSize, const BOOLEAN bUsePacking = TRUE);
|
|
protected:
|
|
virtual VOID Init();
|
|
virtual VOID Release();
|
|
public:
|
|
virtual eUSER_TYPE GetUserType() const { return UT_TEMP_USER; };
|
|
inline ITimeout& NoActionTimeout() { return m_dwNoActionTimeout; }
|
|
// (WAVERIX) (090526) (CHANGES)
|
|
static DWORD GetConnectionTimeout();
|
|
#ifdef __CN_OO0510__FATIGUE_MATCHING_UPDATE
|
|
VOID SetAge(BYTE byAge) { m_byAge = byAge; }
|
|
BYTE GetAge() { return m_byAge; }
|
|
VOID SetRealNameAuth(BYTE byRealNameAuth) { m_byRealNameAuth = byRealNameAuth; }
|
|
inline BYTE GetRealNameAuth() { return m_byRealNameAuth; }
|
|
#endif //
|
|
|
|
private:
|
|
virtual VOID OnAccept(DWORD dwNetworkIndex);
|
|
virtual VOID OnDisconnect();
|
|
virtual VOID OnRecv(BYTE* pMsg, WORD wSize);
|
|
//BOOL _IsAuthenticatedUser(UserSession* OUT pNewUser, MSG_CG_CONNECTION_ENTERSERVER_SYN* pMsg);
|
|
BOOL Authentication(MSG_CG_CONNECTION_ENTERSERVER_SYN * pMsg);
|
|
void SendEnterServerNak(BYTE byErrorCode);
|
|
|
|
enum {
|
|
IDLING, CHECKING, PASSING
|
|
};
|
|
|
|
BOOL ProcessCHECKING(BYTE* pMsg, WORD wSize);
|
|
BOOL ProcessPASSING(BYTE* pMsg, WORD wSize);
|
|
|
|
//----------------------------------------------------------------------------------------------
|
|
// (Fields)
|
|
//BOOL m_bFirst;
|
|
DWORD m_dwChangeMod;
|
|
User* m_pNewUser;
|
|
ITimeout m_dwNoActionTimeout;
|
|
CHAR m_szID[ID_MAX_LEN+1];
|
|
#ifdef __CN_OO0510__FATIGUE_MATCHING_UPDATE
|
|
BYTE m_byAge;
|
|
BYTE m_byRealNameAuth;
|
|
#endif //__CN_OO0510__FATIGUE_MATCHING_UPDATE
|
|
__DISABLE_COPY(TempUser);
|
|
};
|
|
|
|
#endif // __TEMP_USER_H__
|