src/ai/ai_squirrel.hpp
branchnoai
changeset 10958 65088d587094
parent 10891 5ebb6f9068d0
equal deleted inserted replaced
10957:7a140b4cd91d 10958:65088d587094
     4 
     4 
     5 #ifndef AI_SQUIRREL_HPP
     5 #ifndef AI_SQUIRREL_HPP
     6 #define AI_SQUIRREL_HPP
     6 #define AI_SQUIRREL_HPP
     7 
     7 
     8 #include <map>
     8 #include <map>
       
     9 #ifndef AI_CONTROLLER_HPP
     9 struct ltstr { bool operator()(const char *s1, const char *s2) const { return strcmp(s1, s2) < 0; } };
    10 struct ltstr { bool operator()(const char *s1, const char *s2) const { return strcmp(s1, s2) < 0; } };
       
    11 #endif /* AI_CONTROLLER_HPP */
    10 
    12 
    11 class AISquirrel {
    13 class AISquirrel {
    12 public:
    14 public:
    13 	AISquirrel();
    15 	AISquirrel();
    14 	~AISquirrel();
    16 	~AISquirrel();
    15 
    17 
    16 	/**
    18 	/**
    17 	 * Import a library inside the Squirrel VM.
    19 	 * Import a library inside the Squirrel VM.
    18 	 */
    20 	 */
    19 	bool ImportLibrary(const char *library, const char *class_name, int version, HSQUIRRELVM vm);
    21 	bool ImportLibrary(const char *library, const char *class_name, int version, HSQUIRRELVM vm, AIController *controller);
    20 
    22 
    21 	/**
    23 	/**
    22 	 * Register a library to be put in the available list.
    24 	 * Register a library to be put in the available list.
    23 	 */
    25 	 */
    24 	void RegisterLibrary(class AILibrary *library);
    26 	void RegisterLibrary(class AILibrary *library);
    89 	AIInfoList info_list;
    91 	AIInfoList info_list;
    90 	AILibraryList library_list;
    92 	AILibraryList library_list;
    91 	class Squirrel *engine;
    93 	class Squirrel *engine;
    92 	char *current_script;
    94 	char *current_script;
    93 	char *current_dir;
    95 	char *current_dir;
    94 	int library_instance_count;
       
    95 };
    96 };
    96 
    97 
    97 #endif /* AI_SQUIRREL_HPP */
    98 #endif /* AI_SQUIRREL_HPP */