Subversion Repositories spacemission

Rev

Rev 1 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1 Rev 2
Line 45... Line 45...
45
  end;
45
  end;
46
 
46
 
47
var
47
var
48
  SpeicherungForm: TSpeicherungForm;
48
  SpeicherungForm: TSpeicherungForm;
49
 
49
 
50
const
-
 
51
  FCompVersion = '1.0';
-
 
52
 
-
 
53
implementation
50
implementation
54
 
51
 
55
uses
52
uses
56
  SplMain;
53
  Global, SplMain;
57
 
54
 
58
{$R *.DFM}
55
{$R *.DFM}
59
 
56
 
60
procedure TSpeicherungForm.SearchSaves;
57
procedure TSpeicherungForm.SearchSaves;
61
var
58
var
Line 77... Line 74...
77
  li2b.caption := 'n/a';
74
  li2b.caption := 'n/a';
78
  li3b.caption := 'n/a';
75
  li3b.caption := 'n/a';
79
  li4b.caption := 'n/a';
76
  li4b.caption := 'n/a';
80
  LadenBtn.enabled := false;
77
  LadenBtn.enabled := false;
81
  LoeschenBtn.enabled := false;
78
  LoeschenBtn.enabled := false;
82
  res := FindFirst(mainform.fdirectory+'Spielstände\*.sav', 0, sr);
79
  res := FindFirst(fdirectory+'Spielstände\*.sav', 0, sr);
83
  try
80
  try
84
    while (res = 0) do
81
    while (res = 0) do
85
    begin
82
    begin
86
      if (sr.name <> '.') and (sr.name <> '..') then
83
      if (sr.name <> '.') and (sr.name <> '..') then
87
        LevelListBox.items.Add(copy(sr.Name, 0, length(sr.name)-4));
84
        LevelListBox.items.Add(copy(sr.Name, 0, length(sr.name)-4));
Line 119... Line 116...
119
    li2b.caption := 'n/a';
116
    li2b.caption := 'n/a';
120
    li3b.caption := 'n/a';
117
    li3b.caption := 'n/a';
121
    li4b.caption := 'n/a';
118
    li4b.caption := 'n/a';
122
    LadenBtn.enabled := false;
119
    LadenBtn.enabled := false;
123
    LoeschenBtn.enabled := false;
120
    LoeschenBtn.enabled := false;
124
    deletefile(mainform.FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
121
    deletefile(FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
125
    searchsaves;
122
    searchsaves;
126
  end;
123
  end;
127
end;
124
end;
128
 
125
 
129
procedure TSpeicherungForm.LadenBtnClick(Sender: TObject);
126
procedure TSpeicherungForm.LadenBtnClick(Sender: TObject);
Line 156... Line 153...
156
    LadenBtn.enabled := false;
153
    LadenBtn.enabled := false;
157
    LoeschenBtn.enabled := false;
154
    LoeschenBtn.enabled := false;
158
  end;
155
  end;
159
  {if liu.visible or (LevelListBox.items.count=0) then
156
  {if liu.visible or (LevelListBox.items.count=0) then
160
    exit;}
157
    exit;}
161
  AssignFile(SavGame, mainform.FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
158
  AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
162
  Reset(SavGame);
159
  Reset(SavGame);
163
  ReadLN(SavGame);
160
  ReadLN(SavGame);
164
  ReadLN(SavGame);
161
  ReadLN(SavGame);
165
  ReadLN(SavGame, mainform.FScore);
162
  ReadLN(SavGame, mainform.FScore);
166
  ReadLN(SavGame, mainform.FLife);
163
  ReadLN(SavGame, mainform.FLife);
Line 204... Line 201...
204
  if LevelListBox.items.IndexOf(LevelName.text) > -1 then
201
  if LevelListBox.items.IndexOf(LevelName.text) > -1 then
205
  begin
202
  begin
206
    if MessageDlg('Spielstand ist bereits vorhanden. Ersetzen?', mtConfirmation, [mbYes, mbNo], 0) = mrNo then
203
    if MessageDlg('Spielstand ist bereits vorhanden. Ersetzen?', mtConfirmation, [mbYes, mbNo], 0) = mrNo then
207
      exit;
204
      exit;
208
  end;
205
  end;
209
  AssignFile(SavGame, mainform.FDirectory+'Spielstände\'+LevelName.text+'.sav');
206
  AssignFile(SavGame, FDirectory+'Spielstände\'+LevelName.text+'.sav');
210
  Rewrite(SavGame);
207
  Rewrite(SavGame);
211
  WriteLN(SavGame, '; SpaceMission '+FCompVersion);
208
  WriteLN(SavGame, '; SpaceMission '+FCompVersion);
212
  WriteLN(SavGame, '; SAV-File');
209
  WriteLN(SavGame, '; SAV-File');
213
  WriteLN(SavGame, mainform.FScore);
210
  WriteLN(SavGame, mainform.FScore);
214
  WriteLN(SavGame, mainform.FLife);
211
  WriteLN(SavGame, mainform.FLife);
Line 245... Line 242...
245
    loeschenbtn.enabled := false;
242
    loeschenbtn.enabled := false;
246
    liw.visible := true;
243
    liw.visible := true;
247
    exit;
244
    exit;
248
  end;
245
  end;
249
  LevelName.Text := LevelListBox.Items.strings[LevelListBox.itemindex];
246
  LevelName.Text := LevelListBox.Items.strings[LevelListBox.itemindex];
250
  AssignFile(SavGame, mainform.FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
247
  AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav');
251
  Reset(SavGame);
248
  Reset(SavGame);
252
  ReadLN(SavGame, Ergebniss);
249
  ReadLN(SavGame, Ergebniss);
253
  if Ergebniss <> '; SpaceMission '+FCompVersion then
250
  if Ergebniss <> '; SpaceMission '+FCompVersion then
254
  begin
251
  begin
255
    liu.visible := true;
252
    liu.visible := true;