fixed deck name display for when "Random" player deck is chosen.
This commit is contained in:
@@ -46,7 +46,6 @@ protected:
|
|||||||
string getDescription();
|
string getDescription();
|
||||||
string getMetaInformation();
|
string getMetaInformation();
|
||||||
DeckMetaData *mSelectedDeck;
|
DeckMetaData *mSelectedDeck;
|
||||||
int mSelectedDeckId;
|
|
||||||
bool mShowDetailsScreen;
|
bool mShowDetailsScreen;
|
||||||
bool mAlwaysShowDetailsButton;
|
bool mAlwaysShowDetailsButton;
|
||||||
bool mClosed;
|
bool mClosed;
|
||||||
@@ -55,7 +54,15 @@ public:
|
|||||||
VerticalTextScroller * mScroller;
|
VerticalTextScroller * mScroller;
|
||||||
bool mAutoTranslate;
|
bool mAutoTranslate;
|
||||||
float mSelectionTargetY;
|
float mSelectionTargetY;
|
||||||
|
|
||||||
|
int getSelectedDeckId() const
|
||||||
|
{
|
||||||
|
return mSelectedDeck->getDeckId();
|
||||||
|
}
|
||||||
|
|
||||||
|
void selectDeck(int deckId, bool isAi);
|
||||||
|
void selectRandomDeck(bool isAi);
|
||||||
|
|
||||||
//used for detailed info button
|
//used for detailed info button
|
||||||
JQuadPtr pspIcons[8];
|
JQuadPtr pspIcons[8];
|
||||||
JTexture * pspIconsTexture;
|
JTexture * pspIconsTexture;
|
||||||
@@ -68,7 +75,6 @@ public:
|
|||||||
bool showDetailsScreen();
|
bool showDetailsScreen();
|
||||||
|
|
||||||
virtual bool isClosed() const { return mClosed; }
|
virtual bool isClosed() const { return mClosed; }
|
||||||
virtual int getSelectedDeckId() const { return mSelectedDeckId; }
|
|
||||||
|
|
||||||
virtual void Render();
|
virtual void Render();
|
||||||
virtual void Update(float dt);
|
virtual void Update(float dt);
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
#include "DeckMenu.h"
|
#include "DeckMenu.h"
|
||||||
#include "DeckMenuItem.h"
|
#include "DeckMenuItem.h"
|
||||||
#include "DeckMetaData.h"
|
#include "DeckMetaData.h"
|
||||||
|
#include "DeckManager.h"
|
||||||
#include "InteractiveButton.h"
|
#include "InteractiveButton.h"
|
||||||
#include "JTypes.h"
|
#include "JTypes.h"
|
||||||
#include "GameApp.h"
|
#include "GameApp.h"
|
||||||
@@ -65,8 +66,6 @@ JGuiController(JGE::GetInstance(), id, listener), fontId(fontId), mShowDetailsSc
|
|||||||
statsHeight = 50;
|
statsHeight = 50;
|
||||||
statsWidth = 227;
|
statsWidth = 227;
|
||||||
|
|
||||||
mSelectedDeckId = startIndex;
|
|
||||||
|
|
||||||
avatarX = 232;
|
avatarX = 232;
|
||||||
avatarY = 11;
|
avatarY = 11;
|
||||||
|
|
||||||
@@ -213,6 +212,21 @@ void DeckMenu::initMenuItems()
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DeckMenu::selectRandomDeck(bool isAi)
|
||||||
|
{
|
||||||
|
DeckManager *deckManager = DeckManager::GetInstance();
|
||||||
|
vector<DeckMetaData *> *deckList = isAi ? deckManager->getAIDeckOrderList() : deckManager->getPlayerDeckOrderList();
|
||||||
|
int random = (WRand() * 1000) % deckList->size();
|
||||||
|
selectDeck( random, isAi );
|
||||||
|
}
|
||||||
|
|
||||||
|
void DeckMenu::selectDeck(int deckId, bool isAi)
|
||||||
|
{
|
||||||
|
DeckManager *deckManager = DeckManager::GetInstance();
|
||||||
|
vector<DeckMetaData *> *deckList = isAi ? deckManager->getAIDeckOrderList() : deckManager->getPlayerDeckOrderList();
|
||||||
|
mSelectedDeck = deckList->at(deckId);
|
||||||
|
}
|
||||||
|
|
||||||
void DeckMenu::Render()
|
void DeckMenu::Render()
|
||||||
{
|
{
|
||||||
JRenderer * renderer = JRenderer::GetInstance();
|
JRenderer * renderer = JRenderer::GetInstance();
|
||||||
@@ -243,7 +257,6 @@ void DeckMenu::Render()
|
|||||||
|
|
||||||
if (currentMenuItem->hasFocus())
|
if (currentMenuItem->hasFocus())
|
||||||
{
|
{
|
||||||
mSelectedDeckId = i;
|
|
||||||
mSelectedDeck = metaData;
|
mSelectedDeck = metaData;
|
||||||
WFont *mainFont = WResourceManager::Instance()->GetWFont(Fonts::MAIN_FONT);
|
WFont *mainFont = WResourceManager::Instance()->GetWFont(Fonts::MAIN_FONT);
|
||||||
|
|
||||||
|
|||||||
@@ -688,7 +688,7 @@ void GameStateDuel::Render()
|
|||||||
{
|
{
|
||||||
opponentMenu->Render();
|
opponentMenu->Render();
|
||||||
// display the selected player deck name too
|
// display the selected player deck name too
|
||||||
string selectedPlayerDeckName = "Player Deck: " + deckmenu->getSelectedDeck()->getName();
|
string selectedPlayerDeckName = "Player Deck: " + game->players[0]->deckName;
|
||||||
mFont->DrawString( selectedPlayerDeckName.c_str(), 30, 40);
|
mFont->DrawString( selectedPlayerDeckName.c_str(), 30, 40);
|
||||||
}
|
}
|
||||||
else if (deckmenu && !deckmenu->isClosed()) deckmenu->Render();
|
else if (deckmenu && !deckmenu->isClosed()) deckmenu->Render();
|
||||||
@@ -831,9 +831,9 @@ void GameStateDuel::ButtonPressed(int controllerId, int controlId)
|
|||||||
|
|
||||||
if (controlId == MENUITEM_RANDOM_PLAYER) // Random Player Deck Selection
|
if (controlId == MENUITEM_RANDOM_PLAYER) // Random Player Deck Selection
|
||||||
{
|
{
|
||||||
vector<DeckMetaData *> * playerDeckList = deckManager->getPlayerDeckOrderList();
|
deckmenu->selectRandomDeck(false);
|
||||||
deckNumber = playerDeckList->at(WRand() % (playerDeckList->size()))->getDeckId();
|
|
||||||
game->loadPlayer(0, mParent->players[0], deckNumber, premadeDeck);
|
game->loadPlayer(0, mParent->players[0], deckmenu->getSelectedDeckId(), premadeDeck);
|
||||||
deckmenu->Close();
|
deckmenu->Close();
|
||||||
setGamePhase(DUEL_STATE_CHOOSE_DECK2_TO_PLAY);
|
setGamePhase(DUEL_STATE_CHOOSE_DECK2_TO_PLAY);
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user