Fixed bug that was not correctly showing the full Commander decks list in the deck choosing menu page, added a new gesture for Android to emulate back button pressure: now sliding from down to up for almost all screen size will trigger the back button in game (e.g. pause match in gameplay, going back from shop, and so on).
This commit is contained in:
@@ -1822,7 +1822,9 @@ class SDLSurface extends SurfaceView implements SurfaceHolder.Callback,
|
||||
y2 = event.getY();
|
||||
float deltaY = y2 - y1;
|
||||
if (deltaY > DELTA_Y)
|
||||
parent.showOptionMenu();
|
||||
parent.showOptionMenu(); // Emulate Android option menu button pressure.
|
||||
else if (deltaY < -DELTA_Y)
|
||||
SDLActivity.onNativeKeyDown(KeyEvent.KEYCODE_BACK ); // Emulate Android back button pressure.
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,8 @@ private:
|
||||
vector<int> mUnlockRequirements;
|
||||
int mDeckId;
|
||||
string mAvatarFilename;
|
||||
string mColorIndex;
|
||||
string mColorIndex;
|
||||
bool mCommanderDeck; //Added to read the command tag in deck's metafile.
|
||||
|
||||
// statistical information
|
||||
int mGamesPlayed, mVictories, mPercentVictories, mDifficulty;
|
||||
@@ -33,12 +34,12 @@ private:
|
||||
|
||||
public:
|
||||
|
||||
bool isCommanderDeck; //Added to read the command tag in deck's metafile.
|
||||
DeckMetaData(const string& filename, bool isAI = false);
|
||||
void LoadDeck();
|
||||
void LoadStats();
|
||||
|
||||
// Accessors
|
||||
bool isCommanderDeck(); //Added to read the command tag in deck's metafile.
|
||||
string getFilename();
|
||||
string getDescription();
|
||||
string getName();
|
||||
|
||||
@@ -446,7 +446,7 @@ void DeckMenu::Add(int id, const string& text, const string& desc, bool forceFoc
|
||||
else
|
||||
deckDescription = deckMetaData ? deckMetaData->getDescription() : desc;
|
||||
|
||||
if(deckMetaData && deckMetaData->isCommanderDeck)
|
||||
if(deckMetaData && deckMetaData->isCommanderDeck())
|
||||
deckDescription = deckDescription + " (" + _("CMD") + ")"; // It will show a CMD suffix for Commander Decks.
|
||||
|
||||
menuItem->setDescription(deckDescription);
|
||||
|
||||
@@ -21,7 +21,6 @@ DeckMetaData::DeckMetaData(const string& filename, bool isAI)
|
||||
LoadDeck();
|
||||
}
|
||||
|
||||
|
||||
void DeckMetaData::LoadDeck()
|
||||
{
|
||||
if (!mDeckLoaded)
|
||||
@@ -30,7 +29,7 @@ void DeckMetaData::LoadDeck()
|
||||
mName = trim(deck.meta_name);
|
||||
mDescription = trim(deck.meta_desc);
|
||||
mDeckId = atoi((mFilename.substr(mFilename.find("deck") + 4, mFilename.find(".txt"))).c_str());
|
||||
isCommanderDeck = deck.meta_commander; //Added to read the command tag in deck's metafile.
|
||||
mCommanderDeck = deck.meta_commander; //Added to read the command tag in deck's metafile.
|
||||
|
||||
vector<string> requirements = split(deck.meta_unlockRequirements, ',');
|
||||
for(size_t i = 0; i < requirements.size(); ++i)
|
||||
@@ -49,10 +48,8 @@ void DeckMetaData::LoadDeck()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
void DeckMetaData::LoadStats()
|
||||
{
|
||||
if (!mStatsLoaded)
|
||||
@@ -65,7 +62,6 @@ void DeckMetaData::LoadStats()
|
||||
mGamesPlayed = 0;
|
||||
mColorIndex = "";
|
||||
mDifficulty = 0;
|
||||
isCommanderDeck = false;
|
||||
|
||||
stats->load(mPlayerDeck);
|
||||
DeckStat * opponentDeckStats = stats->getDeckStat(mStatsFilename);
|
||||
@@ -115,6 +111,11 @@ int DeckMetaData::getAvatarId()
|
||||
|
||||
//Accessors
|
||||
|
||||
bool DeckMetaData::isCommanderDeck()
|
||||
{
|
||||
return mCommanderDeck;
|
||||
}
|
||||
|
||||
string DeckMetaData::getFilename()
|
||||
{
|
||||
return mFilename;
|
||||
@@ -135,7 +136,6 @@ vector<int> DeckMetaData::getUnlockRequirements()
|
||||
return mUnlockRequirements;
|
||||
}
|
||||
|
||||
|
||||
string DeckMetaData::getAvatarFilename()
|
||||
{
|
||||
return mAvatarFilename;
|
||||
|
||||
@@ -42,7 +42,7 @@ vector<DeckMetaData *> GameState::BuildDeckList(const string& path, const string
|
||||
if (meta)
|
||||
{
|
||||
found = 1;
|
||||
if(!showall && ((meta->isCommanderDeck && type != GAME_TYPE_COMMANDER) || (!meta->isCommanderDeck && type == GAME_TYPE_COMMANDER))){
|
||||
if(!showall && ((meta->isCommanderDeck() && type != GAME_TYPE_COMMANDER) || (!meta->isCommanderDeck() && type == GAME_TYPE_COMMANDER))){
|
||||
meta = NULL; // It will show commander decks only in commander mode and it will hide them in other modes.
|
||||
nbDecks++;
|
||||
continue;
|
||||
|
||||
@@ -896,10 +896,10 @@ MTGDeck::MTGDeck(const string& config_file, MTGAllCards * _allcards, int meta_on
|
||||
size_t dot = filename.find(".");
|
||||
meta_name = filename.substr(slash + 1, dot - slash - 1);
|
||||
meta_id = atoi(meta_name.substr(4).c_str());
|
||||
meta_commander = false;
|
||||
std::string contents;
|
||||
if (JFileSystem::GetInstance()->readIntoString(config_file, contents))
|
||||
{
|
||||
meta_commander = (contents.find("#CMD:")!=string::npos)?true:false; //Added to read the command tag in metafile.
|
||||
std::stringstream stream(contents);
|
||||
std::string s;
|
||||
while (std::getline(stream, s))
|
||||
@@ -970,7 +970,6 @@ MTGDeck::MTGDeck(const string& config_file, MTGAllCards * _allcards, int meta_on
|
||||
found = s.find("CMD:"); // Now it's possible to add a card to Command Zone even using their Name instead of ID such as normal deck cards.
|
||||
if (found != string::npos)
|
||||
{
|
||||
meta_commander = true; //Added to read the command tag in metafile.
|
||||
if(!database) continue;
|
||||
s = s.substr(found + 4);
|
||||
s.erase(s.find_last_not_of("\t\n\v\f\r ") + 1);
|
||||
|
||||
Reference in New Issue
Block a user