#include "SunClientPrecompiledHeader.h" #ifdef _NA_008405_20150716_MINIGAME_BINGO #include "uiMiniGameMan.h" #include "InterfaceManager.h" #include "GlobalFunc.h" #include "uiBingoGameDialog/uiBingoGameDialog.h" const DWORD IM_MINIGAME_MANAGER::BINGOGAME_DIALOG = StrToWzID("5001"); uiMiniGameMan::uiMiniGameMan(InterfaceManager* ui_manager) : uiBaseMan(ui_manager), bingo_game_dialog_(NULL) { } //------------------------------------------------------------------------------ /** */ uiMiniGameMan::~uiMiniGameMan(void) { } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::OnInitialize() { bingo_game_dialog_ = CreateUIDialog(IM_MINIGAME_MANAGER::BINGOGAME_DIALOG, "Data\\Interface\\5_1_Bingo.iwz", this, TRUE); assert(bingo_game_dialog_); } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::ToggleBingoGameDialog() { if ( bingo_game_dialog_ == NULL ) { return; } if ( bingo_game_dialog_->IsVisibleWindow() == TRUE ) { bingo_game_dialog_->ShowInterface(FALSE); } else { bingo_game_dialog_->ShowInterface(TRUE); } } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::NetworkProc( MSG_BASE* message ) { switch ( message->m_byCategory ) { case CG_CHARINFO: { switch ( message->m_byProtocol ) { case CG_CHARINFO_MINIGAME_BINGO_INFO_PACKET: { OnRecv_CG_CHARINFO_MINIGAME_BINGO_INFO_PACKET(message); } break; case CG_CHARINFO_MINIGAME_NAK: { OnRecv_CG_CHARINFO_MINIGAME_NAK(message); } break; } } break; } } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::OnRecv_CG_CHARINFO_MINIGAME_BINGO_INFO_PACKET( MSG_BASE* message ) { MSG_CG_CHARINFO_MINIGAME_BINGO_INFO_PACKET* recv_packet = static_cast(message); if ( bingo_game_dialog_ ) { bingo_game_dialog_->BingoGameInfoSetting(recv_packet->minigame_bingo_infos); } } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::OnRecv_CG_CHARINFO_MINIGAME_NAK( MSG_BASE* message ) { MSG_CG_CHARINFO_MINIGAME_NAK* recv_packet = static_cast(message); int string_code = 0; switch ( recv_packet->result_code ) { case RC::RC_MINIGAME_INVAILD_TYPE: { // 41859 : ¾Ë ¼ö ¾ø´Â ¹Ì´Ï°ÔÀÓ Å¸ÀÔ´Ï´Ù. string_code = 41859; } break; case RC::RC_MINIGAME_NOT_OPEN_TIME: { // 41860 : ¹Ì´Ï°ÔÀÓ ¿ÀÇ ½Ã°£ÀÌ ¾Æ´Õ´Ï´Ù. string_code = 41860; } break; case RC::RC_MINIGAME_BINGO_INVALID_ITEM_INFO: { // 41861 : ºù°í ¾ÆÀÌÅÛÁ¤º¸°¡ Àß ¸ø µÇ¾ú½À´Ï´Ù. string_code = 41861; } break; case RC::RC_MINIGAME_BINGO_ALREADY_FILLED_NUMBER: { // 41855 : ÀÌ¹Ì µî·ÏÀÌ ¿Ï·áµÈ ¼ýÀÚÀÔ´Ï´Ù. string_code = 41855; } break; case RC::RC_MINIGAME_BINGO_NOT_EXIST_NUMBER: { // 41854 : ÇöÀç ºù°íÆÇ¿¡ ¾ø´Â ¼ýÀÚÀÔ´Ï´Ù. string_code = 41854; } break; case RC::RC_MINIGAME_BINGO_REWARD_FAILED: { // 41862 : ºù°í º¸»ó¹Þ±â¿¡ ½ÇÆÐÇÏ¿´½À´Ï´Ù. string_code = 41862; } break; } if ( string_code != 0 ) { GlobalFunc::OutputMsg_Error(eOUTPUT_MSG_CENTER_SHOW, g_InterfaceManager.GetInterfaceString(string_code)); } } //------------------------------------------------------------------------------ /** */ void uiMiniGameMan::HotKeyToggleMiniGameBingoDialog() { uiBingoGameDialog* ui_bingo_game_dialog = GET_CAST_DIALOG(uiBingoGameDialog, IM_MINIGAME_MANAGER::BINGOGAME_DIALOG); if (ui_bingo_game_dialog) { if ( ui_bingo_game_dialog->get_is_enable_() == false ) { return; } } uiMiniGameMan* ui_mini_game_manager = GET_DIALOG_MANAGER(uiMiniGameMan, UIMAN_MINIGAME); if ( ui_mini_game_manager ) { ui_mini_game_manager->ToggleBingoGameDialog(); } } #endif // _NA_008405_20150716_MINIGAME_BINGO