Changeset 20 for trunk/Start.pas


Ignore:
Timestamp:
Jan 8, 2017, 12:23:55 PM (7 years ago)
Author:
chronos
Message:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Start.pas

    r17 r20  
    194194
    195195  if FirstStart then
    196   begin
     196  with Reg do begin
    197197    // initialize AI assignment
    198     Reg.OpenKey('SOFTWARE\cevo\RegVer9\Start', true);
    199     for i := 0 to nPlOffered - 1 do
     198    OpenKey('SOFTWARE\cevo\RegVer9\Start', true);
     199    for I := 0 to nPlOffered - 1 do
    200200    begin
    201201      if i = 0 then
     
    203203      else
    204204        s := 'StdAI';
    205       Reg.WriteString('Control' + IntToStr(i), s);
    206       Reg.WriteInteger('Diff' + IntToStr(i), 2);
     205      WriteString('Control' + IntToStr(i), s);
     206      WriteInteger('Diff' + IntToStr(i), 2);
    207207    end;
    208     Reg.WriteInteger('MultiControl', 0);
    209     Reg.closekey;
    210   end
    211   else
    212   begin
    213     Reg.OpenKey('SOFTWARE\cevo\RegVer9\Start', false);
    214     try
    215       WorldSize := Reg.ReadInteger('WorldSize');
    216       StartLandMass := Reg.ReadInteger('LandMass');
    217       MaxTurn := Reg.ReadInteger('MaxTurn');
    218       DefaultAI := Reg.ReadString('DefaultAI');
    219       AutoEnemies := Reg.ReadInteger('AutoEnemies');
    220       AutoDiff := Reg.ReadInteger('AutoDiff');
    221     except
    222       FirstStart := true;
    223     end;
    224     Reg.closekey;
     208    WriteInteger('MultiControl', 0);
     209    CloseKey;
     210  end;
     211
     212  with Reg do begin
     213    OpenKey('SOFTWARE\cevo\RegVer9\Start', False);
     214    if ValueExists('WorldSize') then WorldSize := Reg.ReadInteger('WorldSize')
     215      else WorldSize := DefaultWorldSize;
     216    if ValueExists('LandMass') then StartLandMass := Reg.ReadInteger('LandMass')
     217      else StartLandMass := DefaultLandMass;
     218    if ValueExists('MaxTurn') then MaxTurn := Reg.ReadInteger('MaxTurn')
     219      else MaxTurn := 800;
     220    if ValueExists('DefaultAI') then DefaultAI := Reg.ReadString('DefaultAI')
     221      else DefaultAI := 'StdAI';
     222    if ValueExists('AutoEnemies') then AutoEnemies := Reg.ReadInteger('AutoEnemies')
     223      else AutoEnemies := 8;
     224    if ValueExists('AutoDiff') then AutoDiff := Reg.ReadInteger('AutoDiff')
     225      else AutoDiff := 1;
     226    CloseKey;
    225227  end;
    226228
    227229  FullScreen := true;
    228   if FirstStart then
    229   begin
    230     WorldSize := DefaultWorldSize;
    231     StartLandMass := DefaultLandMass;
    232     MaxTurn := 800;
    233     DefaultAI := 'StdAI';
    234     AutoEnemies := 8;
    235     AutoDiff := 1;
    236   end
    237   else
    238   begin
    239     Reg.OpenKey('SOFTWARE\cevo\RegVer9', false);
    240     if Reg.ValueExists('ScreenMode') then
    241       ScreenMode := Reg.ReadInteger('ScreenMode');
     230  with Reg do begin
     231    OpenKey('SOFTWARE\cevo\RegVer9', False);
     232    if ValueExists('ScreenMode') then
     233      ScreenMode := ReadInteger('ScreenMode')
     234      else ScreenMode := 1;
    242235    FullScreen := ScreenMode > 0;
    243     if Reg.ValueExists('ResolutionX') then
    244       ResolutionX := Reg.ReadInteger('ResolutionX');
    245     if Reg.ValueExists('ResolutionY') then
    246       ResolutionY := Reg.ReadInteger('ResolutionY');
    247     if Reg.ValueExists('ResolutionBPP') then
    248       ResolutionBPP := Reg.ReadInteger('ResolutionBPP');
    249     if Reg.ValueExists('ResolutionFreq') then
    250       ResolutionFreq := Reg.ReadInteger('ResolutionFreq');
     236    if ValueExists('ResolutionX') then
     237      ResolutionX := ReadInteger('ResolutionX');
     238    if ValueExists('ResolutionY') then
     239      ResolutionY := ReadInteger('ResolutionY');
     240    if ValueExists('ResolutionBPP') then
     241      ResolutionBPP := ReadInteger('ResolutionBPP');
     242    if ValueExists('ResolutionFreq') then
     243      ResolutionFreq := ReadInteger('ResolutionFreq');
    251244    {$IFDEF WINDOWS}
    252245    if ScreenMode = 2 then
     
    254247        ResolutionFreq);
    255248    {$ENDIF}
    256     Reg.closekey;
     249    CloseKey;
    257250  end;
    258251  Reg.Free;
     
    260253  ActionsOffered := [maManual, maCredits, maWeb];
    261254  if FileExists(HomeDir + 'Configurator.exe') then
    262     include(ActionsOffered, maConfig);
    263   if FileExists(HomeDir + 'AI Template\AI development manual.html') then
    264     include(ActionsOffered, maAIDev);
     255    Include(ActionsOffered, maConfig);
     256  if FileExists(HomeDir + 'AI Template' + DirectorySeparator + 'AI development manual.html') then
     257    Include(ActionsOffered, maAIDev);
    265258
    266259  bixDefault := -1;
     
    887880      begin // load
    888881        FileName := List.Items[List.ItemIndex];
    889         if LoadGame(DataDir + 'Saved\', FileName + '.cevo', LoadTurn, false)
     882        if LoadGame(DataDir + 'Saved' + DirectorySeparator, FileName + '.cevo', LoadTurn, false)
    890883        then
    891884          UnlistBackupFile(FileName)
     
    907900        Reg := TRegistry.Create;
    908901        Reg.OpenKey('SOFTWARE\cevo\RegVer9\Start', true);
    909         try
    910           GameCount := Reg.ReadInteger('GameCount');
    911         except
    912           GameCount := 0;
    913         end;
     902        if Reg.ValueExists('GameCount') then GameCount := Reg.ReadInteger('GameCount')
     903          else GameCount := 0;
    914904
    915905        if (AutoDiff < 0) and (bixView[0] = bixNoTerm) then
     
    983973        Reg.Free;
    984974
    985         StartNewGame(DataDir + 'Saved\', FileName + '.cevo', MapFileName,
     975        StartNewGame(DataDir + 'Saved' + DirectorySeparator, FileName + '.cevo', MapFileName,
    986976          lxpre[WorldSize], lypre[WorldSize], StartLandMass, MaxTurn);
    987977        UnlistBackupFile(FileName);
     
    11251115    pgLoad:
    11261116      begin
    1127         AssignFile(LogFile, DataDir + 'Saved\' + List.Items[List.ItemIndex]
     1117        AssignFile(LogFile, DataDir + 'Saved' + DirectorySeparator + List.Items[List.ItemIndex]
    11281118          + '.cevo');
    11291119        try
     
    11801170        if Page = pgEditMap then
    11811171          MapFileName := List.Items[List.ItemIndex] + '.cevo map';
    1182         if LoadGraphicFile(Mini, DataDir + 'Maps\' + Copy(MapFileName, 1,
     1172        if LoadGraphicFile(Mini, DataDir + 'Maps' + DirectorySeparator + Copy(MapFileName, 1,
    11831173          Length(MapFileName) - 9), gfNoError) then
    11841174        begin
     
    11971187        end;
    11981188
    1199         AssignFile(MapFile, DataDir + 'Maps\' + MapFileName);
     1189        AssignFile(MapFile, DataDir + 'Maps' + DirectorySeparator + MapFileName);
    12001190        try
    12011191          Reset(MapFile, 4);
     
    13721362begin
    13731363  FormerGames.Clear;
    1374   if FindFirst(DataDir + 'Saved\*.cevo', $21, f) = 0 then
     1364  if FindFirst(DataDir + 'Saved' + DirectorySeparator + '*.cevo', $21, f) = 0 then
    13751365    repeat
    13761366      i := FormerGames.Count;
     
    13911381begin
    13921382  Maps.Clear;
    1393   if FindFirst(DataDir + 'Maps\*.cevo map', $21, f) = 0 then
     1383  if FindFirst(DataDir + 'Maps' + DirectorySeparator + '*.cevo map', $21, f) = 0 then
    13941384    repeat
    13951385      Maps.Add(Copy(f.Name, 1, Length(f.Name) - 9));
     
    15891579        DirectHelp(cStartCredits);
    15901580      maAIDev:
    1591          OpenDocument(pchar(HomeDir + 'AI Template\AI development manual.html'));{ *Převedeno z ShellExecute* }
     1581         OpenDocument(pchar(HomeDir + 'AI Template' + DirectorySeparator + 'AI development manual.html'));{ *Převedeno z ShellExecute* }
    15921582      maWeb:
    15931583        OpenURL('http://c-evo.org'){ *Převedeno z ShellExecute* }
     
    17561746        end;
    17571747      if Page = pgLoad then
    1758         AssignFile(f, DataDir + 'Saved\' + List.Items[List.ItemIndex] + '.cevo')
     1748        AssignFile(f, DataDir + 'Saved' + DirectorySeparator + List.Items[List.ItemIndex] + '.cevo')
    17591749      else
    1760         AssignFile(f, DataDir + 'Maps\' + List.Items[List.ItemIndex] +
     1750        AssignFile(f, DataDir + 'Maps'+ DirectorySeparator + List.Items[List.ItemIndex] +
    17611751          '.cevo map');
    17621752      ok := true;
    17631753      try
    17641754        if Page = pgLoad then
    1765           Rename(f, DataDir + 'Saved\' + NewName + '.cevo')
     1755          Rename(f, DataDir + 'Saved'+ DirectorySeparator + NewName + '.cevo')
    17661756        else
    1767           Rename(f, DataDir + 'Maps\' + NewName + '.cevo map');
     1757          Rename(f, DataDir + 'Maps'+ DirectorySeparator + NewName + '.cevo map');
    17681758      except
    17691759        // Play('INVALID');
     
    17721762      if Page <> pgLoad then
    17731763        try // rename map picture
    1774           AssignFile(f, DataDir + 'Maps\' + List.Items[List.ItemIndex]
     1764          AssignFile(f, DataDir + 'Maps'+ DirectorySeparator + List.Items[List.ItemIndex]
    17751765            + '.bmp');
    1776           Rename(f, DataDir + 'Maps\' + NewName + '.bmp');
     1766          Rename(f, DataDir + 'Maps'+ DirectorySeparator + NewName + '.bmp');
    17771767        except
    17781768        end;
     
    18081798    begin
    18091799      if Page = pgLoad then
    1810         AssignFile(f, DataDir + 'Saved\' + List.Items[List.ItemIndex] + '.cevo')
     1800        AssignFile(f, DataDir + 'Saved' + DirectorySeparator + List.Items[List.ItemIndex] + '.cevo')
    18111801      else
    1812         AssignFile(f, DataDir + 'Maps\' + List.Items[List.ItemIndex] +
     1802        AssignFile(f, DataDir + 'Maps' + DirectorySeparator + List.Items[List.ItemIndex] +
    18131803          '.cevo map');
    18141804      Erase(f);
     
    20021992procedure TStartDlg.ReplayBtnClick(Sender: TObject);
    20031993begin
    2004   LoadGame(DataDir + 'Saved\', List.Items[List.ItemIndex] + '.cevo',
     1994  LoadGame(DataDir + 'Saved' + DirectorySeparator, List.Items[List.ItemIndex] + '.cevo',
    20051995    LastTurn, true);
    20061996  SlotAvailable := -1;
Note: See TracChangeset for help on using the changeset viewer.