X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Flibr2c2%2Faicontrol.h;h=8d9ff11591eba395c414b6197d99652454eb06d6;hb=dbaa67c30705a9993d2626cec588c7320f1eef17;hp=0d84218875848f69b111cb668ab25348f5150118;hpb=1ff06c5bc46a677fa389ef86c6b26664368f1653;p=r2c2.git diff --git a/source/libr2c2/aicontrol.h b/source/libr2c2/aicontrol.h index 0d84218..8d9ff11 100644 --- a/source/libr2c2/aicontrol.h +++ b/source/libr2c2/aicontrol.h @@ -18,16 +18,24 @@ class Train; class AIControl: public Controller, public sigc::trackable { private: + enum State + { + NORMAL, + APPROACH, + BLOCKED, + FOLLOW + }; + Train &train; Controller *next_ctrl; Control target_speed; - bool blocked; - bool approach; + State state; public: AIControl(Train &, Controller *); virtual ~AIControl(); + virtual const char *enumerate_controls(unsigned) const; virtual void set_control(const std::string &, float); virtual const Control &get_control(const std::string &) const;