Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
127 lines
9.3 KiB
C++
127 lines
9.3 KiB
C++
#ifndef _PACKET_MANAGER_H_
|
|
#define _PACKET_MANAGER_H_
|
|
|
|
#include < Item/Item.h >
|
|
#include < Pattern/Singleton.h >
|
|
#include < Network/Protocol/RYL_AdminMgrProtocol.h >
|
|
|
|
#include < Stream/Buffer/BufferFactory.h >
|
|
|
|
class CSingleSession;
|
|
class CBuffer;
|
|
|
|
class CPacketMgr
|
|
{
|
|
public:
|
|
|
|
static CPacketMgr* GetInstance();
|
|
|
|
CPacketMgr();
|
|
void SetSession(CSingleSession* pSession);
|
|
|
|
// 툴 운영자 관련-----------------------------------------------------------------------------------------
|
|
bool SendLogin(CString Account, CString Password);
|
|
bool RequestAdminList();
|
|
bool SendNewAdmin(CString szAccount, CString szPassword, CString szName, CString szLevel, CString szIP);
|
|
bool SendUpdateLevel(CString szAccount, CString szLevel);
|
|
bool SendUpdateIP(CString szAccount, CString szIP);
|
|
bool SendUpdatePassword(CString szAccount, CString szPassword);
|
|
bool SendDeleteAdmin(CString szAccount);
|
|
bool SendLogList(TCHAR* szAccount);
|
|
bool SendExitLog(CString szExitLog);
|
|
bool SendDetailLog(unsigned int LogID);
|
|
bool SendBeforeAfter(unsigned int DetailLogID);
|
|
|
|
|
|
// 유저 및 캐릭터 관련------------------------------------------------------------------------------------
|
|
bool SendSearchID(unsigned char sSearchType, unsigned long dwServerGroup, unsigned long SearchID, unsigned int nOldServerID = 100);
|
|
bool SendSearchName(unsigned char sSearchType, unsigned long dwServerGroup, CString SearchName, unsigned int nOldServerID = 100);
|
|
bool SendUpdateStatus(unsigned long dwServerGroup, unsigned long dwCID, unsigned long dwUID, unsigned long dwRequestKey, PktAdminMgr::CHAR_STATUS_ST stStatus);
|
|
bool SendInvenGold(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequestKey, unsigned long dwGold);
|
|
bool SendStoreGoldUpdate(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequestKey, unsigned long dwGold);
|
|
bool SendPktSkillEdit(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequest, unsigned short SkillID, char cLevel, char cLockCount, unsigned char cType);
|
|
bool SendPktBlockUser(unsigned char cServerGroup, unsigned long dwUID, TCHAR* szCharacterName, unsigned char cBlockTarget, unsigned char cBlockTerm, TCHAR* szFinishDate, TCHAR* szDescription);
|
|
bool SendDelBlockUser(unsigned char cServerGroup, unsigned long nidx, TCHAR* szCharName);
|
|
bool SendPktSearchBlock(unsigned long dwServerGroup);
|
|
bool SendPktDepositPwd(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequestKey, TCHAR* szPasswd);
|
|
bool SendPktCheckName(unsigned long dwServerGroup, unsigned long dwRequestKey, TCHAR* szName);
|
|
bool SendPktChangeName(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequestKey, TCHAR* szName);
|
|
bool SendDelCharHistory(unsigned char cType, unsigned long dwServerGroup, unsigned long dwValue);
|
|
bool SendPktCharRestore(unsigned long dwUID, unsigned long dwCID, unsigned char cNewServerGroupID, unsigned char cOldServerGroupID, unsigned long dwServerGroup);
|
|
bool SendPktDelCharacter(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned long dwRequestKey);
|
|
bool SendCreateItem(unsigned long dwServerGroup, unsigned long dwCID, unsigned long dwUID, unsigned long dwRequestKey, PktAdminMgr::CreateItemInfo stCreateItemInfo);
|
|
bool SendUpdateItem(unsigned long dwServerGroup, unsigned long dwCID, unsigned long dwUID, unsigned long dwRequestKey, unsigned __int64 dwItemSerial, unsigned short dwItemProtoType, PktAdminMgr::CreateItemInfo stUpdateItemInfo);
|
|
bool SendRemoveItem(unsigned long dwServerGroup, unsigned long dwCID, unsigned long dwUID, unsigned long dwRequestKey, unsigned __int64 dwItemSerial, unsigned short dwItemProtoType, Item::ItemPos stItemPos);
|
|
bool SendItemContainerReset(unsigned long dwServerGroup, unsigned long dwUID, unsigned long dwCID, unsigned long dwRequest, unsigned char cTakePos);
|
|
bool SendPktChangePos(unsigned long dwServer, unsigned long dwRequest, unsigned long dwUID, unsigned long dwCID, char cZone, float fPosX, float fPosY, float fPosZ);
|
|
bool SendPktUserNation(unsigned long dwRequestKey, unsigned long dwServerGroup, unsigned long dwUID, unsigned long dwCID);
|
|
bool SendPktStoreTabEdit(unsigned long dwRequestKey, unsigned long dwServerGroup, unsigned long dwCID, unsigned int nTabNum);
|
|
bool SendPktNameChangeCount(unsigned long dwServerGroup, unsigned long dwCID, unsigned char cNameChangeCount);
|
|
|
|
// 퀘스트 관련
|
|
bool SendCancelExecuteQuest(unsigned long dwRequestKey, unsigned long dwServerGroup, unsigned long dwCID, unsigned short wQuestID); // 수행중인 퀘스트 취소
|
|
bool SendDeleteHistoryQuest(unsigned long dwRequestKey, unsigned long dwServerGroup, unsigned long dwCID, unsigned short wQuestID); // 완료한 퀘스트 목록에서 제거
|
|
|
|
// 캐릭터 정보 얻기와 닫기
|
|
bool SendSelCharacter(TCHAR* CharName, unsigned long dwServerGroup, unsigned char cOldServerGroupID, unsigned long dwUID, unsigned long dwCID, unsigned long dwRequestKey);
|
|
bool SendCloseCharacter(unsigned long m_dwServerGroup, unsigned long m_dwCID, unsigned int dwDocKey);
|
|
// 캐릭터 정보 최후 저장
|
|
bool SendSetCharacter(unsigned long dwServerGroup, unsigned long dwCID, unsigned long dwUID, unsigned long dwRequestKey, unsigned char cOldServerGroupID = 0);
|
|
|
|
|
|
// 길드 관련----------------------------------------------------------------------------------------------
|
|
bool SendGuildSearch(unsigned char cSearchType, unsigned long dwServerGroup, TCHAR* szSearchValue);
|
|
bool SendRequestGuildMemberList(unsigned long dwGID, unsigned long dwServerGroup);
|
|
bool SendGuildRestoreDataList(bool bAllGroupChk, unsigned long dwServerGroup = 0);
|
|
bool SendPktGuildRight(unsigned long dwServerGroup, unsigned long dwGID);
|
|
bool SendPktGuildMemberEdit(unsigned long dwServerGroup, unsigned long dwGID, unsigned long dwCID, unsigned char cPosition, unsigned char cType);
|
|
|
|
// 요새 관련----------------------------------------------------------------------------------------------
|
|
bool SendFortSearch(unsigned char cSearchType, unsigned long dwServerGroup, unsigned long dwZoneGroup, TCHAR* szSearchValue);
|
|
bool SendMiningCamp(unsigned long dwServerGroup, unsigned long dwCampID);
|
|
bool SendShopCamp(unsigned long dwServerGroup, unsigned long dwCampID);
|
|
bool SendShopCampGold(unsigned long dwServerGroup, unsigned long dwCampID, unsigned long dwTempMoney);
|
|
bool SendShopCampTax(unsigned long dwServerGroup, unsigned long dwCampID, unsigned long dwTax);
|
|
|
|
// 공성 관련----------------------------------------------------------------------------------------------
|
|
bool SendCastleSearch(unsigned char cSearchType, unsigned long dwServerGroup, unsigned long dwZoneGroup, TCHAR* szSearchValue);
|
|
bool SendCastleCreature(unsigned long dwServerGroup, unsigned long dwCastleID);
|
|
|
|
// 운영창고-----------------------------------------------------------------------------------------------
|
|
bool SendPktAdminStoreInsert(unsigned char cServerGroup, TCHAR* szOwnerName, TCHAR* szItemName, char* ItemInfo);
|
|
bool SendPktAdminStoreDelete(unsigned long dwStoreUID);
|
|
bool SendPktGetAdminStoreItem(unsigned char cType, unsigned long dwStoreUID);
|
|
bool SendPktUpdateAdminStore();
|
|
|
|
// 서버 통합 관련-----------------------------------------------------------------------------------------
|
|
bool SendPktUnifiedCharInfo(unsigned char cPktType, unsigned long dwServerGroup, unsigned int nOldServerGroup, char* szSearchValue);
|
|
bool SendPktUnifiedGuildInfo(unsigned char cPktType, unsigned long dwServerGroup, unsigned int nOldServerGroup);
|
|
bool SendPktDetailCharInfo(unsigned long dwServerGroup, unsigned long dwCID);
|
|
|
|
// 기타---------------------------------------------------------------------------------------------------
|
|
bool SendPktSetZoneList();
|
|
bool SendForcedDis(unsigned long dwUID);
|
|
bool SendItemQtyControlData(unsigned char cType, unsigned char cServerGroup, unsigned long dwItemTypeID = 0, time_t tStartTime = 0, time_t tEndTime = 0, unsigned long dwItemQty = 0);
|
|
bool SendUserBillingLogRequest(unsigned char cSearchType, CString strSearchValue, COleDateTime tStartTime, COleDateTime tEndTime);
|
|
bool SendGameAdmin(unsigned char cPktType, unsigned long dwServerGroup, unsigned long dwUID = 0, unsigned int nAdminLV = 0, TCHAR* szStartIP = 0, TCHAR* szEndIP = 0);
|
|
bool SendConnectAllServerz(void);
|
|
bool SendRefrechConnectedServerList(void);
|
|
bool SendPktInterestedUser(unsigned char cPktType, TCHAR* szAccount = 0, TCHAR* szReason = 0);
|
|
bool SendPktConnectionChk(unsigned char cPktType, TCHAR* szAccount);
|
|
bool ReqConnectedUserList(void);
|
|
bool SendSearchDupItem(unsigned long dwServerGroup, bool bIsChk = false);
|
|
bool SendChkDupItem(unsigned long dwUID, unsigned long dwCID, unsigned long dwServerGroup, unsigned __int64 i64ItemSerial);
|
|
bool SendPktItemDistribute(const PktAdminMgr::CreateItemInfo& stCreateItemInfo, PktAdminMgr::DstUserInfo* lpDstUserInfo, unsigned char cDstUserInfoNum);
|
|
bool SendPktShiftToUID(unsigned char cPktType, const char* szAccount, unsigned long dwUID);
|
|
bool SendPktAmountOfGold(unsigned long dwServerGroup);
|
|
bool SendPktGMLogMsg(unsigned char cPktType, unsigned long dwServerGroup, unsigned long dwUID, unsigned long dwCID = 0, unsigned long dwLogID = 0, const char* szLogMsg = "");
|
|
bool SendSearchCharInfoTime(unsigned char sSearchType, unsigned long dwServerGroup, CString strSearchValue);
|
|
|
|
private:
|
|
CSingleSession* m_lpSession;
|
|
CDefaultBufferFactory m_DefaultBufferFactory;
|
|
|
|
bool StreamSend(CBuffer* pSendBuffer);
|
|
};
|
|
|
|
#endif |