I just played 3 long games and I was able to undo two fully and got an assert on the third one after more than 1000 actions... so I commit what I have:
- Modified undo to stop at "next phase" action - Added "muligan" and "force library shuffling" to the list of logged action - Fixed random logging - Fixed double logging of actions - Merged all the "next game" functions into a single one - Created a PlayerType type instead of using int - Moved the player loading code into the GameObserver and out of GameStateDuel to avoid having player references in both and simplify the initialization and termination. Tweeked a bit the humanplayer class to be able to do that. - Added a "load" menu available in testsuite mode, I use that to load problematique game. To use it, just copy-paste a game from the traces into Res/test/game/timetwister.txt. Game in traces starts by "rvalues:..." and ends by "[end]" - Added some untested and commented out code in GuiCombat to use the mouse/touch to setup the damage on the blockers - Broke the network game ... hoh well, I'll repair it when everything else works !! - various code cleanup and compilation fixes on Linux
This commit is contained in:
@@ -407,17 +407,12 @@ void ActionLayer::doReactTo(int menuIndex)
|
||||
}
|
||||
}
|
||||
|
||||
void ActionLayer::doMultipleChoice(int choice)
|
||||
{
|
||||
if (menuObject)
|
||||
{
|
||||
DebugTrace("ActionLayer::doReactToChoice " << choice);
|
||||
ButtonPressedOnMultipleChoice(choice);
|
||||
}
|
||||
}
|
||||
|
||||
void ActionLayer::ButtonPressed(int controllerid, int controlid)
|
||||
{
|
||||
stringstream stream;
|
||||
stream << "choice " << controlid;
|
||||
observer->logAction(observer->currentActionPlayer, stream.str());
|
||||
|
||||
if(this->abilitiesMenu && this->abilitiesMenu->isMultipleChoice)
|
||||
{
|
||||
return ButtonPressedOnMultipleChoice();
|
||||
@@ -430,7 +425,7 @@ void ActionLayer::ButtonPressed(int controllerid, int controlid)
|
||||
}
|
||||
else if (controlid == kCancelMenuID)
|
||||
{
|
||||
observer->mLayers->stackLayer()->endOfInterruption();
|
||||
observer->mLayers->stackLayer()->endOfInterruption(false);
|
||||
menuObject = 0;
|
||||
}
|
||||
else
|
||||
@@ -464,7 +459,7 @@ void ActionLayer::ButtonPressedOnMultipleChoice(int choice)
|
||||
}
|
||||
else if (currentMenuObject == kCancelMenuID)
|
||||
{
|
||||
observer->mLayers->stackLayer()->endOfInterruption();
|
||||
observer->mLayers->stackLayer()->endOfInterruption(false);
|
||||
}
|
||||
menuObject = 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user