#ifndef GAME_BUILDER_H #define GAME_BUILDER_H #include #include "variable.h" #include "astnode.h" class GameBuilder { public: GameBuilder(); virtual ~GameBuilder(); void setLiteral( const Variable &v ); void setGameParam( const Bu::String &sName ); void beginFunction( const Bu::String &sName ); void endFunction(); void beginSituation( const Bu::String &sName ); void endSituation(); void addParam( const Bu::String &sName ); void addNode( AstNode::Type iType ); void closeNode(); void addLiteral( const Variable &v ); void addVarRef( const Bu::String &sName ); private: Variable vLiteral; class AstBranch *pCurNode; class AstBranch *pCurRoot; VariableHash hGameParams; }; #endif