Jump to content
Korean Random

woole

User
  • Posts

    107
  • Joined

  • Last visited

Posts posted by woole

  1. Здесь я многое узнал, не разобрался только в одном, это добавить еще один такой же компонентный лист с выбором модов при нажатии далее 04d7721d8b24.png если есть возможность выручите вот скрипт как сюда добавить

    
    
    
    
    
    
    
    
    
    
    
    #define MyAppName         "Mod-Pack"                       ;Название инстоллятора
    
    #define MyInfoVer         "2.2"                                     ;Версия инсталлятора
    
    #define MyAppVer          "2.2"                                     ;Версия игры
    
    #define Patch             "0.9.3"                                   ;версия патча (чтобы не менять после каждого патча числа в скрипте, можно использовать это)
    
    #define MyAppPublisher    "GV"                                ;Имя компании или человека кто делал
    
    #define MyAppURL          "http://yandex.ru/showthread.php?p=120444"             ;Ссылка для лого
    #include "Components.iss"                                           ;Компаненты, они же моды
    
    #include "Messages.iss"                                             ;Сообщение, надписи на кнопках и т.д.
    
    #include "BackUpPage.iss"                                           ;Резерное копирование или удаление res_mods
    
    #include "CustomMessages.iss"                                       ;Описание модов
    
    #include "Music.iss"                                                ;Музыка в инсталляторе
    [Setup]
    
    AppName={#MyAppName}
    
    AppVersion={#MyAppVer}
    
    AppPublisher={#MyAppPublisher}
    //====={ Ссылки }=====\\
    
    AppPublisherURL={#MyAppURL}
    
    AppSupportURL={#MyAppURL}
    
    AppUpdatesURL={#MyAppURL}
    //====={ Папка устанвки }=====\\
    
    DefaultDirName={code:MyDirName}
    
    AppendDefaultDirName=no
    
    DirExistsWarning=no
    
    CreateUninstallRegKey=no
    
    Uninstallable=yes
    //====={ Картинки }=====\\
    
    SetupIconFile=Files\wot_ico.ico
    
    WizardImageFile=Files\img1.bmp
    
    WizardSmallImageFile=Files\Small2.bmp
    //====={ Отключение строниц }=====\\
    
    DisableProgramGroupPage=yes
    //====={ Лицензия и Фак }=====\\
    
    LicenseFile=licensia.rtf
    
    InfoBeforeFile=faq.rtf
    //====={ Сжатие сетапа }=====\\
    
    InternalCompressLevel=max
    
    Compression=lzma2/max
    //--------------- ваши картинки ---------------\\
    
    [Files]
    
    Source: Files\logo.bmp; Flags: dontcopy noencryption noencryption
    
    DestName: "WizardForm.BitmapImage1.bmp"; Source: "Files\img2.bmp"; Flags: dontcopy solidbreak
    
    
    [code]
    
    function MyDirName(S:String): String;
    
    var
    
      InsPath: String;
    
      er: boolean;
    
      myFile:String;
    
    begin
    
      Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //если ключа нет то будем ставить сюда
    
      er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{1EAC1D02-C6AC-4FA6-9A44-96258C37C812RU}_is1', 'InstallLocation', InsPath);
    
      if er and (InsPath<>'') then //если ключ существует и там что-то записано
    
      begin
    
        Result := InsPath;
    
      end;
    
    end;
     
    procedure LogoOnClick(Sender: TObject);
    
    var ResCode: Integer;
    
    begin
    
      ShellExec('', '{#MyAppURL}', '' , '', SW_SHOW, ewNoWait, ResCode)
    
    end;
    
    var
    
      BitmapImage1: TBitmapImage;
    
    procedure RedesignWizardForm;
    
    var
    
      i: integer;
    
      BtnPanel: TPanel;
    
      BtnImage: TBitmapImage;
    
    begin
    
      ExtractTemporaryFile('logo.bmp')
    
      BtnPanel:=TPanel.Create(WizardForm)
    
    with BtnPanel do begin
    
      Left:=20
    
      Top:=497
    
      Width:=62
    
      Height:=23
    
      Cursor:=crHand
    
      OnClick:=@logoOnClick
    
      Parent:=WizardForm
    
    end;
    
      BtnImage:=TBitmapImage.Create(WizardForm)
    
    with BtnImage do begin
    
      AutoSize:=True;
    
      Enabled:=False;
    
      Bitmap.LoadFromFile(ExpandConstant('{tmp}')+'\logo.bmp')
    
      Parent:=BtnPanel
    
      end;
    
    { BitmapImage1 }
    
    BitmapImage1 := TBitmapImage.Create(WizardForm);
    
    with BitmapImage1 do
    
    begin
    
      Parent := WizardForm.SelectDirPage;
    
      Left := ScaleX(0);
    
      Top := ScaleY(115);
    
      Width := ScaleX(620);
    
      Height := ScaleY(260);
    
      ExtractTemporaryFile('WizardForm.BitmapImage1.bmp');
    
      Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp'));
    
      end;
    
    end;
    function WindowResize(): Boolean;
    
    var
    
      HeightOffset, WidthOffset: Integer;
    
    begin
    
      HeightOffset:=170;
    
      WidthOffset:=200;
      WizardForm.Height:=WizardForm.Height + HeightOffset;
    
      WizardForm.Width:=WizardForm.Width + WidthOffset;
      WizardForm.NextButton.Top:=WizardForm.NextButton.Top + HeightOffset;
    
      WizardForm.BackButton.Top:=WizardForm.BackButton.Top + HeightOffset;
    
      WizardForm.CancelButton.Top:=WizardForm.CancelButton.Top + HeightOffset;
    
      WizardForm.NextButton.Left:=WizardForm.NextButton.Left + WidthOffset;
    
      WizardForm.BackButton.Left:=WizardForm.BackButton.Left + WidthOffset;
    
      WizardForm.CancelButton.Left:=WizardForm.CancelButton.Left + WidthOffset;
      WizardForm.OuterNotebook.Height:=WizardForm.OuterNotebook.Height + HeightOffset;
    
      WizardForm.InnerNotebook.Height:=WizardForm.InnerNotebook.Height + HeightOffset;
    
      WizardForm.OuterNotebook.Width:=WizardForm.OuterNotebook.Width + WidthOffset;
    
      WizardForm.InnerNotebook.Width:=WizardForm.InnerNotebook.Width + WidthOffset;
    
      WizardForm.WizardSmallBitmapImage.Left:= WizardForm.WizardSmallBitmapImage.Left + WidthOffset;
    
      WizardForm.Bevel.Top:=WizardForm.Bevel.Top + HeightOffset;
    
      WizardForm.BeveledLabel.Top:=WizardForm.BeveledLabel.Top + HeightOffset;
    
      WizardForm.Bevel.Width:=WizardForm.Bevel.Width + WidthOffset;
    
      WizardForm.Bevel1.Width:=WizardForm.Bevel1.Width + WidthOffset;
    
      WizardForm.MainPanel.Width:=WizardForm.MainPanel.Width + WidthOffset;
    
      WizardForm.BeveledLabel.Width:=WizardForm.BeveledLabel.Width + WidthOffset;
    
      WizardForm.Center;
    { /// --- Раскомментировать при желании ---- ///
    
      WizardForm.WelcomeLabel1.Hide;
    
      WizardForm.WelcomeLabel2.Hide;
    
      WizardForm.FinishedLabel.Hide;
    
      WizardForm.FinishedHeadingLabel.Hide;
    
      WizardForm.WizardBitmapImage.Width:=600;
    
      WizardForm.WizardBitmapImage.Height:=400;
    
      WizardForm.WizardBitmapImage2.Width:=600;
    
      WizardForm.WizardBitmapImage2.Height:=400;
    
      WizardForm.PageNameLabel.Hide;
    
      WizardForm.PageDescriptionLabel.Hide;
    
      WizardForm.WizardSmallBitmapImage.Top:=0;
    
      WizardForm.WizardSmallBitmapImage.Left:=0;
    
      WizardForm.WizardSmallBitmapImage.Width:=WizardForm.Width;
    
      WizardForm.WizardSmallBitmapImage.Height:=58;
    
      /// --- Конец ---- ///
    
    }
    
      WizardForm.WelcomeLabel1.Hide;
    
      WizardForm.WelcomeLabel2.Hide;
    
      WizardForm.WizardBitmapImage.Width:=697;
    
      WizardForm.WizardBitmapImage.Height:=483;
      WizardForm.FinishedHeadingLabel.Hide;
    
      WizardForm.FinishedLabel.Hide;
    
      WizardForm.YesRadio.Hide;
    
      WizardForm.NoRadio.Hide;
    
      WizardForm.WizardBitmapImage2.Width:=697;
    
      WizardForm.WizardBitmapImage2.Height:=483;
      WizardForm.PageNameLabel.Hide;
    
      WizardForm.PageDescriptionLabel.Hide;
    
      WizardForm.WizardSmallBitmapImage.Top:=0;
    
      WizardForm.WizardSmallBitmapImage.Left:=0;
    
      WizardForm.WizardSmallBitmapImage.Width:=697;
    
      WizardForm.WizardSmallBitmapImage.Height:=58;
      WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;
    
      WizardForm.WelcomeLabel1.Height:=WizardForm.WelcomeLabel1.Height + HeightOffset;
    
      WizardForm.WelcomeLabel1.Width:=WizardForm.WelcomeLabel1.Width + WidthOffset;
      WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;
    
      WizardForm.WelcomeLabel2.Height:=WizardForm.WelcomeLabel2.Height + HeightOffset;
    
      WizardForm.WelcomeLabel2.Width:=WizardForm.WelcomeLabel2.Width + WidthOffset;
    
    
      WizardForm.LicenseLabel1.Width:=WizardForm.LicenseLabel1.Width + WidthOffset;
    
      WizardForm.LicenseMemo.Height:=WizardForm.LicenseMemo.Height + HeightOffset;
    
      WizardForm.LicenseMemo.Width:=WizardForm.LicenseMemo.Width + WidthOffset;
    
      WizardForm.LicenseNotAcceptedRadio.Top:=WizardForm.LicenseNotAcceptedRadio.Top + HeightOffset;
    
      WizardForm.LicenseAcceptedRadio.Top:=WizardForm.LicenseAcceptedRadio.Top + HeightOffset;
      WizardForm.InfoBeforeClickLabel.Width:=WizardForm.InfoBeforeClickLabel.Width + WidthOffset;
    
      WizardForm.InfoBeforeMemo.Height:=WizardForm.InfoBeforeMemo.Height + HeightOffset;
    
      WizardForm.InfoBeforeMemo.Width:=WizardForm.InfoBeforeMemo.Width + WidthOffset;
      WizardForm.SelectDirLabel.Width:=WizardForm.SelectDirLabel.Width + WidthOffset;
    
      WizardForm.SelectDirBrowseLabel.Width:=WizardForm.SelectDirBrowseLabel.Width + WidthOffset;
    
      WizardForm.DiskSpaceLabel.Top:=WizardForm.DiskSpaceLabel.Top + HeightOffset;
    
      WizardForm.DirBrowseButton.Left:=WizardForm.DirBrowseButton.Left + HeightOffset;
    
      WizardForm.DirEdit.Width:=WizardForm.DirEdit.Width + HeightOffset;
      WizardForm.ComponentsDiskSpaceLabel.Top:=WizardForm.ComponentsDiskSpaceLabel.Top + HeightOffset;
    
      WizardForm.SelectComponentsLabel.Width:=WizardForm.SelectComponentsLabel.Width + WidthOffset;
    
      WizardForm.ComponentsList.Height:=WizardForm.ComponentsList.Height + HeightOffset;
    
      WizardForm.ComponentsList.Width:=WizardForm.ComponentsList.Width + WidthOffset;
      WizardForm.ReadyLabel.Width:=WizardForm.ReadyLabel.Width + WidthOffset;
    
      WizardForm.ReadyMemo.Height:=WizardForm.ReadyMemo.Height + HeightOffset;
    
      WizardForm.ReadyMemo.Width:=WizardForm.ReadyMemo.Width + WidthOffset;
      WizardForm.ProgressGauge.Width:=WizardForm.ProgressGauge.Width + HeightOffset;
    
      WizardForm.FilenameLabel.Width:=WizardForm.FilenameLabel.Width + HeightOffset;
    
      WizardForm.StatusLabel.Width:=WizardForm.StatusLabel.Width + HeightOffset;
    
    end;
    /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- /// --- ///
    type
    
      TComponentDesc = record
    
        Description: String;
    
        ImageName: String;
    
        Index: Integer;
    
      end;
    var
    
      CompDescs: array of TComponentDesc;
    
      CompDescPanel, CompDescImgPanel: TPanel;
    
      CompDescText: array[1..2] of TLabel;
    
      CompIndex, LastIndex: Integer;
    
      CompDescImg: TBitmapImage;
    procedure ShowCompDescription(Sender: TObject; X, Y, Index: Integer; Area: TItemArea);
    
    var
    
      i: Integer;
    
    begin
    
      if Index = LastIndex then Exit;
    
      CompIndex := -1;
    
      for i := 0 to GetArrayLength(CompDescs) -1 do
    
      begin
    
        if (CompDescs[i].Index = Index) then
    
        begin
    
          CompIndex := i;
    
          Break;
    
        end;
    
      end;
    
      if (CompIndex >= 0) and (Area = iaItem) then
    
      begin
    
        if not FileExists(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName) then
    
          ExtractTemporaryFile(CompDescs[CompIndex].ImageName);
    
        CompDescImg.Bitmap.LoadFromFile(ExpandConstant('{tmp}\') + CompDescs[CompIndex].ImageName);
    
        CompDescImg.Show;
        CompDescText[2].Caption := CompDescs[CompIndex].Description;
    
        CompDescText[2].Enabled := True;
    
      end else
    
      begin
    
        CompDescText[2].Caption := CustomMessage('ComponentsInfo');
    
        CompDescText[2].Enabled := False;
    
        CompDescImg.Hide;
    
      end;
    
      LastIndex := Index;
    
    end;
    procedure CompListMouseLeave(Sender: TObject);
    
    begin
    
      CompDescImg.Hide;
    
      CompDescText[2].Caption := CustomMessage('ComponentsInfo');
    
      CompDescText[2].Enabled := False;
    
      LastIndex := -1;
    
    end;
    procedure AddCompDescription(AIndex: Integer; ADescription: String; AImageName: String);
    
    var
    
      i: Integer;
    
    begin
    
      i := GetArrayLength(CompDescs);
    
      SetArrayLength(CompDescs, i + 1);
    
      CompDescs[i].Description := ADescription;
    
      CompDescs[i].ImageName := AImageName;
    
      CompDescs[i].Index := AIndex - 1
    
    end;
    procedure InitializeWizard();
    
    begin
    
      InitializeWizard1(); {из BackUpPage.iss}
    
      InitializeWizard2(); {из Music.iss}
    
      RedesignWizardForm;
    
      WindowResize();
    begin
    
      WizardForm.SelectComponentsLabel.Hide;
    
      WizardForm.TypesCombo.Hide;
    
      WizardForm.ComponentsList.SetBounds(ScaleX(260), ScaleY(20), ScaleX(357), ScaleY(333));
    
      WizardForm.ComponentsList.OnItemMouseMove:= @ShowCompDescription;
    
      WizardForm.ComponentsList.OnMouseLeave := @CompListMouseLeave;
      CompDescImgPanel := TPanel.Create(WizardForm);
    
      with CompDescImgPanel do
    
      begin
    
        Parent := WizardForm.SelectComponentsPage;
    
        SetBounds(ScaleX(0), ScaleY(20), ScaleX(253), ScaleY(203));  //рамка картинки
    
        BevelInner := bvLowered;
    
      end;
      CompDescText[1] := TLabel.Create(WizardForm);
    
      with CompDescText[1] do
    
      begin
    
        Parent := CompDescImgPanel;
    
        SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10));
    
        AutoSize := False;
    
        WordWrap := True;
    
        Enabled := False;
    
        Caption := CustomMessage('ComponentsImgInfo');
    
      end;
      CompDescImg := TBitmapImage.Create(WizardForm);
    
      with CompDescImg do
    
      begin
    
        Parent := CompDescImgPanel;
    
        SetBounds(ScaleX(5), ScaleY(5), CompDescImgPanel.Width - ScaleX(10), CompDescImgPanel.Height - ScaleY(10));
    
        Stretch := True;
    
        Hide;
    
      end;
      CompDescPanel := TPanel.Create(WizardForm);
    
      with CompDescPanel do
    
      begin
    
        Parent := WizardForm.SelectComponentsPage;
    
        SetBounds(ScaleX(0), ScaleY(230), ScaleX(253), ScaleY(123));  //Нижния рамка
    
        BevelInner := bvLowered;
    
      end;
      CompDescText[2] := TLabel.Create(WizardForm);
    
      with CompDescText[2] do
    
      begin
    
        Parent := CompDescPanel;
    
        SetBounds(ScaleX(5), ScaleY(5), CompDescPanel.Width - ScaleX(10), CompDescPanel.Height - ScaleY(10));
    
        AutoSize := False;
    
        WordWrap := True;
    
        Enabled := False;
    
        Caption := CustomMessage('ComponentsInfo');
    
      end;
      AddCompDescription(1, CustomMessage('CompDesc1'), 'CompDescImg1.bmp');
    
      AddCompDescription(2, CustomMessage('CompDesc2'), 'CompDescImg2.bmp');
    
      AddCompDescription(3, CustomMessage('CompDesc3'), 'CompDescImg3.bmp');
    
      AddCompDescription(4, CustomMessage('CompDesc4'), 'CompDescImg4.bmp');
    
      AddCompDescription(5, CustomMessage('CompDesc5'), 'CompDescImg5.bmp');
    
      AddCompDescription(6, CustomMessage('CompDesc6'), 'CompDescImg6.bmp');
    
      AddCompDescription(7, CustomMessage('CompDesc7'), 'CompDescImg7.bmp');
    
      AddCompDescription(8, CustomMessage('CompDesc8'), 'CompDescImg8.bmp');
    
      AddCompDescription(9, CustomMessage('CompDesc9'), 'CompDescImg9.bmp');
    
      AddCompDescription(10, CustomMessage('CompDesc10'), 'CompDescImg10.bmp');
    
      AddCompDescription(11, CustomMessage('CompDesc11'), 'CompDescImg11.bmp');
    
      AddCompDescription(12, CustomMessage('CompDesc12'), 'CompDescImg12.bmp');
    
      AddCompDescription(13, CustomMessage('CompDesc13'), 'CompDescImg13.bmp');
    
      AddCompDescription(14, CustomMessage('CompDesc14'), 'CompDescImg14.bmp');
    
      AddCompDescription(15, CustomMessage('CompDesc15'), 'CompDescImg15.bmp');
    
      AddCompDescription(16, CustomMessage('CompDesc16'), 'CompDescImg16.bmp');
    
      AddCompDescription(17, CustomMessage('CompDesc17'), 'CompDescImg17.bmp');
    
      AddCompDescription(18, CustomMessage('CompDesc18'), 'CompDescImg18.bmp');
    
      AddCompDescription(19, CustomMessage('CompDesc19'), 'CompDescImg19.bmp');
    
      AddCompDescription(20, CustomMessage('CompDesc20'), 'CompDescImg20.bmp');
    
      AddCompDescription(21, CustomMessage('CompDesc21'), 'CompDescImg21.bmp');
    
      AddCompDescription(22, CustomMessage('CompDesc22'), 'CompDescImg22.bmp');
    
      AddCompDescription(23, CustomMessage('CompDesc23'), 'CompDescImg23.bmp');
    
      AddCompDescription(24, CustomMessage('CompDesc24'), 'CompDescImg24.bmp');
    
      AddCompDescription(25, CustomMessage('CompDesc25'), 'CompDescImg25.bmp');
    
      AddCompDescription(26, CustomMessage('CompDesc26'), 'CompDescImg26.bmp');
    
      AddCompDescription(27, CustomMessage('CompDesc27'), 'CompDescImg27.bmp');
    
      AddCompDescription(28, CustomMessage('CompDesc28'), 'CompDescImg28.bmp');
    
      AddCompDescription(29, CustomMessage('CompDesc29'), 'CompDescImg29.bmp');
    
      AddCompDescription(30, CustomMessage('CompDesc30'), 'CompDescImg30.bmp');
    
      AddCompDescription(31, CustomMessage('CompDesc31'), 'CompDescImg31.bmp');
    
      AddCompDescription(32, CustomMessage('CompDesc32'), 'CompDescImg32.bmp');
    
      AddCompDescription(33, CustomMessage('CompDesc33'), 'CompDescImg33.bmp');
    
      AddCompDescription(34, CustomMessage('CompDesc34'), 'CompDescImg34.bmp');
    
      AddCompDescription(35, CustomMessage('CompDesc35'), 'CompDescImg35.bmp');
    
      AddCompDescription(36, CustomMessage('CompDesc36'), 'CompDescImg36.bmp');
    
      AddCompDescription(37, CustomMessage('CompDesc37'), 'CompDescImg37.bmp');
    
      AddCompDescription(38, CustomMessage('CompDesc38'), 'CompDescImg38.bmp');
    
      AddCompDescription(39, CustomMessage('CompDesc39'), 'CompDescImg39.bmp');
    
      AddCompDescription(40, CustomMessage('CompDesc40'), 'CompDescImg40.bmp');
    
      AddCompDescription(41, CustomMessage('CompDesc41'), 'CompDescImg41.bmp');
    
      AddCompDescription(42, CustomMessage('CompDesc42'), 'CompDescImg42.bmp');
    
      AddCompDescription(43, CustomMessage('CompDesc43'), 'CompDescImg43.bmp');
    
      AddCompDescription(44, CustomMessage('CompDesc44'), 'CompDescImg44.bmp');
    
      AddCompDescription(45, CustomMessage('CompDesc45'), 'CompDescImg45.bmp');
    
      AddCompDescription(46, CustomMessage('CompDesc46'), 'CompDescImg46.bmp');
    
      AddCompDescription(47, CustomMessage('CompDesc47'), 'CompDescImg47.bmp');
    
      AddCompDescription(48, CustomMessage('CompDesc48'), 'CompDescImg48.bmp');
    
      AddCompDescription(49, CustomMessage('CompDesc49'), 'CompDescImg49.bmp');
    
      AddCompDescription(50, CustomMessage('CompDesc50'), 'CompDescImg50.bmp');
    
      AddCompDescription(51, CustomMessage('CompDesc51'), 'CompDescImg51.bmp');
    
      end;
    
    end;

     

    Дизайн, мягко говоря не очень.

  2. Красивый модпак?

    Явно есть куда стремиться :)

    - Между "Отступаем" и "В ангар" 160 пикселей, а между "В ангар" и "Так точно" 150, не хорошо.

    - На 4 скрине надпись "Требуется как минимум ..." требует отступов снизу и слева

    - Картинка в начале явно не привлекает к дальнейшему использованию модпака, как и верхняя картинка.

    - FAQ тоже требует отступов. Вот как придет Win10 со своим интерфейсом, там еще можно поглядеть, но скорее всего они (отступы) все равно нужны.

    - "Выберите компоненты которые хотите...." зачем такой странный отступ слева? Да и сверху можно уменьшить. А чем больше список компонентов - тем лучше)

  3. Нужно разработать 2 модификации (или хотя бы одну из):

     

    1. Оповещения внутри игры о выходе новой версии модпака:

    При выходе новой версии отображать сообщение об этом в центре уведомлений. В сообщении кнопка, по нажатию которой откроется окошко с подробностями.

     

    2. Оповещение о стримах в клиенте игры:

    В информационный канал игры выводить информацию о будущих стримах.

     

    Серверная часть обоих модов готова, надо только реализовать это в клиенте.

     

    За всеми подробностями в скайп: zeddfray

  4. Всем привет, появилась необходимость в написании модификации для нашей игры.

    Сам мод представляет собой кнопку в ангаре, по нажатию которой откроется окошко с какой-то информацией, получаемой с сайта.

    В какую сторону копать? На данный момент знаю основы Python и немного AS.

    С чего начать?

     

    P.S. Про тему "Оплачиваемые заказы" знаю, но самому интереснее))

  5. Вопрос в другом, как это может повлиять на рандом?

    Думается мне, что WG поторопились с отменой этого запрета, потому как использование свободной камеры во время боя, в ситуациях когда остался 1 на 1 с кем-то, даст преимущество тому кто использует, либо тому, кому подсказывают, так как используя свободную камеру, можно палить передвижения противника по сломанным элементам карт, трассерам и так далее..

    Данные о сломанных объектах передаются не со всей карты, там определенные размеры, в которых это можно заметить и невооруженным взглядом. Хотя, преимущество все равно большое

  6. Доброго времени суток :)

     

    Добавил в модпак картинок, все работает, только этих самых картинок получилось более 80 штук, и размером они по 109 кб, и при первом наведении мыши на компонент его картинка немного долго подгружается. При втором наведении все ок. Можно ли как то исправить или хотя бы уменьшить долгую подгрузку?

     

    Заранее спасибо :)

     

    P.S.: Картинки в BMP 16 бит

  7. Нужно создать элемент типа TRichEditViewer.

    Теперь ошибка

    37f1635652097fba92762926fd9d5689.png

     

    Показывает ошибку на

    LoadStringFromFile(ExpandConstant('{tmp}\faq.rtf'), RTF);
    

    Нужно создать элемент типа TRichEditViewer.

    Спасибо за наводку и скрипт, все работает :)

     

    Вот код:

    var
      Edit: TRichEditViewer;
      RTF: AnsiString;
    ExtractTemporaryFile('faq.rtf');
      LoadStringFromFile(ExpandConstant('{tmp}\faq.rtf'), RTF);
      Edit := TRichEditViewer.Create(Form);
      with Edit do
      begin
       Parent := Form;
       ScrollBars := ssVertical;
       ReadOnly := True;
       Left := 20;
       Top := 20;
       Width := 490;
       Height := 297;
       RTFText := RTF;
      end;
    
  8. Всем привет :)

    Есть кастомное окно, в котором TNewMemo. Как загрузить в этот самый TNewMemo rtf-файл?

    Или есть какие то другие способы загружать rtf файлы?

     

    Edit := TNewMemo.Create(Form);

    Edit.Top := 20;

    Edit.left := 20;

    Edit.Width := 100;

    Edit.Height := ScaleY(89);

    Edit.ScrollBars := ssVertical;

    Edit.Text := 'ssss';

    Edit.Parent := Form;

    Edit.ReadOnly:=true;

×
×
  • Create New...