- Modified DeckManager class to not use a global instance anymore when used within the game engine

- Modified DuelLayers to not use a global MTGPhaseGame instance anymore
- Moved the reset of currentActionCard out of the ActionLayer render function : that fixes the remaing problematic tests in the multithreaded testsuite
- Added a method in ActionLayer converting a card ability into a menu index
- Used this new method in the game observer to log correctly AI ability actions
- Added a DumpAssert method in the game observer, it can be used to dump the game and assert in order to easy crash reproduction
- Cleaned up TargetList properties access
- Added an optimisation in GuiMana to not compute update code if the rendering is not used (multi-threaded mode)
- Added a deadlock detection in the test AI vs AI multithreaded mode
- Fixed minor bugs in test AI vs AI multithreaded mode
- Added a games/second counter in the test AI vs AI rendering
This commit is contained in:
Xawotihs
2011-11-23 19:11:48 +00:00
parent dca6d3ad38
commit 29132073de
20 changed files with 153 additions and 73 deletions

View File

@@ -14,6 +14,7 @@ class GuiCombat;
class GuiAvatars;
class CardSelectorBase;
struct Pos;
class MTGGamePhase;
class DuelLayers
{
@@ -27,6 +28,7 @@ protected:
GuiHandSelf *hand;
GuiAvatars * avatars;
GameObserver* observer;
MTGGamePhase* phaseHandler;
public:
DuelLayers();
@@ -36,6 +38,7 @@ public:
ActionStack * stackLayer();
GuiCombat * combatLayer();
GuiAvatars * GetAvatars();
MTGGamePhase* getPhaseHandler() {return phaseHandler;};
void init(GameObserver* go);
virtual void Update(float dt, Player * player);
void CheckUserInput(int isAI);