158 lines
3.9 KiB
C++
158 lines
3.9 KiB
C++
|
|
|
|
#include "stdafx.h"
|
|
#include "SUIPartyCreateWnd.h"
|
|
#include "SGameManager.h"
|
|
#include "SGameInterface.h"
|
|
#include "SPlayerInfoMgr.h"
|
|
#include "KUIControlButton.h"
|
|
#include "KUIControlEdit.h"
|
|
|
|
bool SUIPartyCreate::InitControls( KPoint kPos )
|
|
{
|
|
return SUIWnd::InitControls( kPos );
|
|
}
|
|
|
|
bool SUIPartyCreate::InitData( bool bReload /*= false*/ )
|
|
{
|
|
SetCustomMovingRect( KRect( 0, 0, 350, 24 ) );
|
|
|
|
KUIControlCheck * pCheck00 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_00" ));
|
|
KUIControlCheck * pCheck01 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_01" ));
|
|
KUIControlCheck * pCheck02 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_02" ));
|
|
|
|
pCheck00->SetCheck( true );
|
|
pCheck01->SetCheck( false );
|
|
pCheck02->SetCheck( false );
|
|
|
|
return SUIWnd::InitData( bReload );
|
|
}
|
|
|
|
void SUIPartyCreate::PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam )
|
|
{
|
|
static bool bCheck00 = false;
|
|
static bool bCheck01 = false;
|
|
static bool bCheck02 = false;
|
|
|
|
switch( nMessage )
|
|
{
|
|
case KUI_MESSAGE::KBUTTON_CLICK:
|
|
{
|
|
if( ::_stricmp( lpszControlID, "button_close" ) == 0 ||
|
|
::_stricmp( lpszControlID, "button_cancel" ) == 0 )
|
|
{
|
|
m_pGameManager->PostMsgAtDynamic( new SIMSG_SHOW_UIWINDOW( SIMSG_TOGGLE_UIWINDOW::UIWINDOW_PARTY_CREATE, false ) );
|
|
}
|
|
else if( ::_stricmp( lpszControlID, "button_ok" ) == 0 )
|
|
{
|
|
KUIControlEdit * pEdit = dynamicCast<KUIControlEdit*>(GetChild( "edit_party" ));
|
|
if( !pEdit ) return;
|
|
|
|
SMSG_PARTY_COMMAND* pMsg = new SMSG_PARTY_COMMAND;
|
|
pMsg->mode = SMSG_PARTY_COMMAND::PARTY_CREATE;
|
|
// pMsg->strName = "party";
|
|
pMsg->strName = pEdit->GetText();
|
|
|
|
//파티 이름을 넣어야 함.
|
|
if( pMsg->strName.length() <= 0 )
|
|
{
|
|
SAFE_DELETE( pMsg );
|
|
return;
|
|
}
|
|
|
|
m_pGameManager->PostMsgAtDynamic( pMsg );
|
|
|
|
//닫기
|
|
m_pGameManager->PostMsgAtDynamic( new SIMSG_SHOW_UIWINDOW( SIMSG_TOGGLE_UIWINDOW::UIWINDOW_PARTY_CREATE, false ) );
|
|
}
|
|
}
|
|
break;
|
|
|
|
case KUI_MESSAGE::KCHECK_CHANGE:
|
|
{
|
|
m_pGameManager->StartSound( "ui_button_click.wav" );
|
|
|
|
KUIControlCheck * pCheck00 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_00" ));
|
|
KUIControlCheck * pCheck01 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_01" ));
|
|
KUIControlCheck * pCheck02 = dynamicCast<KUIControlCheck*>(GetChild( "button_check_02" ));
|
|
|
|
if( !pCheck00 || !pCheck01 || !pCheck02 ) return;
|
|
|
|
//각자
|
|
if( ::_stricmp( lpszControlID, "button_check_00" ) == 0 )
|
|
{
|
|
if( pCheck00->GetCheck() )
|
|
{
|
|
pCheck01->SetCheck( false );
|
|
pCheck02->SetCheck( false );
|
|
|
|
bCheck00 = true;
|
|
bCheck01 = false;
|
|
bCheck02 = false;
|
|
}
|
|
else
|
|
{
|
|
if (bCheck00)
|
|
pCheck00->SetCheck( true );
|
|
}
|
|
}
|
|
//순차
|
|
else if( ::_stricmp( lpszControlID, "button_check_01" ) == 0 )
|
|
{
|
|
if( pCheck01->GetCheck() )
|
|
{
|
|
pCheck00->SetCheck( false );
|
|
pCheck02->SetCheck( false );
|
|
|
|
bCheck00 = false;
|
|
bCheck01 = true;
|
|
bCheck02 = false;
|
|
}
|
|
else
|
|
{
|
|
if (bCheck01)
|
|
pCheck01->SetCheck( true );
|
|
}
|
|
}
|
|
//랜덤
|
|
else if( ::_stricmp( lpszControlID, "button_check_02" ) == 0 )
|
|
{
|
|
if( pCheck02->GetCheck() )
|
|
{
|
|
pCheck00->SetCheck( false );
|
|
pCheck01->SetCheck( false );
|
|
|
|
bCheck00 = false;
|
|
bCheck01 = false;
|
|
bCheck02 = true;
|
|
}
|
|
else
|
|
{
|
|
if (bCheck02)
|
|
pCheck02->SetCheck( true );
|
|
}
|
|
}
|
|
}
|
|
break;
|
|
|
|
case KUI_MESSAGE::KGENWND_MOVE: // 윈도우 이동
|
|
{
|
|
LimitMoveWnd(); // 게임 외부로 나가지 못하게 제한
|
|
}
|
|
break;
|
|
}
|
|
|
|
SUIWnd::PumpUpMessage( lpszControlID, nMessage, lparam, wparam );
|
|
}
|
|
|
|
void SUIPartyCreate::ProcMsgAtStatic( SGameMessage* pMsg )
|
|
{
|
|
|
|
}
|
|
|
|
void SUIPartyCreate::OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd/* = true*/ )
|
|
{
|
|
if( bOpen )
|
|
m_pGameManager->StartSound( "ui_popup_window01.wav" );
|
|
else m_pGameManager->StartSound( "ui_button_click.wav" );
|
|
} |