fix prefetch options

This commit is contained in:
Anthony Calosa
2017-03-14 17:06:14 +08:00
parent b4e25838bd
commit a2eda76a26
4 changed files with 36 additions and 28 deletions
+4
View File
@@ -19,6 +19,9 @@ int AIPlayer::totalAIDecks = -1;
AIAction::AIAction(AIPlayer * owner, MTGCardInstance * c, MTGCardInstance * t) AIAction::AIAction(AIPlayer * owner, MTGCardInstance * c, MTGCardInstance * t)
: owner(owner), ability(NULL), player(NULL), click(c), target(t) : owner(owner), ability(NULL), player(NULL), click(c), target(t)
{ {
bool prefetch = options[Options::CARDPREFETCHING].number?true:false;
if (prefetch && WResourceManager::Instance()->IsThreaded())
{
// useability tweak - assume that the user is probably going to want to see the full res card, // useability tweak - assume that the user is probably going to want to see the full res card,
// so prefetch it. The idea is that we do it here as we want to start the prefetch before it's time to render, // so prefetch it. The idea is that we do it here as we want to start the prefetch before it's time to render,
// and waiting for it to actually go into play is too late, as we start drawing the card during the interrupt window. // and waiting for it to actually go into play is too late, as we start drawing the card during the interrupt window.
@@ -38,6 +41,7 @@ AIAction::AIAction(AIPlayer * owner, MTGCardInstance * c, MTGCardInstance * t)
owner->getObserver()->getResourceManager()->RetrieveCard(c); owner->getObserver()->getResourceManager()->RetrieveCard(c);
} }
} }
}
} }
int AIAction::Act() int AIAction::Act()
+1 -1
View File
@@ -86,7 +86,7 @@ void CarouselDeckView::Render()
{ {
// even though we want to draw the cards in a particular z order for layering, we want to prefetch them // even though we want to draw the cards in a particular z order for layering, we want to prefetch them
// in a different order, ie the center card should appear first, then the adjacent ones // in a different order, ie the center card should appear first, then the adjacent ones
bool prefetch = options[Options::CARDPREFETCHING].number?false:true; bool prefetch = options[Options::CARDPREFETCHING].number?true:false;
if (prefetch && WResourceManager::Instance()->IsThreaded()) if (prefetch && WResourceManager::Instance()->IsThreaded())
{ {
WResourceManager::Instance()->RetrieveCard(mCards[0].card); WResourceManager::Instance()->RetrieveCard(mCards[0].card);
+1 -1
View File
@@ -108,7 +108,7 @@ void GridDeckView::Render()
int firstVisibleCard = 2; int firstVisibleCard = 2;
int lastVisibleCard = mCards.size() - 2; int lastVisibleCard = mCards.size() - 2;
bool mode = options[Options::GDVLARGEIMAGE].number?false:true; bool mode = options[Options::GDVLARGEIMAGE].number?false:true;
bool prefetch = options[Options::CARDPREFETCHING].number?false:true; bool prefetch = options[Options::CARDPREFETCHING].number?true:false;
if(!mScrollEasing.finished()) if(!mScrollEasing.finished())
{ {
+4
View File
@@ -249,6 +249,9 @@ void MTGPlayerCards::drawFromLibrary()
toMove->miracle = true; toMove->miracle = true;
} }
bool prefetch = options[Options::CARDPREFETCHING].number?true:false;
if (prefetch && WResourceManager::Instance()->IsThreaded())
{
// useability tweak - assume that the user is probably going to want to see the new card, // useability tweak - assume that the user is probably going to want to see the new card,
// so prefetch it. // so prefetch it.
@@ -265,6 +268,7 @@ void MTGPlayerCards::drawFromLibrary()
library->owner->getObserver()->getResourceManager()->RetrieveCard(toMove); library->owner->getObserver()->getResourceManager()->RetrieveCard(toMove);
} }
} }
}
if(putInZone(toMove, library, hand)) if(putInZone(toMove, library, hand))
{ {