X-Git-Url: https://git.ucc.asn.au/?p=progcomp2012.git;a=blobdiff_plain;f=progcomp%2Fjudge%2Fmanager%2Fgame.cpp;fp=progcomp%2Fjudge%2Fmanager%2Fgame.cpp;h=d88f7590a3e1006fba7239428e0287df84e7b663;hp=26369d39e7f415eed0409e341a0a8f2b41a728cd;hb=baf69b8ddea3e2749f114a1e82bc1253ef062bc0;hpb=56b7e6953bb854114e145947f9cad90f16456a5f diff --git a/progcomp/judge/manager/game.cpp b/progcomp/judge/manager/game.cpp index 26369d3..d88f759 100644 --- a/progcomp/judge/manager/game.cpp +++ b/progcomp/judge/manager/game.cpp @@ -89,10 +89,14 @@ Piece::Colour Game::Setup(const char * redName, const char * blueName) if (!red->Valid()) { logMessage("Controller for Player RED is invalid!\n"); + if (!red->HumanController()) + logMessage("Check that program \"%s\" exists and has executable permissions set.\n", redName); } if (!blue->Valid()) { logMessage("Controller for Player BLUE is invalid!\n"); + if (!blue->HumanController()) + logMessage("Check that program \"%s\" exists and has executable permissions set.\n", blueName); } if (!red->Valid()) { @@ -132,37 +136,57 @@ Piece::Colour Game::Setup(const char * redName, const char * blueName) } else { - logMessage("Player RED gave an invalid setup!\n"); + //logMessage("Player RED gave an invalid setup!\n"); result = Piece::RED; } } else if (blueSetup != MovementResult::OK) { - logMessage("Player BLUE gave an invalid setup!\n"); + //logMessage("Player BLUE gave an invalid setup!\n"); result = Piece::BLUE; } + logMessage("%s RED SETUP\n", red->name.c_str()); - for (int y=0; y < 4; ++y) + if (redSetup == MovementResult::OK) { - for (int x=0; x < theBoard.Width(); ++x) + for (int y=0; y < 4; ++y) { - if (theBoard.GetPiece(x, y) != NULL) - logMessage("%c", Piece::tokens[(int)(theBoard.GetPiece(x, y)->type)]); - else - logMessage("."); - } - logMessage("\n"); - } + for (int x=0; x < theBoard.Width(); ++x) + { + if (theBoard.GetPiece(x, y) != NULL) + logMessage("%c", Piece::tokens[(int)(theBoard.GetPiece(x, y)->type)]); + else + logMessage("."); + } + logMessage("\n"); + } + } + else + { + logMessage("INVALID!\n"); + } logMessage("%s BLUE SETUP\n", blue->name.c_str()); - for (int y=0; y < 4; ++y) + if (blueSetup == MovementResult::OK) + { + for (int y=0; y < 4; ++y) + { + for (int x=0; x < theBoard.Width(); ++x) + { + if (theBoard.GetPiece(x, theBoard.Height()-4+y) != NULL) + logMessage("%c", Piece::tokens[(int)(theBoard.GetPiece(x, theBoard.Height()-4+y)->type)]); + else + logMessage("."); + } + logMessage("\n"); + } + } + else { - for (int x=0; x < theBoard.Width(); ++x) - logMessage("%c", Piece::tokens[(int)(theBoard.GetPiece(x, theBoard.Height()-4 + y)->type)]); - logMessage("\n"); - } + logMessage("INVALID!\n"); + } return result;