// Костыль. Без этого не подгружаются нужные библиотеки
if not SetEnvironmentVariable('PATH', ExpandConstant('{tmp}')) then MsgBox(SysErrorMessage(DLLGetLastError), mbError, MB_OK);
//
if not SelectDisk('Data_Levels.bin',1) then break;
if not ISArcExtract (0,0, PathSd+'Data_Levels.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\Levels.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_Objects.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\Objects.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_LowSpec.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\LowSpec.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_Animations.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\Animations.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_GameData.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\GameData.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_Textures.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not IS7ZipExtract(0,0, ExpandConstant('{app}\Game\Textures.pa'), ExpandConstant('{app}\Game'), true, '') then break;
if not ISArcExtract (0,0, PathSd+'Data_Music.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data_Shader.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data_Sounds.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data_Video.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data_ZPatch1.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data.bin', ExpandConstant('{app}'), '', false, '', '', ExpandConstant('{app}'), notPCFonFLY {PCFonFLY}) then break;
if not ISArcExtract (0,0, PathSd+'Data_Localized.bin', ExpandConstant('{app}\Game'), '', false, '', '', ExpandConstant('{app}\Game'), notPCFonFLY {PCFonFLY}) then break;
RePlaceTextinFile(ExpandConstant('{userdocs}\My Games\Crysis\game.cfg'),'r_Width', 'r_Width'+' ',' '+inttostr(screen.Width));
RePlaceTextinFile(ExpandConstant('{userdocs}\My Games\Crysis\game.cfg'),'r_Height', 'r_Height'+' ',' '+inttostr(screen.Height));
// Russian
if Russian then
begin
if not FileCopy(ExpandConstant('{app}\Game\Localized\Russian.lng'),ExpandConstant('{app}\Game\Localized\Default.lng'),True) then break;
end else begin
if not FileCopy(ExpandConstant('{app}\Game\Localized\English.lng'),ExpandConstant('{app}\Game\Localized\Default.lng'),True) then break;
end;