X-Git-Url: https://git.ucc.asn.au/?p=progcomp2012.git;a=blobdiff_plain;f=judge%2Fmanager%2Fcontroller.h;h=361f309dc4123bd33967be8d99c4e1b3935b2396;hp=55c233d3db1bac9d09ce29e01a1d7c4e80580f44;hb=HEAD;hpb=1a03b2543b67f0551e62babec4cd119f1e0e4640 diff --git a/judge/manager/controller.h b/judge/manager/controller.h index 55c233d..361f309 100644 --- a/judge/manager/controller.h +++ b/judge/manager/controller.h @@ -21,15 +21,21 @@ class Controller virtual bool HumanController() const {return false;} //Hacky... overrides in human_controller... avoids having to use run time type info - void Message(const std::string & buffer) {Message(buffer.c_str());} - virtual void Message(const char * string) = 0; + bool Message(const std::string & buffer) {return Message(buffer.c_str());} + virtual bool Message(const char * string) = 0; virtual MovementResult QuerySetup(const char * opponentName, std::string setup[]) = 0; virtual MovementResult QueryMove(std::string & buffer) = 0; virtual bool Valid() const {return true;} + + virtual void Pause() {} // Hack function (AI_Controller ONLY will overwrite with wrapper to Program::Pause) + virtual void Continue() {} // Hack function (AI_Controller '' '' wrapper to Program::Continue) + const Piece::Colour colour; + virtual void FixName(); //Should be called after setup, sets the name of the controller + std::string name;