local files = { { "glenpark_alpha.txd.pcrypt", 5637 }, { "glenpark_apart1.txd.pcrypt", 5462 }, { "glenpark_apart1LOD.txd.pcrypt", 5598 }, { "glenpark_apart2.txd.pcrypt", 5461 }, { "glenpark_apart2LOD.txd.pcrypt", 5597 }, { "glenpark_businesses.txd.pcrypt", 5392 }, { "glenpark_businessesLOD.txd.pcrypt", 5607 }, { "glenpark_houses1.txd.pcrypt", 5457 }, { "glenpark_houses1.txd.pcrypt", 5443 }, { "glenpark_houses3.txd.pcrypt", 5446 }, { "glenpark_park.txd.pcrypt", 5458 }, { "glenpark_park.txd.pcrypt", 5640 }, { "glenpark_alpha1.dff.pcrypt", 5637 }, { "glenpark_alpha2.dff.pcrypt", 5641 }, { "glenpark_alpha3.dff.pcrypt", 5636 }, { "glenpark_apart1.dff.pcrypt", 5462 }, { "glenpark_apart1LOD.dff.pcrypt", 5598 }, { "glenpark_apart2.dff.pcrypt", 5461 }, { "glenpark_apart2LOD.dff.pcrypt", 5597 }, { "glenpark_businesses.dff.pcrypt", 5392 }, { "glenpark_businessesLOD.dff.pcrypt", 5607 }, { "glenpark_houses1.dff.pcrypt", 5457 }, { "glenpark_houses2.dff.pcrypt", 5443 }, { "glenpark_houses3.dff.pcrypt", 5446 }, { "glenpark_park1.dff.pcrypt", 5458 }, { "glenpark_park2.dff.pcrypt", 5640 }, { "glenpark_road1.dff.pcrypt", 5434 }, { "glenpark_road2.dff.pcrypt", 5498 }, { "glenpark_road3.dff.pcrypt", 5495 }, { "glenpark_road4.dff.pcrypt", 5435 }, { "glenpark_alpha1.col.pcrypt", 5637 }, { "glenpark_alpha2.col.pcrypt", 5641 }, { "glenpark_alpha3.col.pcrypt", 5636 }, { "glenpark_apart1.col.pcrypt", 5462 }, { "glenpark_apart2.col.pcrypt", 5461 }, { "glenpark_businesses.col.pcrypt", 5392 }, { "glenpark_houses1.col.pcrypt", 5457 }, { "glenpark_houses2.col.pcrypt", 5443 }, { "glenpark_houses3.col.pcrypt", 5446 }, { "glenpark_park1.col.pcrypt", 5458 }, { "glenpark_park2.col.pcrypt", 5640 }, { "glenpark_road1.col.pcrypt", 5434 }, { "glenpark_road2.col.pcrypt", 5498 }, { "glenpark_road3.col.pcrypt", 5495 }, { "glenpark_road4.col.pcrypt", 5435 }, } local cor = coroutine.create(function() for i = 1, #files do local file = files[i][1] local model = files[i][2] pDecrypt(file, function(data) loadModel(file, data, model) end) coroutine.yield() end files = nil collectgarbage() end) function loadModel(file, data, model) local ext = file:match("^.+(%..+)%..+$") if ext == ".dff" then engineReplaceModel(engineLoadDFF(data), model) elseif ext == ".txd" then engineImportTXD(engineLoadTXD(data), model) elseif ext == ".col" then engineReplaceCOL(engineLoadCOL(data), model) end coroutine.resume(cor) end coroutine.resume(cor)