Commit 74f139f0 authored by mercury233's avatar mercury233

gu

parent aafa4987
...@@ -711,7 +711,7 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) { ...@@ -711,7 +711,7 @@ bool DeckBuilder::OnEvent(const irr::SEvent& event) {
|| deckManager.current_deck.extra.size() != pre_extrac || deckManager.current_deck.extra.size() != pre_extrac
|| deckManager.current_deck.side.size() != pre_sidec) { || deckManager.current_deck.side.size() != pre_sidec) {
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1410)); mainGame->addMessageBox(L"", dataManager.GetSysString(1410));
break; break;
} }
mainGame->ClearCardInfo(); mainGame->ClearCardInfo();
......
...@@ -84,7 +84,7 @@ void DuelClient::ConnectTimeout(evutil_socket_t fd, short events, void* arg) { ...@@ -84,7 +84,7 @@ void DuelClient::ConnectTimeout(evutil_socket_t fd, short events, void* arg) {
else if(!bot_mode && !mainGame->wLanWindow->isVisible()) else if(!bot_mode && !mainGame->wLanWindow->isVisible())
mainGame->ShowElement(mainGame->wLanWindow); mainGame->ShowElement(mainGame->wLanWindow);
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1400)); mainGame->addMessageBox(L"", dataManager.GetSysString(1400));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
} }
event_base_loopbreak(client_base); event_base_loopbreak(client_base);
...@@ -175,7 +175,7 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) { ...@@ -175,7 +175,7 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) {
else if(!bot_mode && !mainGame->wLanWindow->isVisible()) else if(!bot_mode && !mainGame->wLanWindow->isVisible())
mainGame->ShowElement(mainGame->wLanWindow); mainGame->ShowElement(mainGame->wLanWindow);
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1400)); mainGame->addMessageBox(L"", dataManager.GetSysString(1400));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
} else if(connect_state == 0x7) { } else if(connect_state == 0x7) {
if(!mainGame->dInfo.isStarted && !mainGame->is_building) { if(!mainGame->dInfo.isStarted && !mainGame->is_building) {
...@@ -193,13 +193,13 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) { ...@@ -193,13 +193,13 @@ void DuelClient::ClientEvent(bufferevent *bev, short events, void *ctx) {
mainGame->wChat->setVisible(false); mainGame->wChat->setVisible(false);
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
if(events & BEV_EVENT_EOF) if(events & BEV_EVENT_EOF)
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1401)); mainGame->addMessageBox(L"", dataManager.GetSysString(1401));
else mainGame->env->addMessageBox(L"", dataManager.GetSysString(1402)); else mainGame->addMessageBox(L"", dataManager.GetSysString(1402));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
} else { } else {
mainGame->gMutex.lock(); mainGame->gMutex.lock();
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1502)); mainGame->addMessageBox(L"", dataManager.GetSysString(1502));
mainGame->btnCreateHost->setEnabled(true); mainGame->btnCreateHost->setEnabled(true);
mainGame->btnJoinHost->setEnabled(true); mainGame->btnJoinHost->setEnabled(true);
mainGame->btnJoinCancel->setEnabled(true); mainGame->btnJoinCancel->setEnabled(true);
...@@ -255,11 +255,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) { ...@@ -255,11 +255,11 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
mainGame->gMutex.lock(); mainGame->gMutex.lock();
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
if(pkt->code == 0) if(pkt->code == 0)
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1403)); mainGame->addMessageBox(L"", dataManager.GetSysString(1403));
else if(pkt->code == 1) else if(pkt->code == 1)
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1404)); mainGame->addMessageBox(L"", dataManager.GetSysString(1404));
else if(pkt->code == 2) else if(pkt->code == 2)
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1405)); mainGame->addMessageBox(L"", dataManager.GetSysString(1405));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
event_base_loopbreak(client_base); event_base_loopbreak(client_base);
break; break;
...@@ -312,7 +312,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) { ...@@ -312,7 +312,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
} }
} }
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", msgbuf); mainGame->addMessageBox(L"", msgbuf);
mainGame->cbCategorySelect->setEnabled(true); mainGame->cbCategorySelect->setEnabled(true);
mainGame->cbDeckSelect->setEnabled(true); mainGame->cbDeckSelect->setEnabled(true);
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
...@@ -321,7 +321,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) { ...@@ -321,7 +321,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
case ERRMSG_SIDEERROR: { case ERRMSG_SIDEERROR: {
mainGame->gMutex.lock(); mainGame->gMutex.lock();
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1408)); mainGame->addMessageBox(L"", dataManager.GetSysString(1408));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
break; break;
} }
...@@ -335,7 +335,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) { ...@@ -335,7 +335,7 @@ void DuelClient::HandleSTOCPacketLan(char* data, unsigned int len) {
wchar_t msgbuf[256]; wchar_t msgbuf[256];
myswprintf(msgbuf, dataManager.GetSysString(1411), pkt->code >> 12, (pkt->code >> 4) & 0xff, pkt->code & 0xf); myswprintf(msgbuf, dataManager.GetSysString(1411), pkt->code >> 12, (pkt->code >> 4) & 0xff, pkt->code & 0xf);
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", msgbuf); mainGame->addMessageBox(L"", msgbuf);
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
event_base_loopbreak(client_base); event_base_loopbreak(client_base);
break; break;
......
...@@ -1933,6 +1933,12 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) { ...@@ -1933,6 +1933,12 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) {
switch(event.EventType) { switch(event.EventType) {
case irr::EET_GUI_EVENT: { case irr::EET_GUI_EVENT: {
s32 id = event.GUIEvent.Caller->getID(); s32 id = event.GUIEvent.Caller->getID();
if(mainGame->wSysMessage->isVisible() && id != BUTTON_SYS_MSG_OK) {
mainGame->wSysMessage->getParent()->bringToFront(mainGame->wSysMessage);
//mainGame->env->setFocus(mainGame->wSysMessage);
return true;
break;
}
switch(event.GUIEvent.EventType) { switch(event.GUIEvent.EventType) {
//dont merge these cases //dont merge these cases
case irr::gui::EGET_BUTTON_CLICKED: { case irr::gui::EGET_BUTTON_CLICKED: {
...@@ -1944,6 +1950,12 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) { ...@@ -1944,6 +1950,12 @@ bool ClientField::OnCommonEvent(const irr::SEvent& event) {
return true; return true;
break; break;
} }
case BUTTON_SYS_MSG_OK: {
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::BUTTON);
mainGame->HideElement(mainGame->wSysMessage);
return true;
break;
}
} }
break; break;
} }
......
...@@ -578,6 +578,15 @@ bool Game::Initialize(ANDROID_APP app) { ...@@ -578,6 +578,15 @@ bool Game::Initialize(ANDROID_APP app) {
stMessage->setTextAlignment(irr::gui::EGUIA_UPPERLEFT, irr::gui::EGUIA_CENTER); stMessage->setTextAlignment(irr::gui::EGUIA_UPPERLEFT, irr::gui::EGUIA_CENTER);
btnMsgOK = env->addButton(rect<s32>(130 * xScale, 120 * yScale, 260 * xScale, 170 * yScale), wMessage, BUTTON_MSG_OK, dataManager.GetSysString(1211)); btnMsgOK = env->addButton(rect<s32>(130 * xScale, 120 * yScale, 260 * xScale, 170 * yScale), wMessage, BUTTON_MSG_OK, dataManager.GetSysString(1211));
ChangeToIGUIImageButton(btnMsgOK, imageManager.tButton_S, imageManager.tButton_S_pressed); ChangeToIGUIImageButton(btnMsgOK, imageManager.tButton_S, imageManager.tButton_S_pressed);
//system message (370)
wSysMessage = env->addWindow(rect<s32>(470 * xScale, 180 * yScale, 860 * xScale, 360 * yScale), false, dataManager.GetSysString(1216));
wSysMessage->getCloseButton()->setVisible(false);
wSysMessage->setVisible(false);
ChangeToIGUIImageWindow(wSysMessage, bgSysMessage, imageManager.tDialog_L);
stSysMessage = env->addStaticText(L"", rect<s32>(20 * xScale, 20 * yScale, 370 * xScale, 100 * yScale), false, true, wSysMessage, -1, false);
stSysMessage->setTextAlignment(irr::gui::EGUIA_UPPERLEFT, irr::gui::EGUIA_CENTER);
btnSysMsgOK = env->addButton(rect<s32>(130 * xScale, 120 * yScale, 260 * xScale, 170 * yScale), wSysMessage, BUTTON_SYS_MSG_OK, dataManager.GetSysString(1211));
ChangeToIGUIImageButton(btnSysMsgOK, imageManager.tButton_S, imageManager.tButton_S_pressed);
//auto fade message (370) //auto fade message (370)
wACMessage = env->addWindow(rect<s32>(490 * xScale, 240 * yScale, 840 * xScale, 300 * yScale), false, L""); wACMessage = env->addWindow(rect<s32>(490 * xScale, 240 * yScale, 840 * xScale, 300 * yScale), false, L"");
wACMessage->getCloseButton()->setVisible(false); wACMessage->getCloseButton()->setVisible(false);
...@@ -1909,6 +1918,12 @@ void Game::ErrorLog(const char* msg) { ...@@ -1909,6 +1918,12 @@ void Game::ErrorLog(const char* msg) {
fprintf(fp, "[%s]%s\n", timebuf, msg); fprintf(fp, "[%s]%s\n", timebuf, msg);
fclose(fp); fclose(fp);
} }
void Game::addMessageBox(const wchar_t* caption, const wchar_t* text) {
SetStaticText(stSysMessage, 370 * xScale, textFont, text);
wSysMessage->setVisible(true);
wSysMessage->getParent()->bringToFront(wSysMessage);
//env->setFocus(wSysMessage);
}
void Game::ClearTextures() { void Game::ClearTextures() {
matManager.mCard.setTexture(0, 0); matManager.mCard.setTexture(0, 0);
imgCard->setImage(imageManager.tCover[0]); imgCard->setImage(imageManager.tCover[0]);
......
...@@ -166,6 +166,7 @@ public: ...@@ -166,6 +166,7 @@ public:
void ClearChatMsg(); void ClearChatMsg();
void AddDebugMsg(const char* msgbuf); void AddDebugMsg(const char* msgbuf);
void ErrorLog(const char* msgbuf); void ErrorLog(const char* msgbuf);
void addMessageBox(const wchar_t* caption, const wchar_t* text);
void initUtils(); void initUtils();
void ClearTextures(); void ClearTextures();
void CloseGameButtons(); void CloseGameButtons();
...@@ -415,6 +416,11 @@ public: ...@@ -415,6 +416,11 @@ public:
irr::gui::IGUIImage* bgMessage; irr::gui::IGUIImage* bgMessage;
irr::gui::IGUIStaticText* stMessage; irr::gui::IGUIStaticText* stMessage;
irr::gui::IGUIButton* btnMsgOK;// irr::gui::IGUIButton* btnMsgOK;//
//system message
irr::gui::IGUIWindow* wSysMessage;
irr::gui::IGUIImage* bgSysMessage;
irr::gui::IGUIStaticText* stSysMessage;
irr::gui::IGUIButton* btnSysMsgOK;
//auto close message //auto close message
irr::gui::IGUIWindow* wACMessage; irr::gui::IGUIWindow* wACMessage;
irr::gui::IGUIStaticText* stACMessage; irr::gui::IGUIStaticText* stACMessage;
...@@ -745,6 +751,7 @@ private: ...@@ -745,6 +751,7 @@ private:
#define BUTTON_MSG_OK 200 #define BUTTON_MSG_OK 200
#define BUTTON_YES 201 #define BUTTON_YES 201
#define BUTTON_NO 202 #define BUTTON_NO 202
#define BUTTON_SYS_MSG_OK 203
#define BUTTON_HAND1 205 #define BUTTON_HAND1 205
#define BUTTON_HAND2 206 #define BUTTON_HAND2 206
#define BUTTON_HAND3 207 #define BUTTON_HAND3 207
......
...@@ -98,7 +98,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -98,7 +98,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
if(status != 0) { if(status != 0) {
mainGame->gMutex.lock(); mainGame->gMutex.lock();
mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO); mainGame->soundManager->PlaySoundEffect(SoundManager::SFX::INFO);
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1412)); mainGame->addMessageBox(L"", dataManager.GetSysString(1412));
mainGame->gMutex.unlock(); mainGame->gMutex.unlock();
break; break;
} else { } else {
...@@ -474,7 +474,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) { ...@@ -474,7 +474,7 @@ bool MenuHandler::OnEvent(const irr::SEvent& event) {
if(Replay::RenameReplay(mainGame->lstReplayList->getListItem(prev_sel), newname)) { if(Replay::RenameReplay(mainGame->lstReplayList->getListItem(prev_sel), newname)) {
mainGame->lstReplayList->setItem(prev_sel, newname, -1); mainGame->lstReplayList->setItem(prev_sel, newname, -1);
} else { } else {
mainGame->env->addMessageBox(L"", dataManager.GetSysString(1365)); mainGame->addMessageBox(L"", dataManager.GetSysString(1365));
} }
} }
prev_operation = 0; prev_operation = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment