//------------------------------------------------------------------------------ // PartyParsePacket.cpp // (C) 2005 ckbang //------------------------------------------------------------------------------ #include "SunClientPrecompiledHeader.h" #include "Party.h" //------------------------------------------------------------------------------ /** */ void Party::Parse(MSG_BASE * pMsg) { switch(pMsg->m_byProtocol) { // ÆÄƼ¿ø Á¤º¸ case CG_PARTY_MEMBER_INFO_CMD: { // »õ·Î¿î À¯Àú ȤÀº ¹æÀå µî // º¯°æµÈ ÆÄƼ ±¸¼º °»½ÅÇÑ´Ù. this->SetInfos((MSG_CG_PARTY_MEMBER_INFO_CMD *)pMsg); // º¯°æµÈ ÆÄƼ¿øµéÀÇ UI¸¦ Ç¥½ÃÇÑ´Ù. this->ShowPartyInfoDlgs(true); } break; // ÆÄƼ¿ø Á¶ÀÎ ºê·Îµå case CG_PARTY_MEMBER_JOIN_BRD: { this->AddInfo((MSG_CG_PARTY_MEMBER_JOIN_BRD *)pMsg); // º¯°æµÈ ÆÄƼ¿øµéÀÇ UI¸¦ Ç¥½ÃÇÑ´Ù. this->ShowPartyInfoDlgs(true); } break; // ÆÄƼ Å»Åð ½ÇÆÐ case CG_PARTY_LEAVE_REQUEST_NAK: { MSG_CG_PARTY_LEAVE_REQUEST_NAK *msg = (MSG_CG_PARTY_LEAVE_REQUEST_NAK *)pMsg; this->Reason ((ePARTY_RESULT)msg->m_byErrorCode); } break; // ÆÄƼŻÅð ½ÃÀÛ ºê·Îµå(Ä«¿îÆ® ½ÃÀÛ) case CG_PARTY_LEAVE_START_BRD: { MSG_CG_PARTY_LEAVE_START_BRD *msg = (MSG_CG_PARTY_LEAVE_START_BRD *)pMsg; // ÆÄƼ¿ø »èÁ¦ this->DelInfo(msg->m_dwObjKey); // º¯°æµÈ ÆÄƼ¿øµéÀÇ UI¸¦ Ç¥½ÃÇÑ´Ù. this->ShowPartyInfoDlgs(true); } break; // ÆÄƼŻÅð ¿Ï·á ºê·Îµå(½ÇÁ¦·Î ÆÄƼ¿¡¼­ ºüÁü) case CG_PARTY_LEAVE_COMPLETE_BRD: { MSG_CG_PARTY_LEAVE_COMPLETE_BRD *msg = (MSG_CG_PARTY_LEAVE_COMPLETE_BRD *)pMsg; // ÆÄƼ¿ö »èÁ¦ this->DelInfo(msg->m_dwObjKey); // º¯°æµÈ ÆÄƼ¿øµéÀÇ UI¸¦ Ç¥½ÃÇÑ´Ù. this->ShowPartyInfoDlgs(true); } break; // °­Á¦ Ãß¹æ ÀÀ´ä case CG_PARTY_FORCED_EXPULSION_NAK: { MSG_CG_PARTY_FORCED_EXPULSION_NAK *msg = (MSG_CG_PARTY_FORCED_EXPULSION_NAK *)pMsg; this->Reason ((ePARTY_RESULT)msg->m_byErrorCode); } break; // ÆÄƼÀå º¯°æ ºê·Îµå case CG_PARTY_CHANGE_MASTER_BRD: { MSG_CG_PARTY_CHANGE_MASTER_BRD *msg = (MSG_CG_PARTY_CHANGE_MASTER_BRD *)pMsg; this->SetMaster(msg->m_dwObjKey); // º¯°æµÈ ÆÄƼ¿øµéÀÇ UI¸¦ Ç¥½ÃÇÑ´Ù. this->ShowPartyInfoDlgs(true); } break; // ÆÄƼÀå º¯°æ ÀÀ´ä case CG_PARTY_CHANGE_MASTER_NAK: { MSG_CG_PARTY_CHANGE_MASTER_NAK *msg = (MSG_CG_PARTY_CHANGE_MASTER_NAK *)pMsg; this->Reason ((ePARTY_RESULT)msg->m_byErrorCode); } break; // ÆÄƼ ÃÊ´ë ÀÀ´ä case CG_PARTY_INVITE_REQUEST_SERVER_NAK: { MSG_CG_PARTY_INVITE_REQUEST_SERVER_NAK *msg = (MSG_CG_PARTY_INVITE_REQUEST_SERVER_NAK *)pMsg; this->Reason ((ePARTY_RESULT)msg->m_byErrorCode); } break; // ÆÄƼ ÃÊ´ë ¹¯±â case CG_PARTY_INVITE_RESPONSE_SERVER_SYN: { MSG_CG_PARTY_INVITE_RESPONSE_SERVER_SYN *msg = (MSG_CG_PARTY_INVITE_RESPONSE_SERVER_SYN *)pMsg; this->actAskInviting(msg->m_szMasterName, msg->m_dwMasterUserKey); } break; // ÆÄƼ ÇØÁ¦ ½ÇÆÐ case CG_PARTY_DESTROY_PARTY_NAK: { MSG_CG_PARTY_DESTROY_PARTY_NAK *msg = (MSG_CG_PARTY_DESTROY_PARTY_NAK *)pMsg; this->Reason ((ePARTY_RESULT)msg->m_byErrorCode); } break; // ÆÄƼ ÇØÁ¦ case CG_PARTY_DESTROY_PARTY_BRD: { this->LeaveParty(); } break; } }