|
И так для начала нам понадобится : https://yadi.sk/d/IzJQK9RfTpPWe https://yadi.sk/d/B5oTAWsJ3LwfHi ------------------------------------------------------------------------------------------------------------------------- После того как вы установили вышеупомянутый софт, - установите игру с которой и хочешь сделать RePack (перепаковку). нажми Win+R (или пуск->выполнить) - В строке пишешь "regеdit" нажимаешь "Enter" Таким образом вы попадаете в редактор реестра Windows... В реестре все значения и данные хранятся в виде ключей разных типов.
Откройте ветку HKEY_LOCAL_MACHINE -> SOFTWARE и найдите там свою игру которую вы установили. Нашли? - подсвечиваем мышку к этой папке и нажимаем правую кнопку мыши (т.е. контекстное меню) -> "Экспортировать" Дальше сохранять этот файл (.reg - ключик реестра windows) для удобности себе на "Рабочий стол".
Потом создаёшь инсталятор через Inno Setup. Как создать инсталятор В первом окне надо ввести: Имя приложения Имя и версию Разработчик (можешь себя написать если хочешь) Страничку укажи torrent-games.net или сайта куда ты хочешь выложить Репак http://s49.radikal.ru/i126/1108/32/a0215d12dbf7.jpg Второе окно жми "Далее"
Третье окно Выберите главный исполняемый файл и папку где лежит сама игра! На скриншоте пример CoD4.
Инсталяторы" и в этой папке создавай папку с названием игры и каждый раз когда будеш делать репак указывай путь к папке. http://s40.radikal.ru/i089/1108/01/56292e50acd1.jpg Иконка, ярлык http://s48.radikal.ru/i120/1108/88/fc7933dc0276.jpg Четвёртое окно тоже пропускаем -> "Далее"
В пятом окне (если оно появится) - выбери язык только русский
В шестом окне выбери иконку компилятора (иконка должна быть в папке с игрой) и "выходной коталог компилятора" (сделай где нибудь папку "Инсталяторы" и в этой папке создавай папку с названием игры и каждый раз когда будешь делать репак указывай путь к папке, она тебе потом ещё пригодится)
В седьмом окне жми "Финиш"
Тебе вылетит окно "Хотите ли Вы собрать Вам скрипт" отвечай НЕТ. Потом добавь в строчку "[Setup]" на самый верх DiskSpanning=true DiskSliceSize=1457664000 Потом уж сохраняешь этот скрипт.
Дальше зайди в ISTool открой в нём тот скрипт который сохранил. Когда откроешь выбери "Options" и там во вкладке Компилятор у тебя должно стоять так: Сжатие lzma Уровень ultra64. И внутреннее сжатие тоже должно быть - ultra64 Нажимаешь ОК. Дальше с левой стороны выбираеш секцию "Реестр" И справа от этих "секций" у тебя будет поле в клеточку. Вот на этом поле нажми на правую кнопку мыши и выбери "Импортировать из файла" Выбери тот файл "реестра" который ты сохранил.
Дальше выбирай секцию "Скрипт"
Опускай в самый низ и там будет вкладка "[Registry]" Находишь в этой вкладке синим шрифтом написано "ValueData": и вот то-что в этой "ValueData" написано сотри. И вставь вот это {app}; Flags: uninsdeletekey Дальше сохраняй скрипт. Потом заходи опять в Inno Setup. Открой этот скрипт и запусти чтобы он делал инстолятор.
Когда сделаешь инсталятор удали ту игру из которой делал RePack. И установи из инсталятора который ты щас сделал. Игра должна быть рабочей...
Ещё до того как вы сделали инсталятор (когда установил игру), вы можете поджать видео,звук. Вам нужна программа RAD Video Tools. RAD Video Tools: инструкция по использованию... Устанавливаешь программу Заходишь в папку с установленной программой Запускаешь radvideo.exe Выбираешь файл и кликаешь на этой кнопке: http://s46.radikal.ru/i112/1108/9d/05dc3c87927e.jpg 5) Затем здесь указываешь на сколько ты хочешь сжать (% от оригинала, от 1-99): http://s59.radikal.ru/i164/1108/5b/89b380c3a803.jpg Добавление картинки в инсталлятор
[Setup] WizardImageFile=C:\2.bmp (место нхождения и формат) WizardSmallImageFile=C:\1.bmp
[ Code ] procedure InitializeWizard(); begin WizardForm.InnerPage.Visible:=False; WizardForm.WelcomeLabel1.Visible:=False; WizardForm.WelcomeLabel2.Visible:=False; WizardForm.WizardSmallBitmapImage.left:=0; WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width; WizardForm.PageNameLabel.Visible:=False; WizardForm.PageDescriptionLabel.Visible:=False; WizardForm.WizardBitmapImage.Width:=WizardForm.ClientWidth; WizardForm.WizardBitmapImage.Height:=WizardForm.ClientHeight; WizardForm.WizardBitmapImage2.Width:=WizardForm.ClientWidth; WizardForm.OuterNotebook.Height:=WizardForm.ClientHeight; WizardForm.InnerNotebook.Height:=WizardForm.ClientHeight; WizardForm.WizardBitmapImage2.Height:=WizardForm.ClientHeight; WizardForm.NextButton.BringToFront; WizardForm.CancelButton.BringToFront; WizardForm.BackButton.BringToFront; WizardForm.FinishedHeadingLabel.Visible:=False; WizardForm.FinishedLabel.Visible:=False; end;
размер картинок 600х400 500х100 секция CustomMessages сам текст нужен [CustomMessages] rus.Welcome1=Вас приветствует Мастер установки игры %n {#SetupSetting("AppName")(ТУТ ПИШИШЬ СВОЮ ИГРУ)} rus.Welcome2=%n Рекомендуется закрыть все прочие приложения перед тем, как продолжить.%nНажмите «Далее», чтобы продолжить, или «Отмена», чтобы выйти из программы установки. rus.FreeSpace=Доступно места на диске: rus.NeedSpace=Требуется места на диске: rus.Finished1=Завершение Мастера установки %n{#Myappname} rus.Finished2=Игра {#MyAppName} установлена на Ваш компьютер. %nНажмите «Завершить», чтобы выйти из программы установки. rus.AdditionalTasks=Дополнительное програмное обеспечения: rus.UpdateDirect=Обновить DirectX rus.ExtractedFile=Извлекается файл: rus.Extracted=Распаковка файлов... rus.CancelButton=Отмена rus.Error=Ошибка распаковки! rus.ElapsedTime=Прошло: rus.RemainingTime=Осталось времени: rus.EstimatedTime=Всего: rus.AllElapsedTime=Время установки: rus.Error2=Установка игры {#MyAppName} %n не завершена!
rus.Error=Ошибка распаковки! rus.Error2=Установка {#MyAppName} не завершена. rus.Error3=Во время установки {#MyAppName} произошла ошибка,%n пожалуйста отключите сторонние программы и повторите попытку установки. внизу добавляешь секцию Code [Code ]
const Color = clblack; // цвет окна инстала
procedure InitializeWizard(); begin
WizardForm.Font.Color:=clWhite; // цвет текста wizardForm.WelcomeLabel1.Font.Color:=clWhite; // цвет текста WizardForm.FinishedHeadingLabel.Font.Color:=clWhite; // цвет текста WizardForm.PageNameLabel.Font.Color:=clWhite; // цвет текста WizardForm.Color:=Color; WizardForm.WelcomePage.Color:=Color; WizardForm.InnerPage.Color:=Color; WizardForm.FinishedPage.Color:=Color; WizardForm.LicensePage.Color:=Color; WizardForm.PasswordPage.Color:=Color; WizardForm.InfoBeforePage.Color:=Color; WizardForm.UserInfoPage.Color:=Color; WizardForm.SelectDirPage.Color:=Color; WizardForm.SelectComponentsPage.Color:=Color; WizardForm.SelectProgramGroupPage.Color:=Color; WizardForm.SelectTasksPage.Color:=Color; WizardForm.ReadyPage.Color:=Color; WizardForm.PreparingPage.Color:=Color; WizardForm.InstallingPage.Color:=Color; WizardForm.InfoAfterPage.Color:=Color; WizardForm.DirEdit.Color:=Color; WizardForm.DiskSpaceLabel.Color:=Color; WizardForm.DirEdit.Color:=Color; WizardForm.GroupEdit.Color:=Color; WizardForm.PasswordLabel.Color:=Color; WizardForm.PasswordEdit.Color:=Color; WizardForm.PasswordEditLabel.Color:=Color; WizardForm.ReadyMemo.Color:=Color; WizardForm.TypesCombo.Color:=Color; WizardForm.WelcomeLabel1.Color:=Color; WizardForm.InfoBeforeClickLabel.Color:=Color; WizardForm.MainPanel.Color:=Color; WizardForm.PageNameLabel.Color:=Color; WizardForm.PageDescriptionLabel.Color:=Color; WizardForm.ReadyLabel.Color:=Color; WizardForm.FinishedLabel.Color:=Color; WizardForm.YesRadio.Color:=Color; WizardForm.NoRadio.Color:=Color; WizardForm.WelcomeLabel2.Color:=Color; WizardForm.LicenseLabel1.Color:=Color; WizardForm.InfoAfterClickLabel.Color:=Color; WizardForm.ComponentsList.Color:=Color; WizardForm.ComponentsDiskSpaceLabel.Color:=Color; WizardForm.BeveledLabel.Color:=Color; WizardForm.StatusLabel.Color:=Color; WizardForm.FilenameLabel.Color:=Color; WizardForm.SelectDirLabel.Color:=Color; WizardForm.SelectStartMenuFolderLabel.Color:=Color; WizardForm.SelectComponentsLabel.Color:=Color; WizardForm.SelectTasksLabel.Color:=Color; WizardForm.LicenseAcceptedRadio.Color:=Color; WizardForm.LicenseNotAcceptedRadio.Color:=Color; WizardForm.UserInfoNameLabel.Color:=Color; WizardForm.UserInfoNameEdit.Color:=Color; WizardForm.UserInfoOrgLabel.Color:=Color; WizardForm.UserInfoOrgEdit.Color:=Color; WizardForm.PreparingLabel.Color:=Color; WizardForm.FinishedHeadingLabel.Color:=Color; WizardForm.UserInfoSerialLabel.Color:=Color; WizardForm.UserInfoSerialEdit.Color:=Color; WizardForm.TasksList.Color:=Color; WizardForm.RunList.Color:=Color; WizardForm.SelectDirBrowseLabel.Color:=Color; WizardForm.SelectStartMenuFolderBrowseLabel.Color:=Color; WizardForm.Bevel.visible:=false; WizardForm.Bevel1.visible:=false; end;
var pnl: TPanel;
///////////////////////WelcomePage////////////////////////////////////// procedure WelcomePage; begin with TLabel.Create(pnl) do begin AutoSize:= WizardForm.WelcomeLabel1. AutoSize; SetBounds(WizardForm.WelcomeLabel1.Left,WizardForm.WelcomeLabel1.Top, WizardForm.WelcomeLabel1.Width,WizardForm.WelcomeLabel1.Height); WordWrap:= WizardForm.WelcomeLabel1.WordWrap; Caption:= WizardForm.WelcomeLabel1.Caption; with Font do begin Color:= WizardForm.WelcomeLabel1.Font.Color; Style:= WizardForm.WelcomeLabel1.Font.Style; Name:= WizardForm.WelcomeLabel1.Font.Name; Size:= WizardForm.WelcomeLabel1.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.WelcomeLabel2. AutoSize; SetBounds(WizardForm.WelcomeLabel2.Left,WizardForm.WelcomeLabel2.Top, WizardForm.WelcomeLabel2.Width,WizardForm.WelcomeLabel2.Height); WordWrap:= WizardForm.WelcomeLabel2.WordWrap; Caption:= WizardForm.WelcomeLabel2.Caption; with Font do begin Color:= WizardForm.WelcomeLabel2.Font.Color; Style:= WizardForm.WelcomeLabel2.Font.Style; Name:= WizardForm.WelcomeLabel2.Font.Name; Size:= WizardForm.WelcomeLabel2.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end; /////////////////////////////////////////////////////////////////
///////////////////////SelectDirPage////////////////////////////////////// procedure SelectDirPage; begin with WizardForm do begin with DirEdit do begin Left:= 40; Top:= 137; Parent:= pnl; end; with DirBrowseButton do begin Left:= WizardForm.DirEdit.Left + WizardForm.DirEdit.Width + 10; Top:= WizardForm.DirEdit.Top - 1; Parent:= pnl; end; with SelectDirBitmapImage do begin Left:= WizardForm.DirEdit.Left; Top:= WizardForm.DirEdit.Top - 62; Stretch:= True; Parent:= pnl; end; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.SelectDirBrowseLabel.AutoSize; SetBounds(WizardForm.DirEdit.Left,WizardForm.DirEdit.Top - 30, WizardForm.SelectDirBrowseLabel.Width, WizardForm.SelectDirBrowseLabel.Height); WordWrap:= WizardForm.SelectDirBrowseLabel.WordWrap; Caption:= WizardForm.SelectDirBrowseLabel.Caption; with Font do begin Color:= WizardForm.SelectDirBrowseLabel.Font.Color; Style:= WizardForm.SelectDirBrowseLabel.Font.Style; Name:= WizardForm.SelectDirBrowseLabel.Font.Name; Size:= WizardForm.SelectDirBrowseLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.SelectDirLabel.AutoSize; SetBounds(WizardForm.SelectDirBitmapImage.Left + 50,WizardForm.SelectDirBitmapImage.Top + 10, WizardForm.SelectDirLabel.Width,WizardForm.SelectDirLabel.Height); WordWrap:= WizardForm.SelectDirLabel.WordWrap; Caption:= WizardForm.SelectDirLabel.Caption; with Font do begin Color:= WizardForm.SelectDirLabel.Font.Color; Style:= WizardForm.SelectDirLabel.Font.Style; Name:= WizardForm.SelectDirLabel.Font.Name; Size:= WizardForm.SelectDirLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.DiskSpaceLabel .AutoSize; SetBounds(WizardForm.DirEdit.Left,WizardForm.Bevel.Top - 25, WizardForm.DiskSpaceLabel.Width,WizardForm.DiskSpaceLabel.Height); WordWrap:= WizardForm.DiskSpaceLabel.WordWrap; Caption:= WizardForm.DiskSpaceLabel.Caption; with Font do begin Color:= WizardForm.DiskSpaceLabel.Font.Color; Style:= WizardForm.DiskSpaceLabel.Font.Style; Name:= WizardForm.DiskSpaceLabel.Font.Name; Size:= WizardForm.DiskSpaceLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end; /////////////////////////////////////////////////////////////////
///////////////////////ReadyPage////////////////////////////////////// procedure ReadyPage; var ready_str: string; begin ready_str:= WizardForm.ReadyMemo.Text; with TLabel.Create(pnl) do begin SetBounds(45,115,WizardForm.ReadyMemo.Width, WizardForm.ReadyMemo.Height); Caption:= ready_str; with Font do begin Color:= WizardForm.ReadyLabel.Font.Color; Style:= WizardForm.ReadyLabel.Font.Style; Name:= WizardForm.ReadyLabel.Font.Name; Size:= WizardForm.ReadyLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TBevel.Create(WizardForm) do begin SetBounds(40,110, WizardForm.ReadyMemo.Width, WizardForm.ReadyMemo.Height); Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.ReadyLabel.AutoSize; SetBounds(40,70, WizardForm.ReadyLabel.Width, WizardForm.ReadyLabel.Height); WordWrap:= WizardForm.ReadyLabel.WordWrap; Caption:= WizardForm.ReadyLabel.Caption; with Font do begin Color:= WizardForm.ReadyLabel.Font.Color; Style:= WizardForm.ReadyLabel.Font.Style; Name:= WizardForm.ReadyLabel.Font.Name; Size:= WizardForm.ReadyLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end; /////////////////////////////////////////////////////////////////
///////////////////////InstallingPage////////////////////////////////////// procedure InstallingPage; begin with WizardForm.ProgressGauge do begin Left:= 40; Top:= 115; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.FilenameLabel. AutoSize; SetBounds(WizardForm.ProgressGauge.Left,WizardForm.ProgressGauge.Top-20, WizardForm.FilenameLabel.Width,WizardForm.FilenameLabel.Height); WordWrap:= WizardForm.FilenameLabel.WordWrap; Caption:= WizardForm.FilenameLabel.Caption; with Font do begin Color:= WizardForm.FilenameLabel.Font.Color; Style:= WizardForm.FilenameLabel.Font.Style; Name:= WizardForm.FilenameLabel.Font.Name; Size:= WizardForm.FilenameLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.StatusLabel. AutoSize; SetBounds(WizardForm.StatusLabel.Left,WizardForm.StatusLabel.Top, WizardForm.StatusLabel.Width,WizardForm.StatusLabel.Height); WordWrap:= WizardForm.StatusLabel.WordWrap; Caption:= WizardForm.StatusLabel.Caption; with Font do begin Color:= WizardForm.StatusLabel.Font.Color; Style:= WizardForm.StatusLabel.Font.Style; Name:= WizardForm.StatusLabel.Font.Name; Size:= WizardForm.StatusLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end; /////////////////////////////////////////////////////////////////
///////////////////////FinishedPage//////////////////////////////////////
procedure FinishedPage; begin with TLabel.Create(pnl) do begin AutoSize:= WizardForm.FinishedHeadingLabel. AutoSize; SetBounds(WizardForm.FinishedHeadingLabel.Left,WizardForm.FinishedHeadingLabel.Top, WizardForm.FinishedHeadingLabel.Width,WizardForm.FinishedHeadingLabel.Height); WordWrap:= WizardForm.FinishedHeadingLabel.WordWrap; Caption:= WizardForm.FinishedHeadingLabel.Caption; with Font do begin Color:= WizardForm.FinishedHeadingLabel.Font.Color; Style:= WizardForm.FinishedHeadingLabel.Font.Style; Name:= WizardForm.FinishedHeadingLabel.Font.Name; Size:= WizardForm.FinishedHeadingLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.FinishedLabel. AutoSize; SetBounds(WizardForm.FinishedLabel.Left,WizardForm.FinishedLabel.Top, WizardForm.FinishedLabel.Width,WizardForm.FinishedLabel.Height); WordWrap:= WizardForm.FinishedLabel.WordWrap; Caption:= WizardForm.FinishedLabel.Caption; with Font do begin Color:= WizardForm.FinishedLabel.Font.Color; Style:= WizardForm.FinishedLabel.Font.Style; Name:= WizardForm.FinishedLabel.Font.Name; Size:= WizardForm.FinishedLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end; /////////////////////////////////////////////////////////////////
procedure CurPageChanged(CurPageID: Integer); begin pnl:= TPanel.Create(WizardForm); with pnl do begin Align:= alClient; Parent:= WizardForm; end; with WizardForm do begin with WizardBitmapImage do begin Align:= alClient; Stretch:= True; Parent:= pnl; end; NextButton.Parent:= pnl; CancelButton.Parent:= pnl; BackButton.Parent:= pnl ; Bevel.Parent:= pnl; pnl.Repaint; end;
if (CurPageID > wpWelcome) and (CurPageID < wpFinished) then begin WizardForm.Bevel1.Parent:= pnl; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.PageNameLabel. AutoSize; SetBounds(WizardForm.PageNameLabel.Left,WizardForm.PageNameLabel.Top, WizardForm.PageNameLabel.Width,WizardForm.PageNameLabel.Height); Caption:= WizardForm.PageNameLabel.Caption; with Font do begin Color:= WizardForm.PageNameLabel.Font.Color; Style:= WizardForm.PageNameLabel.Font.Style; Name:= WizardForm.PageNameLabel.Font.Name; Size:= WizardForm.PageNameLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; with TLabel.Create(pnl) do begin AutoSize:= WizardForm.PageDescriptionLabel.AutoSize; SetBounds(WizardForm.PageDescriptionLabel.Left,WizardForm.PageDescriptionLabel.Top, WizardForm.PageDescriptionLabel.Width,WizardForm.PageDescriptionLabel.Height); Caption:= WizardForm.PageDescriptionLabel.Caption; with Font do begin Color:= WizardForm.PageDescriptionLabel.Font.Color; Style:= WizardForm.PageDescriptionLabel.Font.Style; Name:= WizardForm.PageDescriptionLabel.Font.Name; Size:= WizardForm.PageDescriptionLabel.Font.Size; end; Transparent:= True; Parent:= pnl; end; pnl.Repaint; end;
if CurPageID = wpWelcome then WelcomePage; if CurPageID = wpSelectDir then SelectDirPage; if CurPageID = wpReady then ReadyPage; if CurPageID = wpInstalling then InstallingPage; if CurPageID = wpFinished then FinishedPage; end; [CustomMessages] rus.Welcome2=%n Рекомендуется закрыть все прочие приложения перед тем, как продолжить.%nНажмите «Далее», чтобы продолжить, или «Отмена», чтобы выйти из программы установки. rus.FreeSpace=Доступно места на диске: rus.NeedSpace=Требуется места на диске: rus.Finished1=Завершение Мастера установки %n{#Myappname} rus.Finished2=Игра {#MyAppName} установлена на Ваш компьютер. %nНажмите «Завершить», чтобы выйти из программы установки. rus.AdditionalTasks=Дополнительное програмное обеспечения: rus.UpdateDirect=Обновить DirectX rus.ExtractedFile=Извлекается файл: rus.Extracted=Распаковка файлов... rus.CancelButton=Отмена rus.Error=Ошибка распаковки! rus.ElapsedTime=Прошло: rus.RemainingTime=Осталось времени: rus.EstimatedTime=Всего: rus.AllElapsedTime=Время установки: rus.Error2=Установка игры {#MyAppName} %n не завершена!
rus.Error=Ошибка распаковки! rus.Error2=Установка {#MyAppName} не завершена. rus.Error3=Во время установки {#MyAppName} произошла ошибка,%n пожалуйста отключите сторонние программы и повторите попытку установки. привязка Доп ПО ложишь в одну папку с ехешником игры и добавляешь в скрипт (название файла и название в скрипте должны совпадать ( для дирекса dxwebsetup.exe)) секцию добавляешь ниже [Files] [RUN] Filename: {app}\dxwebsetup.exe; WorkingDir: {app}; StatusMsg: обновить directx... Filename: {app}\vcredist_x86.exe; WorkingDir: {app}; StatusMsg: Установка компонентов... Filename: {app}\dotnetfx35setup.exe; WorkingDir: {app}; StatusMsg: Установка компонентов NET 3.5 Framework .
|
| | |
|
|
Лучше бы видео сделал. А то столько много написал)
Известный, авторитетный ветеран компьютерной игры "В Тылу Врага". (Играю с 2006 года по сегодняшний день) Разработчик мода Спецназ на игровую платформу Call To Arms (CtA).
|
|
|
Цитата Azot1995 ( ) Лучше бы видео сделал. А то столько много написал) Я бы с удовольствием только от этого фрапса и бандикама столько гемороя
|
|
|
Давай лучше миссию про Афган сделай если умеешь и про это видео сними столько букв заумных, я аж устал читать )
|
|
|
ssandalow2016, Здравствуйте, вы можете мне помочь с редакцией Ресурсов в Men of War, чтобы войнов в отряде было больше?
|
|
|
Спасибо а то я хотел сегодня сделать REPACK
Пацан, как пацан.
|
|
|