📄 munpamanager.cpp
字号:
{
//鉴辑 林狼
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MgeSemiMember);
GAMEIN->GetMunpaDialog()->SetMgeSemiMembersInfo(info);
}
else
{
//鉴辑 林狼
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_SemiMembers);
GAMEIN->GetMunpaDialog()->SetSemiMembersInfo(info);
}
GAMEIN->GetMunpaDialog()->RefreshDlg();
}
void CMunpaManager::MunpaBoardInfo()
{
DWORD MunpaID = GAMEIN->GetMunpaDialog()->GetMunpaID();
MSG_DWORD msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_INFO_SYN;
msg.dwObjectID = HEROID;
msg.dwData = MunpaID;
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::MunpaBoardInfoResult(SEND_MUNPA_BOARD_INFO* info)
{
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MgeBoard);
GAMEIN->GetMunpaDialog()->SetUsedBoardInfo(info);
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MgeBoard);
GAMEIN->GetMunpaDialog()->RefreshDlg();
}
void CMunpaManager::RegularMembersInfoSyn(DWORD GotoPage)
{
DWORD MunpaID = GAMEIN->GetMunpaDialog()->GetMunpaID();
MSG_DWORD2 msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_REGULARMEMBERS_INFO_SYN;
msg.dwObjectID = HEROID;
msg.dwData1 = MunpaID;
msg.dwData2 = GotoPage;
NETWORK->Send(&msg, sizeof(msg));
GAMEIN->GetMunpaDialog()->SetCurPage(GotoPage);
}
void CMunpaManager::RegularMembersInfoResult(SEND_MUNPA_REGULARMEMBER_LIST* pInfo)
{
if((pInfo->MunpaID == HERO->GetMunpaIdx()) && (HERO->GetMunpaMemberRank() == MUNPA_MASTER))
{
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MgeRegularMember);
GAMEIN->GetMunpaDialog()->SetMgeRegularMembersInfo(pInfo);
}
else
{
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_RegularMembers);
GAMEIN->GetMunpaDialog()->SetRegularMembersInfo(pInfo);
}
GAMEIN->GetMunpaDialog()->RefreshDlg();
}
BOOL CMunpaManager::IsMunpaMaster(CHero* pHero)
{
if(pHero->GetMunpaIdx() != GAMEIN->GetMunpaDialog()->GetMunpaID())
return FALSE;
if(pHero->GetMunpaMemberRank() != MUNPA_MASTER)
return FALSE;
return TRUE;
}
void CMunpaManager::CreateMunpaBoardSyn(DWORD RCRank, DWORD RSRank, DWORD WCRank, DWORD DCRank, char* Name)
{
if(!IsMunpaMaster(HERO))
{
ASSERTMSG(0, "泅犁 巩颇狼 规厘捞 酒囱单 霸矫魄 积己 滚瓢阑 穿抚. No Master Created the Board.");
return;
}
SEND_MUNPA_BOARD_RANK_INFO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_CREATEBOARD_SYN;
msg.dwObjectID = HEROID;
msg.RContentRank = RCRank;
msg.RSubjectRank = RSRank;
msg.WContentRank = WCRank;
msg.DContentRank = DCRank;
msg.ID = HERO->GetMunpaIdx();
strcpy(msg.MunpaBoardName, Name);
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::CreateBoardResult(SEND_MUNPA_BOARD_INFO* info)
{
CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(108) );
MunpaHomeSyn(HERO->GetMunpaIdx());
// 包府 葛靛肺 窍妨搁 罐酒坷绰 沥焊啊 腹澜. 弊成 权栏肺 啊鲤 -_- 酒鲤~!
/*
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MgeBoard);
GAMEIN->GetMunpaDialog()->SetUsedBoardInfo(info);
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MgeBoard);
GAMEIN->GetMunpaDialog()->RefreshDlg();
*/
// SetMunpaInfo(msg);
// MunpaBoardInfo();
}
void CMunpaManager::DeleteBoardSyn(DWORD BoardID, BOOL bLast)
{
SEND_MUNPACCEPT_INFO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_DELETEBOARD_SYN;
msg.dwObjectID = HEROID;
msg.MunpaID = HERO->GetMunpaIdx();
msg.TargetID = BoardID;
msg.bLast = bLast;
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::DeleteBoardResult(BOOL bLast)
{
// GAMEIN->GetChatDialog()->AddChatMsg(WHOLE, RGBA_MAKE(255,255,255,255), "霸矫魄捞 昏力登菌嚼聪促.");
CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(39) );
if(bLast)
MunpaBoardInfo();
}
void CMunpaManager::BoardRankInfoSyn(DWORD BoardIDX)
{
MSG_DWORD msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARDRANK_INFO_SYN;
msg.dwObjectID = HEROID;
msg.dwData = BoardIDX;
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::BoardRankInfoResult(SEND_MUNPA_BOARD_RANK_INFO* msg)
{
GAMEIN->GetMunpaDialog()->SetBoardRankInfo(msg->MunpaBoardName, msg->RSubjectRank, msg->RContentRank, msg->WContentRank, msg->DContentRank, msg->ID);
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_CreateBoard);
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_ModBoard);
}
void CMunpaManager::ModifyBoardRankInfoSyn(DWORD RCRank, DWORD RSRank, DWORD WCRank, DWORD DCRank, char* Name)
{
if(!IsMunpaMaster(HERO))
{
ASSERTMSG(0, "泅犁 巩颇狼 规厘捞 酒囱单 霸矫魄 积己 滚瓢阑 穿抚. No Master Created the Board.");
return;
}
SEND_MUNPA_BOARD_RANK_INFO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_MODIFYRANK_INFO_SYN;
msg.dwObjectID = HEROID;
msg.RContentRank = RCRank;
msg.RSubjectRank = RSRank;
msg.WContentRank = WCRank;
msg.DContentRank = DCRank;
msg.ID = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
strcpy(msg.MunpaBoardName, Name);
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::ModifyIntroMsg(char* pIntroMsg)
{
MUNPA_MODIFY_INTRO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_MODIFY_INTROMSG_SYN;
msg.dwObjectID = HEROID;
msg.MunpaID = GAMEIN->GetMunpaDialog()->GetMunpaID();
strcpy(msg.MunpaIntro, pIntroMsg);
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::SetMunpaInfo(MUNPA_HOME_INFO* HomeInfo)
{
GAMEIN->GetMunpaDialog()->SetHomeInfo(HomeInfo);
m_Munpa.ClearBoardInfo();
for(int i=0; i< MAX_MUNPA_BOARD_NUM; ++i)
{
if(HomeInfo->BoardInfo[i].BoardIDX)
m_Munpa.SetBoardInfo(&HomeInfo->BoardInfo[i]);
else
break;
}
SetMunpaCurBoardNum(HomeInfo->BoardNum);
}
char* CMunpaManager::GetMunpaBoardName(int i)
{
return m_Munpa.GetBoardName(i);
}
//////////////////////////////////////////////////////////////////////////
//霸矫魄
void CMunpaManager::BoardSubjectListSyn(int n,DWORD Page)
{
DWORD BoardID;
if( n == -1 )
BoardID = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
else
{
BoardID = GetBoardID(n);
}
if(!BoardID)
return;
MSG_DWORD3 msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_SUBJECTLIST_SYN;
msg.dwObjectID = HEROID;
msg.dwData1 = BoardID;
msg.dwData2 = Page;
msg.dwData3 = GAMEIN->GetMunpaDialog()->GetMunpaID();
GAMEIN->GetMunpaDialog()->SetSelectedBoardID(BoardID);
GAMEIN->GetMunpaDialog()->SetCurPage(Page);
NETWORK->Send(&msg, sizeof(msg));
}
DWORD CMunpaManager::GetBoardID(int n)
{
return m_Munpa.GetBoardID(n);
}
void CMunpaManager::BoardWriteSyn(DWORD RootContentsID)
{
if(IsWriting() == TRUE) //滚瓢 咯矾锅 喘范阑 锭 咯矾锅 殿废 登绰巴 规瘤
return;
if(strcmp(GAMEIN->GetMunpaDialog()->GetMBW_SubjectEdit(), "") == 0)
{
WINDOWMGR->MsgBox(MBI_MUNPABOARDNOCONTENT, MBT_OK, CHATMGR->GetChatMsg(306));
return;
}
SEND_BOARD_CONTENT_INFO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_WRITE_SYN;
msg.dwObjectID = HEROID;
msg.BoardIDX = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
msg.RootContentsID = RootContentsID;
strcpy(msg.Subject,GAMEIN->GetMunpaDialog()->GetMBW_SubjectEdit());
GAMEIN->GetMunpaDialog()->GetMBW_WriteContents(msg.Content);
NETWORK->Send(&msg,msg.GetMsgLength());
SetWriting(TRUE);
}
void CMunpaManager::BoardModifySyn(DWORD OriginalContentID)
{
SEND_BOARD_CONTENT_INFO msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_MODIFY_SYN;
msg.dwObjectID = HEROID;
msg.BoardIDX = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
msg.RootContentsID = OriginalContentID;
strcpy(msg.Subject,GAMEIN->GetMunpaDialog()->GetMBW_SubjectEdit());
GAMEIN->GetMunpaDialog()->GetMBW_WriteContents(msg.Content);
NETWORK->Send(&msg,msg.GetMsgLength());
}
void CMunpaManager::BoardReadSyn(DWORD ContentIDX, DWORD n)
{
if(ContentIDX == 0)
return;
MSG_DWORD3 msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_CONTENTS_SYN;
msg.dwObjectID = HEROID;
msg.dwData1 = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
msg.dwData2 = ContentIDX;
msg.dwData3 = n;
NETWORK->Send(&msg,sizeof(msg));
}
void CMunpaManager::BoardReadResult(SEND_MUNPA_BOARD_CONTENT_INFO* pmsg)
{
GAMEIN->GetMunpaDialog()->SetBoardContentInfo(pmsg);
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MunpaBoardRead);
if(strcmp(HERO->GetObjectName(), pmsg->BoardListInfo.WriterName) != 0)
{
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MunpaBoardRead);
// 磊脚捞 敬 臂捞 酒匆版快
BYTE Rank;
if(IsMunpaMember(HERO))
Rank = HERO->GetMunpaMemberRank();
else
Rank = MUNPA_NOTMEMBER;
if(Rank >= pmsg->WCRank)
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MunpaBoardRead_Reple);
if(Rank >= pmsg->DCRank)
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MunpaBoardRead_Delete);
}
else
{
// 磊脚捞 敬 臂老 版快
GAMEIN->GetMunpaDialog()->AddMunpaMode(eMunpaMode_MunpaBoardRead_Modify);
}
}
void CMunpaManager::BoardSubjectListResult(SEND_MUNPA_BOARD_LIST_INFO* pmsg)
{
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_MunpaBoardList);
GAMEIN->GetMunpaDialog()->SetBoardListInfo(pmsg);
}
void CMunpaManager::DeleteBoardContentsSyn(DWORD ContentsIDx)
{
MSG_DWORD2 msg;
msg.Category = MP_MUNPA;
msg.Protocol = MP_MUNPA_BOARD_DELETE_SYN;
msg.dwObjectID = HEROID;
msg.dwData1 = GAMEIN->GetMunpaDialog()->GetSelectedBoardID();
msg.dwData2 = ContentsIDx;
NETWORK->Send(&msg,sizeof(msg));
}
BOOL CMunpaManager::IsMunpaMember(CHero* pHero)
{
if(pHero->GetMunpaIdx() != GAMEIN->GetMunpaDialog()->GetMunpaID())
return FALSE;
else if(pHero->GetMunpaMemberRank() <= MUNPA_SEMIMEMBER)
return FALSE;
return TRUE;
}
BOOL CMunpaManager::CanUseWareHouse(BYTE TabNum)
{
if(!IsMunpaMember(HERO))
{
//芒绊 捞侩鼻茄捞 绝嚼聪促.
CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(45) );
return FALSE;
}
else if(HERO->GetMunpaMemberRank() < GetWarehouseRank(TabNum))
{
CHATMGR->AddMsg( CTC_SYSMSG, CHATMGR->GetChatMsg(48) );
return FALSE;
}
else
return TRUE;
}
void CMunpaManager::NoAuthority()
{
GAMEIN->GetMunpaDialog()->ShowMunpaMode(eMunpaMode_NoAuthority);
}
void CMunpaManager::MunpaWarehouseInfoSyn(DWORD MunpaID, BYTE TabNum)
{
MSG_DWORD2 msg;
msg.Category = MP_ITEM;
msg.Protocol = MP_ITEM_MUNPA_WAREHOUSE_INFO_SYN;
msg.dwObjectID = HEROID;
msg.dwData1 = MunpaID;
msg.dwData2 = TabNum;
NETWORK->Send(&msg, sizeof(msg));
}
void CMunpaManager::MarkChange(MSG_DWORD3* pInfo)
{
CObject* pObject = OBJECTMGR->GetObject(pInfo->dwData1);
ASSERT(pObject);
if( !pObject ) return;
((CPlayer*)pObject)->SetMunpaID(pInfo->dwData2);
((CPlayer*)pObject)->SetMunpaMemberRank(pInfo->dwData3);
if(((CPlayer*)pObject)->GetMunpaMemberRank() != MUNPA_SEMIMEMBER)
{
pObject->SetMunpaMark();
}
OBJECTMGR->ApplyOverInfoOptionToAll();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -