From 8314d4c9ae9741640f75fd5800b42b378014780d Mon Sep 17 00:00:00 2001 From: Anthony Calosa Date: Mon, 18 Jul 2016 09:24:28 +0800 Subject: [PATCH] update GameStateMenu as Zeth suggested --- .../mtg/bin/Res/graphics/button_shoulder.png | Bin 3359 -> 17792 bytes projects/mtg/src/GameStateMenu.cpp | 25 ++++++++++++++---- projects/mtg/src/MenuItem.cpp | 25 +++++++++++++----- projects/mtg/src/TextScroller.cpp | 13 +-------- 4 files changed, 40 insertions(+), 23 deletions(-) diff --git a/projects/mtg/bin/Res/graphics/button_shoulder.png b/projects/mtg/bin/Res/graphics/button_shoulder.png index 631fcbc3bf1691d7884382240da9ff9b8690fe5d..b254e4d3233d9b0c01a27b8b66074c8a60de8b71 100644 GIT binary patch literal 17792 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 Wo8->?z)#(v2{_oeSQlFP?EV*d7g|mL delta 659 zcmV;E0&M+&ivgb+A&F2z@;j(q!3lasMTE`I_#Nklcn9nNzvum^=-)SimkSoX7l9|h_x{0M`X2yy z#-d@7wAPQ_1K@Sk^c?`umY|-cfqQ)r526BCrdF^9ya3(;r)LGQjM@S|0vC>I^~($Z zU?Y`E?VF~#9s~iSSAS>@m_>0Km^5wnk|l&VW18lB&+~2q_S8Y>IH#3Tu?8@{o?`2U zVHj`P?e>iz2!hf5#$k?+J0Hi9IZ7lLhOz1U{$nZS(<1>WrG_~&?tI)JL;(Ph&1Sco z&E}_GuXhjvAcPnehf$}erNBu;7d0Dnj+b<46QoSz2cq&1Hn z187Pq(&_XS+qSO*pNDO*SS+?%t=2FC;#>e{0W@y&U@fJjUa#Z2?%hxXIF7SZDwS^M z^ZE5mCWEGFv5kOv)5djOYPA~GY8Bu2zk~qjy8gp)oLl8``9m(3%jvovst0i_fKdT> zo`-GQbi3VMT~ya!O>_anFurvRetrieveTempQuad("button_shoulder.png"); + JQuadPtr jq = WResourceManager::Instance()->RetrieveTempQuad("button_shoulder.png");//I set this transparent, don't remove button_shoulder.png if (!jq.get()) return; jq->SetHFlip(false); + jq->mWidth = 64.f; + jq->mHeight = 32.f; jq->SetColor(ARGB(abs(255),255,255,255)); mFont = WResourceManager::Instance()->GetWFont(Fonts::OPTION_FONT); vectorotherItems = gModRules.menu.other; @@ -455,7 +457,7 @@ void GameStateMenu::ensureMGuiController() mGuiController->Add(NEW OtherMenuItem( otherItems[0]->mActionId, mFont, otherItems[0]->mDisplayName, - SCREEN_WIDTH - 64, 2, + SCREEN_WIDTH - 64, SCREEN_HEIGHT_F-26.f, jq.get(), jq.get(), otherItems[0]->mKey, false )); } @@ -733,8 +735,21 @@ void GameStateMenu::RenderTopMenu() WFont * mFont = WResourceManager::Instance()->GetWFont(Fonts::MAIN_FONT); mFont->SetScale(DEFAULT_MAIN_FONT_SCALE); - mFont->SetColor(ARGB(128,255,255,255)); - mFont->DrawString(GAME_VERSION, rightTextPos, 5, JGETEXT_RIGHT); + //mFont->SetColor(ARGB(128,255,255,255)); + mFont->SetColor(ARGB(220,255,255,255)); + /*//tooltip + JQuadPtr tooltips; + tooltips = WResourceManager::Instance()->RetrieveTempQuad("tooltips.png");//new graphics tooltips + if (tooltips.get()) + { + float xscale = (mFont->GetStringWidth(GAME_VERSION)+(mFont->GetStringWidth(GAME_VERSION)/18)) / tooltips->mWidth; + float yscale = mFont->GetHeight() / tooltips->mHeight; + tooltips->SetHotSpot(tooltips->mWidth / 2,0); + JRenderer::GetInstance()->RenderQuad(tooltips.get(), SCREEN_WIDTH_F/2, SCREEN_HEIGHT_F-17,0,xscale,yscale); + } + //end tooltip*/ + mFont->DrawString(GAME_VERSION, (SCREEN_WIDTH_F/2) - (mFont->GetStringWidth(GAME_VERSION))/2, SCREEN_HEIGHT_F-17, JGETEXT_LEFT); + mFont->SetColor(ARGB(128,255,255,255));//reset color mFont->DrawString(GameApp::mynbcardsStr, leftTextPos, 5); renderer->FillRect(leftTextPos, 26, 104, 8, ARGB(255, 100, 90, 60)); renderer->FillRect(leftTextPos + 2, 28, (float)(gamePercentComplete()), 4, ARGB(255,220,200, 125)); diff --git a/projects/mtg/src/MenuItem.cpp b/projects/mtg/src/MenuItem.cpp index f8c192427..a8198db47 100644 --- a/projects/mtg/src/MenuItem.cpp +++ b/projects/mtg/src/MenuItem.cpp @@ -138,8 +138,9 @@ void OtherMenuItem::Render() float olds = mFont->GetScale(); float xPos = SCREEN_WIDTH - 64; float xTextPos = xPos + 54; + float yPos = SCREEN_HEIGHT_F-26.f; int textAlign = JGETEXT_RIGHT; - onQuad->SetHFlip(false); + //onQuad->SetHFlip(false); switch(mKey) { @@ -147,18 +148,30 @@ void OtherMenuItem::Render() xPos = 5; xTextPos = xPos + 10; textAlign = JGETEXT_LEFT; - onQuad->SetHFlip(true); + //onQuad->SetHFlip(true); break; default: break; } - onQuad->SetColor(ARGB(abs(alpha),255,255,255)); - mFont->SetColor(ARGB(abs(alpha),0,0,0)); + //onQuad->SetColor(ARGB(abs(alpha),255,255,255)); mFont->SetScale(1.0f); mFont->SetScale(50.0f / mFont->GetStringWidth(mText.c_str())); - JRenderer::GetInstance()->RenderQuad(onQuad, xPos, 2, 0, mScale, mScale); - mFont->DrawString(mText, xTextPos, 9, textAlign); + //JRenderer::GetInstance()->RenderQuad(onQuad, xPos, yPos+2, 0, mScale, mScale); + //JRenderer::GetInstance()->FillRoundRect(xPos,yPos+2,mFont->GetStringWidth(mText.c_str()),mFont->GetHeight(),2,ARGB(abs(alpha),255,255,255)); + JRenderer::GetInstance()->FillRoundRect(xPos+1, yPos+6, mFont->GetStringWidth(mText.c_str()) - 3, mFont->GetHeight() - 10, 5, ARGB(abs(alpha-20), 5, 5, 5)); + if(!mHasFocus) + { + mFont->SetColor(ARGB(abs(alpha),255,255,255)); + JRenderer::GetInstance()->FillRoundRect(xPos, yPos+5, mFont->GetStringWidth(mText.c_str()) - 3, mFont->GetHeight() - 10, 5, ARGB(abs(alpha-20), 140, 23, 23)); + } + else + { + mFont->SetColor(ARGB(abs(alpha),5,5,5)); + JRenderer::GetInstance()->FillRoundRect(xPos, yPos+5, mFont->GetStringWidth(mText.c_str()) - 3, mFont->GetHeight() - 10, 5, ARGB(abs(alpha-20), 140, 140, 140)); + } + JRenderer::GetInstance()->DrawRoundRect(xPos, yPos+5, mFont->GetStringWidth(mText.c_str()) - 3, mFont->GetHeight() - 10, 5, ARGB(abs(alpha-20), 5, 5, 5)); + mFont->DrawString(mText, xTextPos, yPos+9, textAlign); mFont->SetScale(olds); } diff --git a/projects/mtg/src/TextScroller.cpp b/projects/mtg/src/TextScroller.cpp index dc98af964..2ff9a47f2 100644 --- a/projects/mtg/src/TextScroller.cpp +++ b/projects/mtg/src/TextScroller.cpp @@ -67,18 +67,7 @@ void TextScroller::Update(float dt) void TextScroller::Render() { WFont * mFont = WResourceManager::Instance()->GetWFont(fontId); - //tooltip - JQuadPtr tooltips; - tooltips = WResourceManager::Instance()->RetrieveTempQuad("tooltips.png");//new graphics tooltips - if (tooltips.get()) - { - float xscale = (mWidth+(mWidth/18)) / tooltips->mWidth; - float yscale = mFont->GetHeight() / tooltips->mHeight; - JRenderer::GetInstance()->RenderQuad(tooltips.get(), mX-4.5f, mY+0.5f,0,xscale,yscale); - } - else - JRenderer::GetInstance()->FillRoundRect(mX,mY,mWidth,mFont->GetHeight(), 1, ARGB(225,5,5,5)); - //end tooltip + mFont->SetColor(ARGB(128,255,255,255)); mFont->DrawString(mText.c_str(), mX, mY, JGETEXT_LEFT, start, mWidth); }