@@ -67,15 +67,32 @@ const char *AIFileInfo::GetDate()
const char *AIFileInfo::GetInstanceName()
{
if (this->instance_name == NULL) this->instance_name = this->engine->CallStringMethodStrdup(*this->SQ_instance, "CreateInstance");
return this->instance_name;
}
bool AIFileInfo::AllowStartup()
bool AIFileInfo::CanLoadFromVersion(int version)
return true;
if (version == -1) return true;
if (!this->engine->MethodExists(*this->SQ_instance, "CanLoadFromVersion")) return true;
HSQUIRRELVM vm = this->engine->GetVM();
int top = sq_gettop(vm);
sq_pushobject(vm, *this->SQ_instance);
sq_pushstring(vm, OTTD2FS("CanLoadFromVersion"), -1);
sq_get(vm, -2);
sq_pushinteger(vm, version);
sq_call(vm, 2, SQTrue, SQFalse);
HSQOBJECT ret;
sq_getstackobj(vm, -1, &ret);
sq_settop(vm, top);
return sq_objtobool(&ret);
const char *AIFileInfo::GetDirName()
return this->dir_name;