Ejemplo n.º 1
0
void CChatRoomDlg::SendChatMsg()
{
	CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_EDIT );
	
	if( pCtrl->GetControlType() != CTRL_EDITBOX )
		return;

	CTEditBox* pEditBox = (CTEditBox*)pCtrl;

	if( pEditBox->IsFocus() )
	{
		if( CChatRoom::GetInstance().GetState() == CChatRoom::STATE_ACTIVATED )
		{
			char* pszMsg = pEditBox->get_text();
			if( pszMsg && strlen( pszMsg ) >= 1 )
				g_pNet->Send_cli_CHATROOM_MSG( pszMsg );
		}
		else
		{
			AddChatMsg(pEditBox->get_text(), g_dwWHITE );	
		}
		pEditBox->clear_text();

		///내가 채팅 메세지를 보내면 항상 리스트는 맨밑으로 이동
		CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_LIST);
		if( pCtrl )
		{
			if( pCtrl->GetControlType() == CTRL_ZLISTBOX)
			{
				CZListBox* pListBox = (CZListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}
			else
			{
				CTListBox* pListBox = (CTListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}			
		}
	}
}
Ejemplo n.º 2
0
void CCreateAvata::OnLButtonUp( unsigned iProcID )
{
	switch( iProcID )
	{
	case IID_BTN_OK:
		{
			int iSex		= atoi( m_mapSex[m_iSelectedSex].m_strValue.c_str() );
			int iBoneStone	= atoi( m_mapBirthStone[m_iSelectedBirthStone].m_strValue.c_str() );
			int iHair		= atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str() );
			int iFace		= atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str() );
			int iStartPos   = atoi( m_mapStartPos[m_iSelectedStartPos].m_strValue.c_str() );

			
			char szName[255] ={0};

			CWinCtrl* pCtrl = Find( IID_EDITBOX );
			if( pCtrl == NULL || pCtrl->GetControlType() != CTRL_EDITBOX )
			{
				LogString (LOG_NORMAL, "Not Found EditBox(ID-%d) in CCreateAvata::OnLButtonUp\n",IID_EDITBOX );
				return ;
			}
			CTEditBox* pEditBox = ( CTEditBox* ) pCtrl;

			strcpy( szName, pEditBox->get_text() );


			if( CFilterWord::GetInstance().IsValidName( szName) )
			{
				CreateAvata( szName, 0, iSex, iBoneStone, iHair, iFace, iStartPos );
			}
			else
			{
				g_EUILobby.ShowMsgBox(STR_INVALID_CHARACTER_NAME,CTMsgBox::BT_OK ,true ,GetDialogType() );
				pEditBox->clear_text();
			}
		
		}
		break;
	case IID_BTN_CANCEL:
		CGame::GetInstance().ChangeState( CGame::GS_SELECTAVATAR );

//		g_EUILobby.CreateServerListDlg();
		break;
	case IID_BTN_LEFT_SEX:
		--m_iSelectedSex;
		if( m_iSelectedSex < 0 )
			m_iSelectedSex = m_mapSex.size() - 1;
		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeSex", ZZ_PARAM_INT, 
			atoi(m_mapSex[m_iSelectedSex].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_FACE:
		--m_iSelectedFace;
		if( m_iSelectedFace < 0 )
			m_iSelectedFace = m_mapFace.size() - 1;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeFace", ZZ_PARAM_INT, 
			atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_HAIR:
		--m_iSelectedHair;
		if( m_iSelectedHair < 0 )
			m_iSelectedHair = m_mapHair.size() - 1 ;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeHair", ZZ_PARAM_INT, 
			atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_STARTPOS:
		--m_iSelectedStartPos;
		if( m_iSelectedStartPos < 0 )
			m_iSelectedStartPos = m_mapStartPos.size() - 1;
		break;
	case IID_BTN_LEFT_BIRTHSTONE:
		--m_iSelectedBirthStone;
		if( m_iSelectedBirthStone < 0 )
			m_iSelectedBirthStone = m_mapBirthStone.size() - 1;
		break;
	case IID_BTN_RIGHT_SEX:
		++m_iSelectedSex;
		if( m_iSelectedSex >= m_mapSex.size() )
			m_iSelectedSex = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeSex", ZZ_PARAM_INT, 
			atoi(m_mapSex[m_iSelectedSex].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_FACE:
		++m_iSelectedFace;
		if( m_iSelectedFace >= m_mapFace.size() )
			m_iSelectedFace = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeFace", ZZ_PARAM_INT, 
			atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_HAIR:
		++m_iSelectedHair;
		if( m_iSelectedHair >= m_mapHair.size() )
			m_iSelectedHair = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeHair", ZZ_PARAM_INT, 
			atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_STARTPOS:
		++m_iSelectedStartPos;
		if( m_iSelectedStartPos >= m_mapStartPos.size() )
			m_iSelectedStartPos = 0;
		break;
	case IID_BTN_RIGHT_BIRTHSTONE:
		++m_iSelectedBirthStone;
		if( m_iSelectedBirthStone >= m_mapBirthStone.size() )
			m_iSelectedBirthStone = 0;
		break;
	default:
		break;
	}
}
Ejemplo n.º 3
0
void CClanOrganizeDlg::OrganizeClan()
{
	//조건 체크
	//1. 내가 다른 클랜에 가입하지 않았다.
	//2. 돈이나..레벨등의 조건에 만족한다.

	bool bCheckMakeClan = false;
/*
	if(CCountry::GetSingleton().IsJapan())
	{
	// 05.11.02 : 김주현 - 일본일 경우엔 100000 내면 된다~!
        if(g_pAVATAR->Get_LEVEL() >= 30 && g_pAVATAR->Get_MONEY() >= 100000 )
		{
			bCheckMakeClan = true;
		}
	}
	else
	{
*/
	// 클랜 창설 비용.
	if(g_pAVATAR->Get_LEVEL() >= 30 && g_pAVATAR->Get_MONEY() >= 1000000)
	{
		bCheckMakeClan = true;
	}
//	}
	if( bCheckMakeClan )
	{

		CWinCtrl* pCtrl = Find( IID_EDIT_TITLE );
		assert( pCtrl && pCtrl->GetControlType() == CTRL_EDITBOX );
		if( pCtrl == NULL ) return;
		if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;

		CTEditBox* pEditBox = (CTEditBox*)pCtrl;
		char* pszTitle = pEditBox->get_text();
		if( pszTitle == NULL ) return;
		if( !pszTitle[0] ) return;

		if( !CFilterWord::GetInstance().IsValidName( pszTitle ) )
		{
			g_itMGR.OpenMsgBox(STR_INVALID_CHARACTER_NAME );
			pEditBox->clear_text();
			return;
		}



		pCtrl = Find( IID_EDIT_SLOGAN );
		if( pCtrl == NULL ) return;
		if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;

		pEditBox = (CTEditBox*)pCtrl;
		char* pszSlogan = pEditBox->get_text();

		if( pszSlogan == NULL )
		{
			g_itMGR.OpenMsgBox( STR_CLAN_INPUT_SLOGAN );
			return;
		}

		if( !pszSlogan[0] )
		{
			g_itMGR.OpenMsgBox( STR_CLAN_INPUT_SLOGAN );
			return;
		}

		g_pNet->Send_cli_CLAN_CREATE( (WORD)m_iSelectedClanBack,(WORD)m_iSelectedClanCenter, pszTitle, pszSlogan );

	}
	else
	{
		std::string strMsg = STR_CLAN_RESULT_CLAN_CREATE_NO_CONDITION;
		strMsg.append(", ");
		strMsg.append( STR_CLAN_CREATE_CONDITION );
		g_itMGR.OpenMsgBox( strMsg.c_str() );
	}
}