diff --git a/projects/mtg/src/ActionStack.cpp b/projects/mtg/src/ActionStack.cpp index aecf87ddc..6bb329cd9 100644 --- a/projects/mtg/src/ActionStack.cpp +++ b/projects/mtg/src/ActionStack.cpp @@ -130,7 +130,7 @@ void Interruptible::Render(MTGCardInstance * source, JQuad * targetQuad, string if (bigQuad) { - Pos pos = Pos(CardGui::BigWidth / 2, CardGui::BigHeight / 2 - 10, 0.90f, 0.0, 220); + Pos pos = Pos(CardGui::BigWidth / 2, CardGui::BigHeight / 2 - 10, 0.80f, 0.0, 220); pos.actY = 142;//adjust y a little bit CardGui::DrawCard(source, pos, observer->getCardSelector()->GetDrawMode()); } diff --git a/projects/mtg/src/CardDisplay.cpp b/projects/mtg/src/CardDisplay.cpp index d9147acdf..6e6fff9f4 100644 --- a/projects/mtg/src/CardDisplay.cpp +++ b/projects/mtg/src/CardDisplay.cpp @@ -263,8 +263,8 @@ void CardDisplay::Render() { mObjects[mCurr]->Render(); CardGui * cardg = ((CardGui *) mObjects[mCurr]); - Pos pos = Pos(CardGui::BigWidth / 2, CardGui::BigHeight / 2 - 10, 0.90f, 0.0, 220); - int drawMode = DrawMode::kNormal;//scale card display from 1.0f to 0.90f + Pos pos = Pos((CardGui::BigWidth / 2), CardGui::BigHeight / 2 - 10, 0.80f, 0.0, 220); + int drawMode = DrawMode::kNormal;//scale card display from 1.0f to 0.80f if (observer) { pos.actY = 142;//reduce y a little diff --git a/projects/mtg/src/CardGui.cpp b/projects/mtg/src/CardGui.cpp index 7de73603b..d82d0b533 100644 --- a/projects/mtg/src/CardGui.cpp +++ b/projects/mtg/src/CardGui.cpp @@ -153,17 +153,17 @@ void CardGui::Render() else quad = AlternateThumbQuad(card); - float cardScale = quad ? 40 / quad->mHeight : 1; + float cardScale = quad ? 37.f / quad->mHeight : 1; //I want the below for melded cards but I dont know how to adjust everything else //to look neat and clean. leaving this here incase someone else wants to pretty up the p/t box //and line up the position. - float zz = 1.0f; - float yy = 0.0f; + float zz = 0.99f; + float yy = 0.0f; if (card->MeldedFrom.size()) - { - zz = 1.15f; - yy = 2.0f; - } + { + zz = 1.10f; + yy = 2.0f; + } float scale = (actZ*zz) * cardScale; JQuadPtr shadow; @@ -173,7 +173,7 @@ void CardGui::Render() if (shadow) { shadow->SetColor(ARGB(static_cast(actA)/2,255,255,255)); - renderer->RenderQuad(shadow.get(), actX + ((actZ*zz) - 1) * 15, (actY-yy) + ((actZ*zz) - 1) * 15, actT, 28 * (actZ*zz) / 16, 40 * (actZ*zz) / 16); + renderer->RenderQuad(shadow.get(), actX + ((actZ*zz) - 1) * 15, (actY-yy) + ((actZ*zz) - 1) * 15, actT, 27 * (actZ*zz) / 16, 39 * (actZ*zz) / 16); } } @@ -184,7 +184,7 @@ void CardGui::Render() if (extracostshadow) { extracostshadow->SetColor(ARGB(static_cast(actA)/2,100,0,0)); - renderer->RenderQuad(extracostshadow.get(), actX + ((actZ*zz) - 1) * 15, (actY-yy) + ((actZ*zz) - 1) * 15, actT, 28 * (actZ*zz) / 16, 40 * (actZ*zz) / 16); + renderer->RenderQuad(extracostshadow.get(), actX + ((actZ*zz) - 1) * 15, (actY-yy) + ((actZ*zz) - 1) * 15, actT, 27 * (actZ*zz) / 16, 39 * (actZ*zz) / 16); } } @@ -213,7 +213,7 @@ void CardGui::Render() if(white) { white->SetColor(ARGB(255,230,50,50)); - renderer->RenderQuad(white.get(), actX, (actY-yy), actT, 30 * (actZ*zz) / 16, 42 * (actZ*zz) / 16); + renderer->RenderQuad(white.get(), actX, (actY-yy), actT, 28 * (actZ*zz) / 16, 40 * (actZ*zz) / 16); } } @@ -240,7 +240,7 @@ void CardGui::Render() if(white) { white->SetColor(ARGB(255,0,0,255)); - renderer->RenderQuad(white.get(), actX, (actY-yy), actT, 30 * (actZ*zz) / 16, 42 * (actZ*zz) / 16); + renderer->RenderQuad(white.get(), actX, (actY-yy), actT, 28 * (actZ*zz) / 16, 40 * (actZ*zz) / 16); } } } @@ -258,7 +258,7 @@ void CardGui::Render() fakeborder->SetColor(ARGB((int)(actA),7,235,7));//green border else fakeborder->SetColor(ARGB((int)(actA),15,15,15)); - renderer->RenderQuad(fakeborder.get(), actX, (actY-yy), actT, (29 * (actZ*zz) + 1) / 16, 42 * (actZ*zz) / 16); + renderer->RenderQuad(fakeborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } //draw border for highlighting if (game) @@ -266,26 +266,26 @@ void CardGui::Render() if (card && card->isTargetted() && highlightborder) { highlightborder->SetColor(ARGB(95,255,0,0)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } if (card && card->isTargetter() && highlightborder) { highlightborder->SetColor(ARGB(95,0,245,0)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } if(card->myPair && card->myPair->isInPlay(game) && highlightborder) { if(mHasFocus) { highlightborder->SetColor(ARGB(200,7,98,248)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } if(CardView* cv = dynamic_cast(card->myPair->view)) { if(cv->mHasFocus) { highlightborder->SetColor(ARGB(200,57,28,248)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } } } @@ -298,7 +298,7 @@ void CardGui::Render() else highlightborder->SetColor(ARGB(200,57,28,248)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } if(CardView* cv = dynamic_cast(card->shackled->view)) { @@ -309,7 +309,7 @@ void CardGui::Render() else highlightborder->SetColor(ARGB(200,57,28,248)); - renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (30 * (actZ*zz) + 1) / 16, 43 * (actZ*zz) / 16); + renderer->RenderQuad(highlightborder.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); } } } @@ -390,9 +390,12 @@ void CardGui::Render() mFont->SetScale(DEFAULT_MAIN_FONT_SCALE); char buffer[200]; sprintf(buffer, "%i/%i", card->power, card->life); - renderer->FillRect(actX - (13 * (actZ*zz)), (actY-yy) + 4 * (actZ*zz), 25.5f * (actZ*zz), 14 * (actZ*zz), + //move up the p/t box by increasing ymody + float ymody = (card->isAttacker()||card->isDefenser())&&card->isTapped()?-5.0f:0.0f; + //float ymody = (card->getObserver()->getView()->getRenderedPlayer() == card->controller() ? - mody: +mody); + renderer->FillRect(actX - (13 * (actZ*zz)), (actY-yy+ymody) + 4 * (actZ*zz), 25.5f * (actZ*zz), 14 * (actZ*zz), ARGB(((static_cast(actA))/2),0,0,0)); - renderer->DrawRect(actX - (13 * (actZ*zz)), (actY-yy) + 4 * (actZ*zz), 25.5f * (actZ*zz), 14 * (actZ*zz), + renderer->DrawRect(actX - (13 * (actZ*zz)), (actY-yy+ymody) + 4 * (actZ*zz), 25.5f * (actZ*zz), 14 * (actZ*zz), ARGB(((static_cast(actA))),20,20,20)); //damaged or buffed or powered down if(card->wasDealtDamage && card->life <= 2) @@ -407,7 +410,9 @@ void CardGui::Render() mFont->SetColor(ARGB(static_cast(actA),255,255,255));//white default mFont->SetScale((actZ*zz)); mFont->SetScale((actZ*zz)); - mFont->DrawString(buffer, actX - 10 * (actZ*zz), (actY-yy) + 7 * (actZ*zz)); + //try to center p/t inside the p/t box + float halfbufferW = (mFont->GetStringWidth(buffer))/2; + mFont->DrawString(buffer, actX - (halfbufferW), (actY-yy+ymody) + 5 * (actZ*zz)); mFont->SetScale(1); } @@ -472,7 +477,7 @@ void CardGui::Render() if (shadow) { shadow->SetColor(ARGB(200,255,255,255)); - renderer->RenderQuad(shadow.get(), actX, (actY-yy), actT, (28 * (actZ*zz) + 1) / 16, 40 * (actZ*zz) / 16); + renderer->RenderQuad(shadow.get(), actX, (actY-yy), actT, (25 * (actZ*zz) + 1) / 16, 37 * (actZ*zz) / 16); } } diff --git a/projects/mtg/src/CardSelector.cpp b/projects/mtg/src/CardSelector.cpp index cb698d7a6..84c847c7d 100644 --- a/projects/mtg/src/CardSelector.cpp +++ b/projects/mtg/src/CardSelector.cpp @@ -341,7 +341,8 @@ void CardSelector::Render() { if(timer > 0) { - Pos npos = Pos(bigpos.x+7.f,bigpos.y-4.f,bigpos.zoom-(bigpos.zoom/10),bigpos.t,bigpos.alpha); + float modx = 14.f; + Pos npos = Pos(bigpos.x+modx,bigpos.y-4.f,bigpos.zoom-(bigpos.zoom/5),bigpos.t,bigpos.alpha); //render card card->DrawCard(npos, mDrawMode); } diff --git a/projects/mtg/src/GuiPlay.cpp b/projects/mtg/src/GuiPlay.cpp index 02bbe0939..f0d14aa46 100644 --- a/projects/mtg/src/GuiPlay.cpp +++ b/projects/mtg/src/GuiPlay.cpp @@ -123,7 +123,15 @@ void GuiPlay::BattleField::reset(float x, float y) } void GuiPlay::BattleField::EnstackAttacker(CardView* card) { - card->x = CARD_WIDTH + 20 + (currentAttacker * (HORZWIDTH) / (attackers+1)); + //card->x = CARD_WIDTH + 20 + (currentAttacker * (HORZWIDTH) / (attackers+1)); + card->x = x + baseX; + if (total < 8) + x += CARD_WIDTH; + else if (total < 16) + x += (SCREEN_WIDTH - 200 - baseX) / total; + else + x += (SCREEN_WIDTH - 50 - baseX) / total; + card->y = baseY + (card->card->getObserver()->getView()->getRenderedPlayer() == card->card->controller() ? 20 + y : -20 - y); ++currentAttacker; // JRenderer::GetInstance()->RenderQuad(WResourceManager::Instance()->GetQuad("BattleIcon"), card->actX, card->actY, 0, 0.5 + 0.1 * sinf(JGE::GetInstance()->GetTime()), 0.5 + 0.1 * sinf(JGE::GetInstance()->GetTime()));