diff --git a/projects/mtg/src/Rules.cpp b/projects/mtg/src/Rules.cpp index 19a7425e9..9f53e1db6 100644 --- a/projects/mtg/src/Rules.cpp +++ b/projects/mtg/src/Rules.cpp @@ -417,21 +417,34 @@ Player * Rules::loadPlayerRandomFive(GameObserver* observer, int isAI) } Player * Rules::loadPlayerRandomCommander(GameObserver* observer, int isAI) -{ +{ +#if !defined (PSP) std::unique_ptr cmdTempDeck(new MTGDeck(MTGCollection())); std::unique_ptr tempDeck(new MTGDeck(MTGCollection())); +#else + MTGDeck * cmdTempDeck = NEW MTGDeck(MTGCollection()); + MTGDeck * tempDeck = NEW MTGDeck(MTGCollection()); +#endif tempDeck->meta_commander = true; string lands[] = { "", "forest", "island", "mountain", "swamp", "plains", "basic", "basic" }; cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary"); +#if !defined (PSP) std::unique_ptr myCommandZone(new DeckDataWrapper(cmdTempDeck.get())); +#else + DeckDataWrapper * myCommandZone = NEW DeckDataWrapper(cmdTempDeck); +#endif MTGCard * commander = myCommandZone->getCard(0, true); while(!commander->data->isCreature()) { cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary"); +#if !defined (PSP) myCommandZone.reset(new DeckDataWrapper(cmdTempDeck.get())); +#else + myCommandZone = NEW DeckDataWrapper(cmdTempDeck); +#endif commander = myCommandZone->getCard(0, true); } @@ -468,6 +481,7 @@ Player * Rules::loadPlayerRandomCommander(GameObserver* observer, int isAI) string deckFile = "random"; string deckFileSmall = "random"; +#if !defined (PSP) std::unique_ptr player; if (!isAI) // Human Player player.reset(new HumanPlayer(observer, deckFile, deckFileSmall, false, tempDeck.release())); @@ -475,6 +489,15 @@ Player * Rules::loadPlayerRandomCommander(GameObserver* observer, int isAI) player.reset(new AIPlayerBaka(observer, deckFile, deckFileSmall, "", tempDeck.release())); return player.release(); +#else + Player *player = NULL; + if (!isAI) // Human Player + player = NEW HumanPlayer(observer, deckFile, deckFileSmall, false, tempDeck); + else + player = NEW AIPlayerBaka(observer, deckFile, deckFileSmall, "", tempDeck); + + return player; +#endif } Player * Rules::loadPlayerHorde(GameObserver* observer, int isAI)