unit UFormHelp;

{$mode delphi}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TFormHelp }

  TFormHelp = class(TForm)
    Memo1: TMemo;
    procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  FormHelp: TFormHelp;


implementation

uses
  UCore;

resourcestring
  SContent = 'xTactics is a risk based strategic game. Main focus of the game ' +
    'is to offer player various possibilities to configure game conditions. ' +
    'Map for game is generated randomly for each play. Game is multiplayer so ' +
    'single player can play with other human opponents or with many computer ' +
    'opponents.' + LineEnding + LineEnding +
    'Each cell has defined number of units which can be instructed to attack ' +
    'enemy or neutral adjacent cells. Units can also defend against enemy attach from adjacent cells. ' +
    'You can move units inside your territory. ' + LineEnding +
    'Number of units in cells grows by square root of number of units. More units cell contains, more ' +
    'units is added each turn. Maximum number to which units grow is 99. Cell can ' +
    'have more units but excessive cells will die gradually every turn to balance to number 99.' +
    LineEnding + LineEnding +
    'Resolution of attack of units is determined by rule similar to one which is ' +
    'used in Risk game. Battle consist of several fights. Each fight attacker can use ' +
    'up to 3 units and defender up to 2 units. Number of units for each side determine ' +
    'number of dices. Both sides roll their dices and order them in descending order. ' +
    'Each side takes one dice with highest value. One who has dice with higher value wins. ' +
    'In case of tie, defender wins. Loser lose its unit and another pair of dices is evaluated. ' +
    'This process is calculated automatically and for each planned attack win ' +
    'probability is displayed.' +
    LineEnding + LineEnding +
    'Units can be moved by clicking on owned cell and then by clicking on target neutral ' +
    'or enemy cell. Moves can be set to be repeated every turn with defined number of units. ' +
    'Repeated unit moves can be set in Unit move dialog or simply by holding Control key while selecting target cell. ' +
    'If there are multiple unit moves from one cell to more other cells and ' +
    'you want to move all available cells to target cell, then you can do so by holding Shift key while selecting target cell.';

{$R *.lfm}

{ TFormHelp }

procedure TFormHelp.FormCreate(Sender: TObject);
begin
  Core.CoolTranslator1.TranslateComponentRecursive(Self);
  Memo1.Lines.Text := SContent;
end;

procedure TFormHelp.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
  Core.PersistentForm.Save(Self);
end;

procedure TFormHelp.FormShow(Sender: TObject);
begin
  Core.PersistentForm.Load(Self);
  Core.ThemeManager1.UseTheme(Self);
end;

end.

