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

📄 dlgtoolsani.cpp

📁 混乱竞技场的全套代码,客户端资源可以网上搜
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	*pResult = 0;
}

void CDlgToolsANI::OnCustomdrawSliderBlue(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	m_fBlue	= m_slider_blue_mix.GetPos()/100.0f;
	UpdateData(false);
	
	*pResult = 0;
}

void CDlgToolsANI::OnChangeEditRed() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_fRed<0.0)
		m_fRed	= 0.0f;
	if(m_fRed>1.0)
		m_fRed	= 1.0f;
	UpdateData(false);
	m_slider_red_mix.SetPos(m_fRed*100);
	
}

void CDlgToolsANI::OnChangeEditGreen() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_fGreen<0.0)
		m_fGreen	= 0.0f;
	if(m_fGreen>1.0)
		m_fGreen	= 1.0f;
	UpdateData(false);
	m_slider_green_mix.SetPos(m_fGreen*100);
	
}

void CDlgToolsANI::OnChangeEditBlue() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_fBlue<0.0)
		m_fBlue	= 0.0f;
	if(m_fBlue>1.0)
		m_fBlue	= 1.0f;
	UpdateData(false);
	m_slider_blue_mix.SetPos(m_fBlue*100);
	
}

void CDlgToolsANI::OnChangeEditShowAlpha() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CDialog::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData();
	if(m_fShowAlpha<0.0)
		m_fShowAlpha	= 0.0f;
	if(m_fShowAlpha>1.0)
		m_fShowAlpha	= 1.0f;
	UpdateData(false);
	m_slider_show_alpha.SetPos(m_fShowAlpha*100);
	
}

void CDlgToolsANI::OnCustomdrawSliderShowAlpha(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	m_fShowAlpha	= m_slider_show_alpha.GetPos()/100.0f;
	UpdateData(false);
	
	*pResult = 0;
}

VOID CDlgToolsANI::UpdateSeting()
{
	UpdateData(false);
	m_slider_frame_delay.SetPos(m_nFrameDelay);

	m_slider_show_angle.SetPos(m_nShowAngle);

	m_slider_rotate_angle.SetPos(m_nRotateAngle);

	m_slider_show_alpha.SetPos(m_fShowAlpha*100.0f);
	m_slider_red_mix.SetPos(m_fRed*100.0f);
	m_slider_green_mix.SetPos(m_fGreen*100.0f);
	m_slider_blue_mix.SetPos(m_fBlue*100.0f);


	m_slider_show_scale.SetPos(m_fShowScale*100.0f);

}

void CDlgToolsANI::OnShowAngle() 
{
	// TODO: Add your control notification handler code here
	m_nShowAngle = 0;
	UpdateSeting();
}

void CDlgToolsANI::OnBtnScale() 
{
	// TODO: Add your control notification handler code here
	m_fShowScale = 1.0f;
	UpdateSeting();
	
}

void CDlgToolsANI::OnBtnAlpha() 
{
	// TODO: Add your control notification handler code here
	m_fShowAlpha = 1.0f;
	UpdateSeting();
	
}

void CDlgToolsANI::OnBtnRotate() 
{
	// TODO: Add your control notification handler code here
	m_nRotateAngle = 0;
	UpdateSeting();
	
}

void CDlgToolsANI::OnBtnRed() 
{
	// TODO: Add your control notification handler code here
	m_fRed = 0.5f;
	UpdateSeting();
	
}

void CDlgToolsANI::OnBtnGreen() 
{
	// TODO: Add your control notification handler code here
	m_fGreen = 0.5f;
	UpdateSeting();
	
}

void CDlgToolsANI::OnBtnBlue() 
{
	// TODO: Add your control notification handler code here
	m_fBlue = 0.5f;
	UpdateSeting();
	
}


void CDlgToolsANI::OnBtnFrameDelay() 
{
	// TODO: Add your control notification handler code here
	CGsTextureGroup* ptxg = m_ptr_ani->GetTextureGroup();
	m_nFrameDelay	= ptxg->GetDefaultDelay();
	UpdateSeting();
}

void CDlgToolsANI::OnBtnSetBasePoint() 
{
	// TODO: Add your control notification handler code here
	GSG_TXG*	p_gsg	= dynamic_cast<GSG_TXG*>(g_ptr_game);
	if(NULL==p_gsg)
		return;
	p_gsg->SetBasePoint();
}

void CDlgToolsANI::OnBtnSaveSetting() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	CGsTextureGroup* ptxg = m_ptr_ani->GetTextureGroup();
	if(!ptxg)
		return;
	ptxg->SetTeam(m_nTeam);
	ptxg->SetBaseAngle(D3DXToRadian(m_nBaseAngle));
	ptxg->SetCacheSize(m_nCache);
	ptxg->SetDefaultDelay(m_nFrameDelay);
	if(m_has_shadow)
		ptxg->AddFlag(TXG_FLAG_SHADOW);
	else
		ptxg->ClearFlag(TXG_FLAG_SHADOW);
	ptxg->SaveHeader();
}

void CDlgToolsANI::OnButtonNewFrame() 
{
	// TODO: Add your control notification handler code here
	m_ptr_ani->SetAniFrame(0);
//	UpdateFrameList();
	int i	= m_lstAnimation.GetItemCount()-1;
	if(i>=0)
	{
		char strTemp[255];
		GSANI_FRAME	frame	= m_ptr_ani->GetAniFrame(i);
		sprintf(strTemp, "%d", i);
		m_lstAnimation.InsertItem(i, strTemp, 0);
		sprintf(strTemp, "%d", frame.index);
		m_lstAnimation.SetItemText(i, 1, strTemp);
		sprintf(strTemp, "%d", frame.flag);
		m_lstAnimation.SetItemText(i, 2, strTemp);
	}
	m_num_frame_per_direction	= m_ptr_ani->GetFrameCount();

	UpdateData(FALSE);
//	m_lstAnimation.Set
}

void CDlgToolsANI::OnButtonDelFrame() 
{
	// TODO: Add your control notification handler code here
	m_ptr_ani->SetAniFrame(-1);
	int i	= m_lstAnimation.GetItemCount()-1;
	if(i>=0)
	{
		m_lstAnimation.DeleteItem(i);
	}
	m_num_frame_per_direction	= m_ptr_ani->GetFrameCount();

	UpdateData(FALSE);
//	UpdateFrameList();
}

VOID CDlgToolsANI::UpdateFrameList()
{
	int frame_count	= m_ptr_ani->GetFrameCount();
	m_lstAnimation.DeleteAllItems();
	char strTemp[255];
	for(int i=0; i<frame_count; i++)
	{
		GSANI_FRAME	frame	= m_ptr_ani->GetAniFrame(i);
		sprintf(strTemp, "%d", i);
		m_lstAnimation.InsertItem(i, strTemp, 0);
		sprintf(strTemp, "%d", frame.index);
		m_lstAnimation.SetItemText(i, 1, strTemp);
		sprintf(strTemp, "%d", frame.flag);
		m_lstAnimation.SetItemText(i, 2, strTemp);
	}
}

void CDlgToolsANI::OnDblclkListFrame(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	int nItem	= 0;
	POSITION	pos	= m_lstAnimation.GetFirstSelectedItemPosition();
	while (pos)
	{
		nItem = m_lstAnimation.GetNextSelectedItem(pos);
	}
	if(nItem<0)
		return;


	CDlgANISetFrame	dlg(m_ptr_ani->GetAniFrame(nItem));

	if(dlg.DoModal()==IDOK)
	{
		char strTemp[255];
		m_ptr_ani->SetAniFrame(nItem, &dlg.m_frame);
		sprintf(strTemp, "%d", dlg.m_frame.index);
		m_lstAnimation.SetItemText(nItem, 1, strTemp);
		sprintf(strTemp, "%d", dlg.m_frame.flag);
		m_lstAnimation.SetItemText(nItem, 2, strTemp);
		
	}


	m_ptr_ani->SetCurrentFrame(nItem);


	
	*pResult = 0;
}

void CDlgToolsANI::OnClickListFrame(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	int nItem	= 0;
	POSITION	pos	= m_lstAnimation.GetFirstSelectedItemPosition();
	while (pos)
	{
		nItem = m_lstAnimation.GetNextSelectedItem(pos);
	}
	if(nItem<0)
		return;

	m_ptr_ani->SetCurrentFrame(nItem);


//	int nItem	= 0;
//	POSITION	pos	= m_lstAnimation.GetFirstSelectedItemPosition();
//	while (pos)
//	{
//		nItem = m_lstAnimation.GetNextSelectedItem(pos);
//	}
//	if(nItem<0)
//		return;
//	CGsSprite*		pSprite	= g_pWndAnimation->GetSpritePtr();
//	pSprite->SetDirectionFrame(nItem, GSANI_FRAME_NOCHANGE);


	*pResult = 0;
}

void CDlgToolsANI::OnKeydownListFrame(NMHDR* pNMHDR, LRESULT* pResult) 
{
	LV_KEYDOWN* pLVKeyDow = (LV_KEYDOWN*)pNMHDR;
	// TODO: Add your control notification handler code here
	int nItem	= 0;
	POSITION	pos	= m_lstAnimation.GetFirstSelectedItemPosition();
	while (pos)
	{
		nItem = m_lstAnimation.GetNextSelectedItem(pos);
	}
	if(nItem<0)
		return;

	m_ptr_ani->SetCurrentFrame(nItem);
	
	*pResult = 0;
}



void CDlgToolsANI::OnButtonSave() 
{
	// TODO: Add your control notification handler code here
	if(!m_ptr_ani->Export(NULL))
	{
		OnButtonSaveAs();
	}
}

void CDlgToolsANI::OnButtonSaveAs() 
{
	// TODO: Add your control notification handler code here
	CDlgManagerNew	dlg_new(NULL, GSF_INI);
	if(dlg_new.DoModal()==IDCANCEL)
		return;
	CString strKey	= dlg_new.m_strPath;
//	CFileDialog dlg(true,"File","*.ini",
//					OFN_PATHMUSTEXIST|OFN_EXPLORER|OFN_NOCHANGEDIR,
//					"Select file (*.ini)|*.ini||");  
//	if (dlg.DoModal() == IDCANCEL)
//	{
//		return ;
//	}
	LPCSTR	str = (LPCSTR)strKey;
	if(!CGsFunc::Path_IsSysPath((LPCSTR)strKey))
	{
		
		str		= g_source.AddFile((LPCSTR)strKey, GSF_INI);
	}
	if(!m_ptr_ani->Export(str))
	{
	}
	
}

void CDlgToolsANI::OnButtonImport() 
{
	// TODO: Add your control notification handler code here
	
}

void CDlgToolsANI::OnCustomdrawSliderPreviewLength(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
	*pResult = 0;
}

void CDlgToolsANI::OnReleasedcaptureSliderPreviewLength(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
	*pResult = 0;
}

void CDlgToolsANI::OnCustomdrawSliderPreviewSpeed(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
	*pResult = 0;
}

void CDlgToolsANI::OnReleasedcaptureSliderPreviewSpeed(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
	*pResult = 0;
}

void CDlgToolsANI::OnSelendokComboAction() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
}
void CDlgToolsANI::OnCheckAlpha() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
}

void CDlgToolsANI::OnCheckShowOptimize() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
}

void CDlgToolsANI::OnCheckFrame() 
{
	// TODO: Add your control notification handler code here
	UpdateData();
	
}

⌨️ 快捷键说明

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