12 #include "../stdafx.h" 
   14 #include "../script/squirrel_class.hpp" 
   18 #include "../string_func.h" 
   21 #include "../safeguards.h" 
   29   return strcmp(api_version, 
"0.7") == 0 || strcmp(api_version, 
"1.0") == 0 || strcmp(api_version, 
"1.1") == 0 ||
 
   30       strcmp(api_version, 
"1.2") == 0 || strcmp(api_version, 
"1.3") == 0 || strcmp(api_version, 
"1.4") == 0 ||
 
   31       strcmp(api_version, 
"1.5") == 0 || strcmp(api_version, 
"1.6") == 0 || strcmp(api_version, 
"1.7") == 0;
 
   37 template <> 
const char *GetClassName<AIInfo, ST_AI>() { 
return "AIInfo"; }
 
   43   SQAIInfo.PreRegister(engine);
 
   44   SQAIInfo.AddConstructor<void (
AIInfo::*)(), 1>(engine, 
"x");
 
   59   SQAIInfo.PostRegister(engine);
 
   67   SQUserPointer instance = NULL;
 
   68   if (SQ_FAILED(sq_getinstanceup(vm, 2, &instance, 0)) || instance == NULL) 
return sq_throwerror(vm, 
"Pass an instance of a child class of AIInfo to RegisterAI");
 
   72   if (res != 0) 
return res;
 
   94       DEBUG(script, 1, 
"Loading info.nut from (%s.%d): GetAPIVersion returned invalid version", info->
GetName(), info->
GetVersion());
 
  102   sq_setinstanceup(vm, 2, NULL);
 
  111   SQUserPointer instance;
 
  112   sq_getinstanceup(vm, 2, &instance, 0);
 
  117   if (res != 0) 
return res;
 
  120   seprintf(buf, 
lastof(buf), 
"%d.%d", 
GB(_openttd_newgrf_version, 28, 4), 
GB(_openttd_newgrf_version, 24, 4));
 
  124   sq_setinstanceup(vm, 2, NULL);
 
  131   min_loadable_version(0),
 
  132   use_as_random(false),
 
  144   if (version == -1) 
return true;
 
  149 AILibrary::~AILibrary()