📄 dlgconfirm.cpp
字号:
break;
case FACTIONADDENEMY_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27, //"输入帮派名称:"
m_Pnt.y + 8,
0xffff00,
g_objGameDataSet.GetStr ( 10854 )) ;
m_ConfirmEdtName.Show ( m_Pnt.x, m_Pnt.y ) ;
break;
case MPCBOOTHADD_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 8,
0xffff00,
g_objGameDataSet.GetStr ( 10353 ) ) ;//"输入物品价格" ) ;
m_ConfirmEdtData.Show ( m_Pnt.x, m_Pnt.y ) ;
break ;
case MPCBOOTHCHG_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 8,
0xffff00,
g_objGameDataSet.GetStr ( 10353 ) ) ;//"输入捐献金额" ) ;
m_ConfirmEdtData.Show ( m_Pnt.x, m_Pnt.y ) ;
break ;
case FACTIONDEL_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 20,
m_Pnt.y + 10,
0xffff00,
g_objGameDataSet.GetStr ( 10360 ) ) ;
CMyBitmap::ShowString ( m_Pnt.x + m_nLeftLeft,
m_Pnt.y + 28,
0xffff00,
m_strText ) ;
break ;
case BOOTHOPEN_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10364 ) ) ;
break ;
case MPCCOURT_CONFIRM:
if ( m_strText )
{
CMyBitmap::ShowString ( m_Pnt.x + m_nLeftLeft,
m_Pnt.y + 10,
0xffff00,
m_strText ) ;
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10365 ) ) ;
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 46,
0xffff00,
g_objGameDataSet.GetStr ( 10001) ) ;
}
break ;
case IMPTITEM_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10371 ) ) ;//10371="确定卖出物品"
break ;
case DROPITEM_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10372 ) ) ;//"确定丢弃物品" ) ;
break ;
case TACKOFF_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 34,
m_Pnt.y + 10,
0xffff00,
g_objGameDataSet.GetStr ( 10381 ) ) ;//"宝石将损坏" ) ;
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10380 ) ) ;//"确定取出宝石" ) ;
break ;
case JOINDICE_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10394 ) ) ;//"确定加入赌局" ) ;
break ;
case OUTDICE_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10395 ) ) ;//"确定退出赌局" ) ;
break ;
case ENEMYDEL_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10400 ) ) ;//"确定删除仇人" ) ;
break ;
case RESOURCE_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 10,
0xffff00,
g_objGameDataSet.GetStr ( 10405 ) ) ;
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10406 ) ) ;
break ;
case EXIT_CONFIRM:
if ( m_TargetID == 0 )
{
CMyBitmap::ShowString ( m_Pnt.x + 41,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( 10410 ) ) ;
}
else if ( m_TargetID == 1 )
{
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( 10411 ) ) ;
}
break ;
case EMPTYMSG_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( 10415 ) ) ;
break ;
case WARNING_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( m_TargetID ) ) ;
break ;
case ROLECREATE_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( 10021 ) ) ;
break ;
case FRIENDADD_CONFIRM:
case FRIENDADDSUC_CONFIRM:
case ACTION_CONFIRM:
ShowConfirmTextMLine();
break ;
case SPLITITEM_CONFIRM:
CMyBitmap::ShowString( m_Pnt.x + 27,
m_Pnt.y + 8,
0xffff00,
g_objGameDataSet.GetStr( 10027 ) ) ;
m_ConfirmEdtData.Show( m_Pnt.x, m_Pnt.y ) ;
break ;
case MONSTERDROP_CONFIRM:
CMyBitmap::ShowString( m_Pnt.x + 21,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr( 10693 ) ) ;
break;
case TEAMDISMISS_CONFIRM:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10708) ) ;//"确定解散队伍" ) ;
break ;
case CHECKOUT_MONSTEREGG:
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 10,
0xffff00,
g_objGameDataSet.GetStr ( 10685) ) ;//"若取出幻兽蛋" ) ;
CMyBitmap::ShowString ( m_Pnt.x + 5,
m_Pnt.y + 28,
0xffff00,
g_objGameDataSet.GetStr ( 10686) ) ;//"孵化时间将重新计算!" ) ;
CMyBitmap::ShowString ( m_Pnt.x + 27,
m_Pnt.y + 46,
0xffff00,
g_objGameDataSet.GetStr ( 10687) ) ;//"确定要取出吗?" ) ;
break;
default:
break ;
}
}
}
BOOL CDlgConfirm::SetConfirmDlg(UINT uType, const char *strName, OBJID TargetID)
{
m_ConfirmEdtData.EnableWindow ( false ) ;
m_ConfirmEdtName.EnableWindow(false);
m_uType = uType ;
m_TargetID = TargetID ;
CDlgConfirm::SetButtons(0);
switch ( uType )
{
case TRADE_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case TEAMJOIN_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case TEAMINVITE_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case FACTIONJOIN_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case FACTIONINVITE_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, g_objGameDataSet.GetStr ( 10011 ) ) ;//"帮派" ) ;
strcat ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case MONEYDROP_CONFIRM:
{
m_nSkip = 0 ;
m_ConfirmEdtData.EnableWindow ( true ) ;
m_ConfirmEdtData.SetEditBkID("Edit150");
m_ConfirmEdtData.SetFocus () ;
}
break ;
case FACTIONADDALLY_CONFIRM:
{
m_TargetID = TargetID;
CPlayer* pPlayer = g_objPlayerSet.GetPlayer(m_TargetID);
if (pPlayer)
sprintf( m_strText,g_objGameDataSet.GetStr(10855),pPlayer->GetName()) ;
if ( m_strText != NULL )
{
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( ACTION_MSG_WIDTH*CMyBitmap::GetFontSize()/2 - ( float )len * CMyBitmap::GetFontSize()/2 - 86) / 2;
}
}
break;
case FACTIONADDENEMY_CONFIRM:
{
m_nSkip = 0;
m_ConfirmEdtName.EnableWindow ( true ) ;
m_ConfirmEdtName.SetEditBkID("Edit150");
m_ConfirmEdtName.SetFocus () ;
}
break;
case FACTIONSUB_CONFIRM:
{
m_nSkip = 0 ;
m_ConfirmEdtData.EnableWindow ( true ) ;
m_ConfirmEdtData.SetEditBkID("Edit150");
m_ConfirmEdtData.SetFocus () ;
}
break ;
case MPCBOOTHADD_CONFIRM:
{
m_nSkip = 0 ;
m_ConfirmEdtData.EnableWindow ( true ) ;
m_ConfirmEdtData.SetEditBkID("Edit150");
m_ConfirmEdtData.SetFocus () ;
}
break ;
case MPCBOOTHCHG_CONFIRM:
{
m_nSkip = 0 ;
m_ConfirmEdtData.EnableWindow ( true ) ;
m_ConfirmEdtData.SetEditBkID("Edit150");
m_ConfirmEdtData.SetFocus () ;
}
break ;
case FACTIONDEL_CONFIRM:
{
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
}
break ;
case BOOTHOPEN_CONFIRM:
break ;
case MPCCOURT_CONFIRM:
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
break ;
case IMPTITEM_CONFIRM:
m_TargetID = TargetID;
break;
case DROPITEM_CONFIRM:
m_TargetID = TargetID;
break;
case JOINDICE_CONFIRM:
break ;
case EXIT_CONFIRM:
break ;
case WARNING_CONFIRM:
break ;
case FRIENDADD_CONFIRM:
if ( strName != NULL )
{
strcpy( m_strText, strName ) ;
}
break ;
case FRIENDADDSUC_CONFIRM:
if ( strName != NULL )
{
strcpy( m_strText, strName ) ;
}
break ;
case ACTION_CONFIRM:
if ( strName != NULL )
{
strcpy( m_strText, strName ) ;
CDlgConfirm::SetButtons(1);
}
break ;
case SPLITITEM_CONFIRM:
{
m_nSkip = 0 ;
m_ConfirmEdtData.EnableWindow ( true ) ;
m_ConfirmEdtData.SetEditBkID("Edit150");
m_ConfirmEdtData.SetFocus () ;
}
break ;
case TEACHER_CONFIRM:
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
break;
case STUDENT_CONFIRM:
if ( strName )
{
strcpy ( m_strText, strName ) ;
int len = strlen ( m_strText ) ;
m_nLeftLeft = ( _DLG_WIDTH - ( float )len * CMyBitmap::GetFontSize()/2 ) / 2;
}
break;
}
CDlgConfirm::EnableWindow() ;
return true ;
}
void CDlgConfirm::OnChangeConfirmEdtData()
{
char strTemp[12] ;
m_ConfirmEdtData.GetWindowText ( strTemp, 12 ) ;
if ( !strcmp ( strTemp, "0" ) )
{
m_ConfirmEdtData.SetWindowText ( NULL ) ;
return ;
}
m_nSkip++ ;
if ( m_nSkip % 2 == 0 )
return ;
int nLength = m_ConfirmEdtData.GetWindowTextLength () ;
if ( nLength >= 3 )
{
char* pstrTemp = strchr ( strTemp, ',' ) ;
if ( pstrTemp != NULL )
{
char strText[12] ;
char strNum[12] ;
strncpy ( strText, strTemp, pstrTemp - strTemp ) ;
strText[pstrTemp - strTemp] = 0 ;
strcat ( strText, pstrTemp + 1 ) ;
pstrTemp = strchr ( strText, ',' ) ;
if ( pstrTemp != NULL )
{
strncpy ( strTemp, strText, pstrTemp - strText ) ;
strTemp[pstrTemp - strText] = 0 ;
strcat ( strTemp, pstrTemp + 1 ) ;
strcpy ( strNum, strTemp ) ;
}
else
strcpy ( strNum, strText ) ;
if ( strNum != NULL )
{
m_nEdtNum = atoi ( strNum ) ;
int nlen = strlen ( strNum ) ;
CString cstrText = strNum;
if ( nlen > 3 && nlen < 7 )
cstrText.Insert ( nlen - 3, ',' ) ;
else if ( nlen >= 7 )
{
cstrText.Insert ( nlen - 6, ',' ) ;
cstrText.Insert ( nlen - 2, ',' ) ;
}
m_ConfirmEdtData.SetWindowText ( cstrText ) ;
m_ConfirmEdtData.SetSel ( 12, 12 ) ;
}
}
else if ( strlen ( strTemp ) == 4 )
{
m_nEdtNum = atoi ( strTemp ) ;
CString cstrText = strTemp;
cstrText.Insert ( 1, ',' ) ;
m_ConfirmEdtData.SetWindowText ( cstrText ) ;
m_ConfirmEdtData.SetSel ( 5, 5 ) ;
}
else
{
m_nEdtNum = atoi ( strTemp ) ;
m_nSkip++ ;
}
}
else
{
m_nSkip = 0 ;
m_nEdtNum = atoi ( strTemp ) ;
}
}
void CDlgConfirm::SetButtons(int nMode)
{
switch(nMode)
{
case 0:
m_ConfirmBtnCancel.EnableWindow();
m_ConfirmBtnOk.EnableWindow();
break;
case 1:
m_ConfirmBtnCancel.EnableWindow(false);
m_ConfirmBtnOk.EnableWindow();
break;
default:
break;
}
}
void CDlgConfirm::ShowConfirmTextMLine()
{
int nDescLine = 0 ;
int nCharIndex[32] = {0};
nCharIndex[0] = 0;
int nSingle = 0;
int nLineNum = 0;
for ( int i = 0; i < strlen ( m_strText ); i++ )
{
if ( CMyBitmap::IsDBCSLeadByte( m_strText, i ) )
{
nLineNum += 2;
i++;
}
else
{
nSingle++;
nLineNum++;
}
if ( nLineNum >= ACTION_MSG_WIDTH )
{
//----------Begin the english version's process(jump line)----------//
if ( strcmp( g_objGameDataSet.GetVersionInfo(), "English" ) == 0 )
{
// Search the last word
for ( int j = i; j >= 0; j-- )
{
if ( m_strText[j] == ' ' )
{
i -= i - j;
break;
}
}
}
//----------End the english version's process(jump line)----------//
if ( nSingle % 2 == 0 )
{
nSingle = 0;
nLineNum = 0;
nCharIndex[nDescLine] = i + 1;
nDescLine++;
}
else
{
i -= nLineNum - 2;
nSingle = 0;
nLineNum = 0;
nCharIndex[nDescLine] = i - ( nLineNum - ACTION_MSG_WIDTH );
nDescLine++;
}
}
}
if ( nLineNum < ACTION_MSG_WIDTH && nLineNum != 0 )
{
nDescLine++ ;
nCharIndex[nDescLine] = i;
}
DWORD STRCOLOR_YELLOW = 0xffff00;
CMySize psizeFont;
CMyBitmap::GetFontSize(psizeFont);
char strTemp[256] ;
int nOffset = 0;
for (i = 0; i < nDescLine; i++ )
{
strncpy ( strTemp, m_strText + nCharIndex[i], nCharIndex[i + 1] - nCharIndex[i] );
strTemp[nCharIndex[i + 1] - nCharIndex[i]] = '\0';
if (i == 0)
{
CMyBitmap::ShowString ( m_Pnt.x - 86,
m_Pnt.y + 13 + nOffset,
0xffff00,
strTemp ) ;
}
else
CMyBitmap::ShowString ( m_Pnt.x - 104,
m_Pnt.y + 13 + nOffset,
0xffff00,
strTemp ) ;
nOffset += psizeFont.iHeight + 2;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -