show large images on grid deck view user option
also forced border targets and target source
This commit is contained in:
@@ -46,6 +46,7 @@ public:
|
||||
CHEATMODEAIDECK,
|
||||
OSD,
|
||||
BLKBORDER,
|
||||
GDVLARGEIMAGE,
|
||||
SHOWTOKENS,
|
||||
CLOSEDHAND,
|
||||
HANDDIRECTION,
|
||||
|
||||
@@ -273,6 +273,8 @@ public:
|
||||
int cardistargetted;
|
||||
bool isTargetter();
|
||||
int cardistargetter;
|
||||
int forcedBorder;
|
||||
int forcedBorder2;
|
||||
int myconvertedcost;
|
||||
ManaCost * computeNewCost(MTGCardInstance * card,ManaCost * oldCost, ManaCost * refCost,bool noTrinisphere = false);
|
||||
int countTrini;
|
||||
|
||||
@@ -241,6 +241,8 @@ void StackAbility::Render()
|
||||
MTGCardInstance * source = ability->source;
|
||||
string alt1 = source->getName();
|
||||
vector<JQuadPtr> mytargetQuads;
|
||||
vector<MTGCardInstance*> myClones;
|
||||
|
||||
int fmLibrary = 0;
|
||||
int force = 0;
|
||||
|
||||
@@ -262,6 +264,9 @@ void StackAbility::Render()
|
||||
{
|
||||
if( ((Damageable *)(tt))->type_as_damageable == Damageable::DAMAGEABLE_MTGCARDINSTANCE )
|
||||
{
|
||||
//fill vector
|
||||
myClones.push_back(((MTGCardInstance*)(tt)));
|
||||
|
||||
if( source->has(Constants::HIDDENFACE) && !observer->isInLibrary(((MTGCardInstance *)(tt))) )
|
||||
mytargetQuads.push_back( ((Damageable *)(tt))->getIcon() );
|
||||
else if ( !source->has(Constants::HIDDENFACE) )
|
||||
@@ -293,6 +298,20 @@ void StackAbility::Render()
|
||||
}
|
||||
}
|
||||
|
||||
//setborder test
|
||||
if(myClones.size())
|
||||
{
|
||||
source->forcedBorder2 = 1;
|
||||
for(unsigned int kk = 0; kk < myClones.size(); kk++)
|
||||
{
|
||||
if(myClones[kk])
|
||||
{
|
||||
myClones[kk]->forcedBorder = 1;
|
||||
//JRenderer::GetInstance()->DrawLine(myClones[kk]->view->actX,myClones[kk]->view->actY,source->view->actX,source->view->actY,0.5f,ARGB(120, 255, 0, 0));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(source->has(Constants::HIDDENFACE) && fmLibrary)
|
||||
force = MTGAbility::HIDDENVIEW;
|
||||
|
||||
|
||||
@@ -270,12 +270,12 @@ void CardGui::Render()
|
||||
//draw border for highlighting
|
||||
if (game)
|
||||
{
|
||||
if (card && card->isTargetted() && highlightborder)
|
||||
if (card && (card->isTargetted()||card->forcedBorder) && highlightborder)
|
||||
{
|
||||
highlightborder->SetColor(ARGB(95,255,0,0));
|
||||
renderer->RenderQuad(highlightborder.get(), actX, actY, actT, (30 * actZ + 1) / 16, 43 * actZ / 16);
|
||||
}
|
||||
if (card && card->isTargetter() && highlightborder)
|
||||
if (card && (card->isTargetter()||card->forcedBorder2) && highlightborder)
|
||||
{
|
||||
highlightborder->SetColor(ARGB(95,0,245,0));
|
||||
renderer->RenderQuad(highlightborder.get(), actX, actY, actT, (30 * actZ + 1) / 16, 43 * actZ / 16);
|
||||
@@ -387,7 +387,7 @@ void CardGui::Render()
|
||||
}
|
||||
}
|
||||
|
||||
if (card && card->isTargetted())
|
||||
if (card && (card->isTargetted()||card->forcedBorder))
|
||||
{
|
||||
if(card->isTapped())
|
||||
{
|
||||
@@ -399,7 +399,7 @@ void CardGui::Render()
|
||||
else
|
||||
renderer->DrawRoundRect(actX - (scale * quad->mWidth / 2)-2,actY - (scale * quad->mHeight / 2)-2, (scale * quad->mWidth)-0.02f, (scale * quad->mHeight)-0.02f, 1.8f,ARGB(250,255,0,0));
|
||||
}
|
||||
if (card && card->isTargetter())
|
||||
if (card && (card->isTargetter()||card->forcedBorder2))
|
||||
{
|
||||
if(card->isTapped())
|
||||
{
|
||||
|
||||
@@ -654,6 +654,8 @@ void GameObserver::gameStateBasedEffects()
|
||||
{
|
||||
zone->cards[c]->cardistargetted = 0;
|
||||
zone->cards[c]->cardistargetter = 0;
|
||||
zone->cards[c]->forcedBorder = 0;
|
||||
zone->cards[c]->forcedBorder2 = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -82,7 +82,8 @@ void GameStateOptions::Start()
|
||||
optionsList->Add(NEW WGuiSplit(cPrf, cThm));
|
||||
optionsList->Add(cStyle);
|
||||
optionsList->Add(NEW WGuiButton(NEW WGuiHeader("New Profile"), -102, GameStateOptionsConst::kNewProfileID, this));
|
||||
|
||||
//show large images
|
||||
optionsList->Add(NEW OptionInteger(Options::GDVLARGEIMAGE, "Show Large Images in Grid Deck View (could crash PSP!)"));
|
||||
optionsList->Add(NEW WDecoCheat(NEW OptionInteger(Options::CHEATMODE, "Enable Cheat Mode")));
|
||||
optionsList->Add(NEW WDecoCheat(NEW OptionInteger(Options::OPTIMIZE_HAND, "Optimize Starting Hand")));
|
||||
optionsList->Add(NEW WDecoCheat(NEW OptionInteger(Options::CHEATMODEAIDECK, "Unlock All Ai Decks")));
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#include "PrecompiledHeader.h"
|
||||
#include "GridDeckView.h"
|
||||
|
||||
const float GridDeckView::scroll_animation_duration = 0.3f;
|
||||
@@ -125,17 +126,10 @@ void GridDeckView::Render()
|
||||
{
|
||||
if (WResourceManager::Instance()->IsThreaded())
|
||||
{
|
||||
#if !defined (PSP)
|
||||
WResourceManager::Instance()->RetrieveCard(mCards[i].card, RETRIEVE_NORMAL);
|
||||
#else
|
||||
WResourceManager::Instance()->RetrieveCard(mCards[i].card, RETRIEVE_THUMB);
|
||||
#endif
|
||||
}
|
||||
#if !defined (PSP)
|
||||
renderCard(i, 255, false, true);//for psp, use lowres images if you can.
|
||||
#else
|
||||
renderCard(i, 255, true, true);
|
||||
#endif
|
||||
bool mode = options[Options::GDVLARGEIMAGE].number?false:true;
|
||||
renderCard(i, 255, mode);//WARNING FOR PSP!!!
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -123,7 +123,7 @@ void GuiPlay::BattleField::reset(float x, float y)
|
||||
}
|
||||
void GuiPlay::BattleField::EnstackAttacker(CardView* card)
|
||||
{
|
||||
if(card->card->getObserver() && card->card->getObserver()->getCurrentGamePhase() == MTG_PHASE_COMBATDAMAGE)
|
||||
if(card->card->getObserver() && (card->card->getObserver()->getCurrentGamePhase() >= MTG_PHASE_COMBATDAMAGE) && (card->card->getObserver()->getCurrentGamePhase() < MTG_PHASE_ENDOFTURN))
|
||||
return;
|
||||
//card->x = CARD_WIDTH + 20 + (currentAttacker * (HORZWIDTH) / (attackers+1));
|
||||
card->x = x + (CARD_WIDTH/2.5f) + baseX;
|
||||
@@ -140,7 +140,7 @@ void GuiPlay::BattleField::EnstackAttacker(CardView* card)
|
||||
}
|
||||
void GuiPlay::BattleField::EnstackBlocker(CardView* card)
|
||||
{
|
||||
if(card->card->getObserver() && card->card->getObserver()->getCurrentGamePhase() == MTG_PHASE_COMBATDAMAGE)
|
||||
if(card->card->getObserver() && (card->card->getObserver()->getCurrentGamePhase() >= MTG_PHASE_COMBATDAMAGE) && (card->card->getObserver()->getCurrentGamePhase() < MTG_PHASE_ENDOFTURN))
|
||||
return;
|
||||
MTGCardInstance * c = card->card;
|
||||
if (!c)
|
||||
|
||||
@@ -71,6 +71,8 @@ MTGCardInstance::MTGCardInstance(MTGCard * card, MTGPlayerCards * arg_belongs_to
|
||||
LKItoughness = toughness;
|
||||
cardistargetted = 0;
|
||||
cardistargetter = 0;
|
||||
forcedBorder = 0;
|
||||
forcedBorder2 = 0;
|
||||
myconvertedcost = getManaCost()->getConvertedCost();
|
||||
revealedLast = NULL;
|
||||
MadnessPlay = false;
|
||||
|
||||
Reference in New Issue
Block a user