⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 munpadialog.cpp

📁 墨香最新私服
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	DWORD IDs[MAX_MUNPA_SEMIMEMBERLIST_NUM];
	SelectedMembersIDChk(MAX_MUNPA_SEMIMEMBERLIST_NUM,MUN_MMGEMEMBER1CHK,m_pMgeRegularMembersLCtrl,IDs);
		
	for(int i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
	{
		if(IDs[i] != 0)
		{
			MUNPAMGR->ChangeRankSyn(HEROID,IDs[i], Rank);
			state = TRUE;
		}
	}	
	return state;
}

BOOL CMunpaDialog::CheckedBanMember()
{
	BOOL state = FALSE;
	DWORD IDs[MAX_MUNPA_SEMIMEMBERLIST_NUM];
	SelectedMembersIDChk(MAX_MUNPA_SEMIMEMBERLIST_NUM,MUN_MMGEMEMBER1CHK,m_pMgeRegularMembersLCtrl,IDs);
	
	int lastidx = MAX_MUNPA_SEMIMEMBERLIST_NUM;
	for(int i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
	{
		if(IDs[i] != 0)
			lastidx = i;
	}
	
	for(i=0;i<MAX_MUNPA_SEMIMEMBERLIST_NUM;++i)
	{
		if(IDs[i] != 0)
		{
			BOOL bLast;
			if(i==lastidx)
				bLast = TRUE;
			else
				bLast = FALSE;
			MUNPAMGR->BanMember(IDs[i],bLast);
			state = TRUE;
		}
	}
	return state;
}

void CMunpaDialog::SelectedMembersIDChk(int count, LONG ChkBtnIDStar,cListCtrl* pListCtrl,DWORD* IDs)
{
	cCheckBox* pChkArray[MAX_MUNPA_SEMIMEMBERLIST_NUM];
	for(int i=0; i<count; ++i)
	{
		pChkArray[i] = (cCheckBox*)GetWindowForID(ChkBtnIDStar+i);
	}
	GetCheckedIDs(count,pChkArray,pListCtrl,IDs);
}

BOOL CMunpaDialog::CheckedDeleteBoardID()
{
	BOOL state = FALSE;
	DWORD IDs[MAX_MUNPA_BOARD_NUM];
	SelectedMembersIDChk(MAX_MUNPA_BOARD_NUM,MUN_MBOARD1CHK,m_pMunpaUsedBoardsInfo,IDs);	
	
	int lastidx = MAX_MUNPA_BOARD_NUM;
	for(int i=0;i<MAX_MUNPA_BOARD_NUM;++i)
	{
		if(IDs[i] != 0)
			lastidx = i;
	}
	
	for(i=0;i<MAX_MUNPA_BOARD_NUM;++i)
	{
		if(IDs[i] != 0)
		{
			BOOL bLast;
			if(i==lastidx)
				bLast = TRUE;
			else
				bLast = FALSE;
			MUNPAMGR->DeleteBoardSyn(IDs[i],bLast);
			state = TRUE;
		}
	}
	return state;
}

BOOL CMunpaDialog::IsCheckedBoard()
{
	for(int i=0; i<MAX_MUNPA_BOARD_NUM; ++i)
	{
		if(m_pBoardChk[i]->IsChecked())
		{
			return TRUE;
		}
	}
	return FALSE;
}

BOOL CMunpaDialog::CheckedModifyBoardID()
{
	BOOL state = FALSE;
	DWORD IDs[MAX_MUNPA_BOARD_NUM];
	SelectedMembersIDChk(MAX_MUNPA_BOARD_NUM,MUN_MBOARD1CHK,m_pMunpaUsedBoardsInfo,IDs);	
	
	for(int i=0;i<MAX_MUNPA_BOARD_NUM;++i)
	{
		if(IDs[i])
		{
			MUNPAMGR->BoardRankInfoSyn(IDs[i]);
			state = TRUE;
			break;
		}
	}
	return state;
}
/*
void CMunpaDialog::SetInfoinApplicate(MUNPA_SIMPLE_INFO* pMunpaInfo)
{
	m_pMunpaInfoLCtrl->DeleteAllItems();

	RITEM * ritem = new RITEM(5);

	strcpy(ritem->pString[0], pMunpaInfo->MunpaName);
	strcpy(ritem->pString[1], pMunpaInfo->MasterName);
	sprintf(ritem->pString[2], "%d", pMunpaInfo->MunpaFamous);
	sprintf(ritem->pString[3], "%d", pMunpaInfo->MemberNum);
	sprintf(ritem->pString[4], "%d", 0);
	
	m_pMunpaInfoLCtrl->InsertItem(0, ritem);
}
*/

int CMunpaDialog::GetRankforMgeBoard(long id)
{
	char buff[64];
	int Rank;
	cComboBox * combo = (cComboBox *)WINDOWMGR->GetWindowForIDEx(id);
	strcpy(buff,combo->GetComboText());
	CMD_ST(buff)
	CMD_CS(CHATMGR->GetChatMsg(154))
	Rank = MUNPA_MASTER;
	CMD_CS(CHATMGR->GetChatMsg(157))
	Rank = MUNPA_VICE_MASTER;
	CMD_CS(CHATMGR->GetChatMsg(156))
	Rank = MUNPA_SENIOR;
	CMD_CS(CHATMGR->GetChatMsg(155))
	Rank  = MUNPA_MEMBER;
	CMD_CS(CHATMGR->GetChatMsg(188))
	Rank = MUNPA_NOTMEMBER;
	}
	else 
	{	ASSERT(0);
	CMD_EN
	return Rank;
}

void CMunpaDialog::SetHomeInfo(MUNPA_HOME_INFO* HomeInfo)
{
	if(HomeInfo->bIsInMap && IsTalkToNPC() == TRUE)
		ShowWarehouseBtn(TRUE);
	SetMunpaID(HomeInfo->MunpaID);
	for(int i=0; i<MAX_MUNPA_BOARD_NUM; ++i)
		m_pBoardBtn[i]->SetText(HomeInfo->BoardInfo[i].MunpaBoardName, MUNPABTN_BASICCOLOR,MUNPABTN_OVERCOLOR,MUNPABTN_PRESSCOLOR);
	

	m_MunpaName->SetStaticText(HomeInfo->MunpaName);
	m_pIntroMsg->SetScriptText(HomeInfo->IntroMsg);

	//巩颇 沥焊
	m_pMunpaInfoLCtrl ->DeleteAllItems();
	m_pMunpaBattleInfoLCtrl->DeleteAllItems();

	cRITEMEx *ritem = new cRITEMEx(5);
	if(HomeInfo->Kind == MUNPA_KIND_JUNG)
		strcpy(ritem->pString[0], CHATMGR->GetChatMsg(246));
	else if(HomeInfo->Kind == MUNPA_KIND_SA)
		strcpy(ritem->pString[0], CHATMGR->GetChatMsg(247));
	else if(HomeInfo->Kind == MUNPA_KIND_WHANG)
		strcpy(ritem->pString[0], CHATMGR->GetChatMsg(248));
	else if(HomeInfo->Kind == MUNPA_KIND_MU)
		strcpy(ritem->pString[0], CHATMGR->GetChatMsg(249));
	strcpy(ritem->pString[1], HomeInfo->MasterName);
	sprintf(ritem->pString[2], "%d", HomeInfo->MunpaFamous);
	sprintf(ritem->pString[3], "%d", HomeInfo->MemberNum);
	strcpy(ritem->pString[4], HomeInfo->CreateDay);

	m_pMunpaInfoLCtrl->InsertItem(0, ritem);
	//////////////////////////////////////////////////////////////////////////
	//巩颇傈 沥焊
	for(i=0; i<MAX_MUNPA_BATTLEKIND; ++i )
	{
		RITEM *battle = new RITEM(4);
		if(i==0) strcpy(battle->pString[0], CHATMGR->GetChatMsg(456));
		if(i==1) strcpy(battle->pString[0], CHATMGR->GetChatMsg(457));
		if(i==2) strcpy(battle->pString[0], CHATMGR->GetChatMsg(458));
		
		
		sprintf(battle->pString[1], "%d", HomeInfo->MunpaBattleRecordInfo[i].Total);
		sprintf(battle->pString[2], "%d", HomeInfo->MunpaBattleRecordInfo[i].Win);
		sprintf(battle->pString[3], "%d", HomeInfo->MunpaBattleRecordInfo[i].Loss);
		
		m_pMunpaBattleInfoLCtrl->InsertItem(i, battle);
	}
	
	DWORD total, win, loss ;
	RITEM *Total = new RITEM(4);
	strcpy(Total->pString[0], CHATMGR->GetChatMsg(459));
	for(i=0; i<MAX_MUNPA_BATTLEKIND; ++i)
	{
		total = HomeInfo->MunpaBattleRecordInfo[i].Total;
		win = HomeInfo->MunpaBattleRecordInfo[i].Win;
		loss = HomeInfo->MunpaBattleRecordInfo[i].Loss;
	}
	sprintf(Total->pString[1], "%d", total);
	sprintf(Total->pString[2], "%d", win);
	sprintf(Total->pString[3], "%d", loss);
	m_pMunpaBattleInfoLCtrl->InsertItem(i, Total);
}

void CMunpaDialog::SetBoardRankInfo(char* Name, DWORD RSubjectRank, DWORD RContentRank, DWORD WContentRank, DWORD DContentRank, DWORD BoardID)
{
	SetSelectedBoardID(BoardID);
	m_pBoardName->SetEditText(Name);
	
	SetBoardAuthorityRankCombox(MUN_MREADSUBJECTCOMBOBOX, RSubjectRank);
	SetBoardAuthorityRankCombox(MUN_MREADCONTENTCOMBOBOX, RContentRank);
	SetBoardAuthorityRankCombox(MUN_MWRITECOMBOBOX, WContentRank);
	SetBoardAuthorityRankCombox(MUN_MDELCONTENTCOMBOBOX, DContentRank);
}

void CMunpaDialog::SetBoardAuthorityRankCombox(long Id, DWORD Rank)
{
	cComboBox* pCbBox = (cComboBox*)GetWindowForID(Id);
	if(Rank == MUNPA_MASTER)
		pCbBox->SelectComboText(0);
	else if(Rank == MUNPA_VICE_MASTER)
		pCbBox->SelectComboText(1);
	
	else if(Rank == MUNPA_SENIOR)
		pCbBox->SelectComboText(2);
	else if(Rank == MUNPA_MEMBER)
		pCbBox->SelectComboText(3);
	else if (Rank == MUNPA_NOTMEMBER)
		pCbBox->SelectComboText(4);
}

DWORD CMunpaDialog::ActionEvent(CMouse * mouseInfo)
{
	DWORD we = WE_NULL;
	if( !m_bActive ) return we;
	we = cDialog::ActionEvent(mouseInfo);
	
	if(we & WE_ROWCLICK)
	{
		int mode = GetCurMunpaMode();
		switch(mode)
		{
		case eMunpaMode_MunpaBoardList:
			{
				DWORD id = GetSelectedRowdwID(m_pMBL_SubjectList);
				MUNPAMGR->BoardReadSyn(id, 0);
			}
			break;
		}
	}
	
	return we;
}

DWORD CMunpaDialog::GetSelectedRowdwID(cListCtrl* Lctrl)
{
	cRITEMEx * pRItem = (cRITEMEx *)Lctrl->GetRItem(Lctrl->GetSelectedRowIdx());
	if(pRItem != NULL)
	{
		return pRItem->dwID;
	}
	return 0;
}

void CMunpaDialog::SetBoardContentInfo(SEND_MUNPA_BOARD_CONTENT_INFO* pInfo)
{
	m_pMBR_Counts->SetStaticValue(pInfo->BoardListInfo.Count);
	// 朝楼 函券
	m_pMBR_Date->SetStaticText(pInfo->BoardListInfo.RegDate);
	m_pMBR_Nums->SetStaticValue(pInfo->BoardListInfo.Seq);
	m_pMBR_Subject->SetReadOnly(TRUE);
	m_pMBR_Subject->SetEditText(pInfo->BoardListInfo.Subject);
	
	m_pMBR_WriterNames->SetStaticText(pInfo->BoardListInfo.WriterName);

	m_pMBR_Contents->SetScriptText(pInfo->Content);

	SetReadingContentsIdx(pInfo->BoardListInfo.WritingsIDX);

	// 鼻茄 汲沥
	m_pMBR_Modify->SetActive(TRUE);
	m_pMBR_Reply->SetActive(TRUE);
	m_pMBR_Delete->SetActive(TRUE);
	
	m_pMBR_NextContents->SetActive(TRUE);
	m_pMBR_PrevContents->SetActive(TRUE);
	
	
}

void CMunpaDialog::ClearBoardListInfo()
{
	m_pMBL_SubjectList->DeleteAllItems();	
}

void CMunpaDialog::ShowBoardPageBtn(DWORD TotalPage)
{
	if(TotalPage == 0)
	{
		for(DWORD i=0; i<MAX_MUNPA_PAGEBTN; ++i)
			m_pBoardPageBtn[i]->SetActive(FALSE);
		return;
	}

	DWORD MaxUnit = (TotalPage-1) / MAX_MUNPA_PAGE_UNIT;
	DWORD CurUnit = (GetCurPage()-1) / MAX_MUNPA_PAGE_UNIT;
	
	m_pBoardPageBtn[0]->SetActive(CurUnit != 0);
	for(DWORD i=1; i<=MAX_MUNPA_PAGE_UNIT; ++i)
	{
		DWORD page = CurUnit*MAX_MUNPA_PAGE_UNIT + i;
		m_pBoardPageBtn[i]->SetTextValue(page);
		m_pBoardPageBtn[i]->SetActive(page <= TotalPage);
	}
	m_pBoardPageBtn[8]->SetActive(MaxUnit > CurUnit);
}

void CMunpaDialog::ShowPageBtn(DWORD TotalPage, cButton* pBtn[])
{
	if(TotalPage == 0)
	{
		for(int i=0; i<MAX_MUNPA_PAGEBTN; ++i)
			pBtn[i]->SetActive(FALSE);
		return;
	}
	
	DWORD MaxUnit = (TotalPage-1) / MAX_MUNPA_PAGE_UNIT;
	DWORD CurUnit = (GetCurPage()-1) / MAX_MUNPA_PAGE_UNIT;
	pBtn[0]->SetActive(CurUnit != 0);
	for(DWORD i=1; i<=MAX_MUNPA_PAGE_UNIT; ++i)
	{
		DWORD page = CurUnit*MAX_MUNPA_PAGE_UNIT + i;
		pBtn[i]->SetTextValue(page);
		pBtn[i]->SetActive(page <= TotalPage);
	}
	pBtn[8]->SetActive(MaxUnit > CurUnit);
}

void CMunpaDialog::SetCurPage(DWORD GotoPage)
{ 
	m_PastPage = m_CurPage;
	m_CurPage = GotoPage; 
}

//////////////////////////////////////////////////////////////////////////
//芒绊
void CMunpaDialog::SetMoney(DWORD Money)
{
	m_MunpaMoney = Money;
	m_pMoney->SetEditText( AddComma( m_MunpaMoney ) );
}

void CMunpaDialog::MoveItem(MSG_ITEM_MOVE_SYN* pInfo)
{
	if(m_CurMunpaMode == eMunpaMode_Warehouse)
		m_pMunpaWarehouse->MoveItem(pInfo);
}

void CMunpaDialog::SetWarehouseInfo(SEND_MUNPA_WAREHOUSE_ITEM_INFO* pInfo)
{
	for(int i=0; i<TABCELL_MUNPAWAREHOUSE_NUM; ++i)
	{
		if(pInfo->info.WarehouseItem[i].dwDBIdx != 0)
			m_pMunpaWarehouse->AddItem(&pInfo->info.WarehouseItem[i]);
	}
	SetMoney(pInfo->info.money);

	AddMunpaMode(eMunpaMode_Warehouse);
}


BOOL CMunpaDialog::FakeMoveIcon(LONG x, LONG y, cIcon * icon)
{
	if(m_CurMunpaMode == eMunpaMode_Warehouse)
		return m_pMunpaWarehouse->FakeMoveIcon(x,y,icon);
	return FALSE;
}

void CMunpaDialog::FakeGeneralItemMove( POSTYPE ToPos, CItem * pFromItem, CItem * pToItem)
{
	m_pMunpaWarehouse->FakeGeneralItemMove(ToPos, pFromItem, pToItem, HERO->GetMunpaIdx());
}

BOOL CMunpaDialog::AddItem(ITEMBASE* pItemInfo)
{
	return m_pMunpaWarehouse->AddItem(pItemInfo);
}

BOOL CMunpaDialog::AddItem(CItem* pItem)
{
	return m_pMunpaWarehouse->AddItem(pItem);
}

BOOL CMunpaDialog::DeleteItem(POSTYPE Pos,CItem** ppItem)
{
	return m_pMunpaWarehouse->DeleteItem(Pos, ppItem);
}


CItem * CMunpaDialog::GetItemForIdx(POSTYPE absPos)
{
	return m_pMunpaWarehouse->GetItemForIdx(absPos);
}

void CMunpaDialog::SetDividMsg( CItem * pFromItem, POSTYPE ToPos )
{
	BYTE FromIdx = ITEMMGR->GetTableIdxForAbsPos( pFromItem->GetPosition() );
	if(FromIdx >= eItemTable_Max) return;

	BYTE ToIdx = ITEMMGR->GetTableIdxForAbsPos( ToPos );
	if(ToIdx >= eItemTable_Max) return;

	m_divideMsg.Category			= MP_ITEM;
	m_divideMsg.Protocol			= MP_ITEM_DIVIDE_SYN;
	m_divideMsg.dwObjectID			= HEROID;
	m_divideMsg.FromPos				= pFromItem->GetPosition();
	m_divideMsg.FromDur				= pFromItem->GetDurability();
	m_divideMsg.ToPos				= ToPos;
	m_divideMsg.ToDur				= 0;
	m_divideMsg.wItemIdx			= pFromItem->GetItemIdx();
}

void CMunpaDialog::GetMBW_WriteContents(char* pTextOut)
{
	m_pMBW_WriteContents->GetScriptText(pTextOut);
}

char* CMunpaDialog::GetMBW_SubjectEdit()
{
	return m_pMBW_SubjectEdit->GetEditText();
}

void CMunpaDialog::PutInOutMoneySyn(int vals)
{
	m_pMunpaWarehouse->PutInOutMoneySyn(vals);
}

void CMunpaDialog::PutInOutMoneyResult(MSG_DWORD * msg)
{
	SetMoney(msg->dwData);
}

void CMunpaDialog::FocusClr()
{
	m_pMBW_SubjectEdit->SetFocusEdit(FALSE);
	m_pBoardName->SetFocusEdit(FALSE);
	m_pMBW_WriteContents->SetFocusEdit(FALSE);
	m_pModIntroMsg->SetFocusEdit(FALSE);
}

void CMunpaDialog::MunpaMsgBoxClr()
{
	//MsgBox
	cMsgBox* pMsgBox = NULL;
	for(int i=MBI_MUNPABREAKUP; i<MBI_MUNPADELETEBOARD+1; ++i)
	{
		pMsgBox = (cMsgBox*)WINDOWMGR->GetWindowForID(i);
		if(pMsgBox)
			WINDOWMGR->AddListDestroyWindow( pMsgBox );
	}
}

void CMunpaDialog::ShowWarehouseBtn(BOOL val)
{
	m_pWareHouseBtn->SetActive(val);
	if(val == TRUE)
		int a = 1;
	m_pViewMunpaListBtn->SetActive(val);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -