Files
Client/Server/AdminTool/AdminToolClient/Dispatch.h
LGram16 dd97ddec92 Restructure repository to include all source folders
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>
2025-11-29 20:17:20 +09:00

113 lines
5.4 KiB
C++

#ifndef _DISPATCH_H_
#define _DISPATCH_H_
#include <Network/Dispatch/AdminToolDispatch.h>
#include <Network/AgentServerParseData/Ryl_AgentServerParseData.h>
#include <CharacterDoc.h>
struct PktBase;
namespace PktAdminMgr
{
struct PktGetAdminStoreItemAck;
};
class CClientDispatch : public CClientMultiThreadDispatch
{
public:
CClientDispatch() { }
virtual CClientDispatch* Clone() { return new CClientDispatch; }
virtual void Destroy() { delete this; }
virtual void Disconnected() { }
private:
virtual bool DispatchPacket(PktBase* lpPktBase);
// Packet Process
bool PktResultAck (PktBase* lpPktBase);
bool PktAdminListAck (PktBase* lpPktBase);
bool PktLoginInfoAck (PktBase* lpPktBase);
bool PktDelAdminAck (PktBase* lpPktBase);
bool PktUpdateLevelAck (PktBase* lpPktBase);
bool PktUpdateIPAck (PktBase* lpPktBase);
bool PktLogListAck (PktBase* lpPktBase);
bool PktDetailLogAck (PktBase* lpPktBase);
bool PktGetExitLogAck (PktBase* lpPktBase);
bool PktBeforeAfterAck (PktBase* lpPktBase);
bool PktSearchResultAck (PktBase* lpPktBase);
bool PktAgentServerIndexAck (PktBase* lpPktBase); // 현재 연결되 있는 서버군 정보
bool PktSearchAck (PktBase* lpPktBase); // 검색창에서 검색한 정보
bool PktGetCharacterAck (PktBase* lpPktBase); // 검색한 캐릭터에 대한 정보
bool PktCloseCharacterAck (PktBase* lpPktBase); // 캐릭터 독점 모드가 완전히 해제되었을 때
bool PktCreateItemAck (PktBase* lpPktBase); // 아이템 만들기 성공
bool PktUpdateItemAck (PktBase* lpPktBase); // 아이템 업데이트 성공
bool PktRemoveItemAck (PktBase* lpPktBase); // 아이템 지우기 성공
bool PktSyncDeposit (PktBase* lpPktBase); // 디비의 창고 정보가 아닌 현재 운영서버에서 열려 있는 창고 정보를 가져온다
bool PktItemResetAck (PktBase* lpPktBase); // 아이템 리셋 결과
bool PktInvenGold (PktBase* lpPktBase);
bool PktSkillEditAck (PktBase* lpPktBase); // 스킬 정보 변경
bool PktSearchBlockAck (PktBase* lpPktBase); // 블럭리스트 검색
bool PktSetZoneList (PktBase* lpPktBase); // 관리자 존리스트 정보 셋
bool PktChangeNameAck (PktBase* lpPktBase); // 캐릭명 변경
bool PktDelCharListAck (PktBase* lpPktBase); // 삭제된 캐릭터 목록 보기
bool PktCharRestoreAck (PktBase* lpPktBase); // 캐릭터 복구 성공
bool PktAdminStoreInsertAck (PktBase* lpPktBase); // 운영창고 아이템 추가 성공
bool PktAdminStoreDeleteAck (PktBase* lpPktBase); // 운영창고 아이템 삭제 성공
bool PktGetAdminStoreItemAck (PktBase* lpPktBase); // 운영창고 아이템 정보 얻기 성공
bool PktCancelExecuteQuest (PktBase* lpPktBase); // 수행중인 퀘스트 취소
bool PktDeleteHistoryQuest (PktBase* lpPktBase); // 완료한 퀘스트 취소
bool PktUserNation (PktBase* lpPktBase); // 계정 국적 얻기
bool PktStoreTabEdit (PktBase* lpPktBase); // 창고 탭 수 수정
bool PktGuildSearchAck (PktBase* lpPktBase); // 길드 검색
bool PktRequestGuildMemberListAck (PktBase* lpPktBase); // 길드 멤버 리스트
bool PktGuildRestoreDataListAck (PktBase* lpPktBase); // 해체된 길드 데이터 리스트
bool PktGuildRight (PktBase* lpPktBase); // 길드내 권한 설정 정보
bool PktGuildMemberEdit (PktBase* lpPktBase); // 길드 멤버 권한 수정, 축출
bool PktFortSearchAck (PktBase* lpPktBase); // 요새 검색
bool PktMiningCampAck (PktBase* lpPktBase); // 채굴요새 정보 얻기
bool PktShopCampAck (PktBase* lpPktBase); // 상점요새 정보 얻기
bool PktCastleSearchAck (PktBase* lpPktBase); // 성 검색
bool PktCastleCreatureAck (PktBase* lpPktBase); // 성관련 개체 정보 얻기
bool PktItemQtyControlAck (PktBase* lpPktBase); // 아이템 수량 제어 상태
bool PktUserBillingLogAck (PktBase* lpPktBase); // 사용자 과금 내역
bool PktGameAdminAck (PktBase* lpPktBase); // 게임 운영자 관리 Ack
bool PktConnectAllServerzAck (PktBase* lpPktBase); // 현재 연결되어 있는 중계서버 인덱스 Ack
bool PktInterestedUserList (PktBase* lpPktBase); // 관심 유저 리스트
bool PktConnectionChk (PktBase* lpPktBase); // 접속 체크
bool PktConnectedUserList (PktBase* lpPktBase); // 접속중인 관심유저 계정명
bool PktDuplicatedItem (PktBase* lpPktBase); // 중복 아이템 관련
bool PktItemDistributeAck (PktBase* lpPktBase); // 아이템 일괄 지급 Ack
bool PktUnifiedCharInfo (PktBase* lpPktBase); // 통합 캐릭터 정보
bool PktUnifiedGuildInfo (PktBase* lpPktBase); // 통합 길드 정보
bool PktDetailCharInfo (PktBase* lpPktBase); // 통합 캐릭터 상세 정보
bool PktShiftToUID (PktBase* lpPktBase); // 계정, UID간 변환 (한국만 사용가능한 기능)
bool PktAmountOfGold (PktBase* lpPktBase); // 서버군별 골드량 확인
bool PktGMLogMsg (PktBase* lpPktBase); // GM 로그 메세지
bool CharInfoParseFinish (CCharacterDoc::CharDocInfo* lpCharDocInfo);
void ResultErrModifyCharacter (PktBase* lpPktBase);
void ResultErrStateSave (PktBase* lpPktBase);
void AdminStoreItemModify (PktAdminMgr::PktGetAdminStoreItemAck* lpPktAck);
void AdminStoreGrabMode (PktAdminMgr::PktGetAdminStoreItemAck* lpPktAck);
bool PktResultCharInfoTime (PktBase* lpPktAck); // 캐릭터 생성/수정 정보 확인
// 캐릭터 정보 셋팅
CAgentServerParseData Parser; // 캐릭터 정보 분석 클래스
// ETC
CString GetBlockString(unsigned int nIndex);
CString GetGuildTitleString(unsigned int nIndex);
CString GetGuildRightString(unsigned int nIndex);
bool SucessLogin();
};
#endif