Rev 4 | Rev 15 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4 | Rev 6 | ||
---|---|---|---|
1 | unit GamSpeicherung; |
1 | unit GamSpeicherung; |
2 | 2 | ||
3 | interface |
3 | interface |
4 | 4 | ||
5 | uses |
5 | uses |
6 | Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, |
6 | Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, |
7 | StdCtrls, ExtCtrls, Spin, System.UITypes; |
7 | StdCtrls, ExtCtrls, Spin{$IF CompilerVersion >= 23.0}, System.UITypes{$IFEND}; |
8 | 8 | ||
9 | type |
9 | type |
10 | TSpeicherungForm = class(TForm) |
10 | TSpeicherungForm = class(TForm) |
11 | Bevel1: TBevel; |
11 | Bevel1: TBevel; |
12 | LadenBtn: TButton; |
12 | LadenBtn: TButton; |
13 | LoeschenBtn: TButton; |
13 | LoeschenBtn: TButton; |
14 | AktualisierenBtn: TButton; |
14 | AktualisierenBtn: TButton; |
15 | SpeichernBtn: TButton; |
15 | SpeichernBtn: TButton; |
16 | AbbrechenBtn: TButton; |
16 | AbbrechenBtn: TButton; |
17 | LevelListBox: TListBox; |
17 | LevelListBox: TListBox; |
18 | Label2: TLabel; |
18 | Label2: TLabel; |
19 | Label3: TLabel; |
19 | Label3: TLabel; |
20 | Label1: TLabel; |
20 | Label1: TLabel; |
21 | LevelName: TEdit; |
21 | LevelName: TEdit; |
22 | ElPanel1: TPanel; |
22 | ElPanel1: TPanel; |
23 | li4a: TLabel; |
23 | li4a: TLabel; |
24 | li1: TLabel; |
24 | li1: TLabel; |
25 | li3b: TLabel; |
25 | li3b: TLabel; |
26 | li3a: TLabel; |
26 | li3a: TLabel; |
27 | li4b: TLabel; |
27 | li4b: TLabel; |
28 | liu: TLabel; |
28 | liu: TLabel; |
29 | liw: TLabel; |
29 | liw: TLabel; |
30 | li2a: TLabel; |
30 | li2a: TLabel; |
31 | li2b: TLabel; |
31 | li2b: TLabel; |
32 | procedure LoeschenBtnClick(Sender: TObject); |
32 | procedure LoeschenBtnClick(Sender: TObject); |
33 | procedure LadenBtnClick(Sender: TObject); |
33 | procedure LadenBtnClick(Sender: TObject); |
34 | procedure SpeichernBtnClick(Sender: TObject); |
34 | procedure SpeichernBtnClick(Sender: TObject); |
35 | procedure LevelListBoxClick(Sender: TObject); |
35 | procedure LevelListBoxClick(Sender: TObject); |
36 | procedure LevelNameChange(Sender: TObject); |
36 | procedure LevelNameChange(Sender: TObject); |
37 | procedure Button4Click(Sender: TObject); |
37 | procedure Button4Click(Sender: TObject); |
38 | procedure FormShow(Sender: TObject); |
38 | procedure FormShow(Sender: TObject); |
39 | procedure DsFancyButton2Click(Sender: TObject); |
39 | procedure DsFancyButton2Click(Sender: TObject); |
40 | procedure AbbrechenBtnClick(Sender: TObject); |
40 | procedure AbbrechenBtnClick(Sender: TObject); |
41 | procedure FormHide(Sender: TObject); |
41 | procedure FormHide(Sender: TObject); |
42 | procedure LevelListBoxDblClick(Sender: TObject); |
42 | procedure LevelListBoxDblClick(Sender: TObject); |
43 | public |
43 | public |
44 | procedure SearchSaves; |
44 | procedure SearchSaves; |
45 | end; |
45 | end; |
46 | 46 | ||
47 | var |
47 | var |
48 | SpeicherungForm: TSpeicherungForm; |
48 | SpeicherungForm: TSpeicherungForm; |
49 | 49 | ||
50 | implementation |
50 | implementation |
51 | 51 | ||
52 | uses |
52 | uses |
53 | Global, GamMain; |
53 | Global, GamMain; |
54 | 54 | ||
55 | {$R *.DFM} |
55 | {$R *.DFM} |
56 | 56 | ||
57 | procedure TSpeicherungForm.SearchSaves; |
57 | procedure TSpeicherungForm.SearchSaves; |
58 | var |
58 | var |
59 | sr: TSearchRec; |
59 | sr: TSearchRec; |
60 | res: integer; |
60 | res: integer; |
61 | begin |
61 | begin |
62 | LevelName.text := ''; |
62 | LevelName.text := ''; |
63 | LevelListBox.items.clear; |
63 | LevelListBox.items.clear; |
64 | li1.visible := false; |
64 | li1.visible := false; |
65 | li2a.visible := false; |
65 | li2a.visible := false; |
66 | li2b.visible := false; |
66 | li2b.visible := false; |
67 | li3a.visible := false; |
67 | li3a.visible := false; |
68 | li3b.visible := false; |
68 | li3b.visible := false; |
69 | li4a.visible := false; |
69 | li4a.visible := false; |
70 | li4b.visible := false; |
70 | li4b.visible := false; |
71 | liu.visible := false; |
71 | liu.visible := false; |
72 | liw.visible := true; |
72 | liw.visible := true; |
73 | li1.caption := 'n/a'; |
73 | li1.caption := 'n/a'; |
74 | li2b.caption := 'n/a'; |
74 | li2b.caption := 'n/a'; |
75 | li3b.caption := 'n/a'; |
75 | li3b.caption := 'n/a'; |
76 | li4b.caption := 'n/a'; |
76 | li4b.caption := 'n/a'; |
77 | LadenBtn.enabled := false; |
77 | LadenBtn.enabled := false; |
78 | LoeschenBtn.enabled := false; |
78 | LoeschenBtn.enabled := false; |
79 | res := FindFirst(fdirectory+'Spielstände\*.sav', 0, sr); |
79 | res := FindFirst(fdirectory+'Spielstände\*.sav', 0, sr); |
80 | try |
80 | try |
81 | while (res = 0) do |
81 | while (res = 0) do |
82 | begin |
82 | begin |
83 | if (sr.name <> '.') and (sr.name <> '..') then |
83 | if (sr.name <> '.') and (sr.name <> '..') then |
84 | LevelListBox.items.Add(copy(sr.Name, 0, length(sr.name)-4)); |
84 | LevelListBox.items.Add(copy(sr.Name, 0, length(sr.name)-4)); |
85 | res := FindNext(sr); |
85 | res := FindNext(sr); |
86 | end; |
86 | end; |
87 | finally |
87 | finally |
88 | FindClose(sr); |
88 | FindClose(sr); |
89 | end; |
89 | end; |
90 | end; |
90 | end; |
91 | 91 | ||
92 | procedure TSpeicherungForm.LoeschenBtnClick(Sender: TObject); |
92 | procedure TSpeicherungForm.LoeschenBtnClick(Sender: TObject); |
93 | var |
93 | var |
94 | Markiert: boolean; |
94 | Markiert: boolean; |
95 | i: integer; |
95 | i: integer; |
96 | begin |
96 | begin |
97 | Markiert := false; |
97 | Markiert := false; |
98 | for i := 0 to LevelListBox.items.Count-1 do |
98 | for i := 0 to LevelListBox.items.Count-1 do |
99 | begin |
99 | begin |
100 | if LevelListBox.Selected[i] then Markiert := true; |
100 | if LevelListBox.Selected[i] then Markiert := true; |
101 | end; |
101 | end; |
102 | if not Markiert then exit; |
102 | if not Markiert then exit; |
103 | if MessageDlg('Diesen Spielstand wirklich löschen?', |
103 | if MessageDlg('Diesen Spielstand wirklich löschen?', |
104 | mtConfirmation, [mbYes, mbNo], 0) = mrYes then |
104 | mtConfirmation, [mbYes, mbNo], 0) = mrYes then |
105 | begin |
105 | begin |
106 | li1.visible := false; |
106 | li1.visible := false; |
107 | li2a.visible := false; |
107 | li2a.visible := false; |
108 | li2b.visible := false; |
108 | li2b.visible := false; |
109 | li3a.visible := false; |
109 | li3a.visible := false; |
110 | li3b.visible := false; |
110 | li3b.visible := false; |
111 | li4a.visible := false; |
111 | li4a.visible := false; |
112 | li4b.visible := false; |
112 | li4b.visible := false; |
113 | liu.visible := false; |
113 | liu.visible := false; |
114 | liw.visible := false; |
114 | liw.visible := false; |
115 | li1.caption := 'n/a'; |
115 | li1.caption := 'n/a'; |
116 | li2b.caption := 'n/a'; |
116 | li2b.caption := 'n/a'; |
117 | li3b.caption := 'n/a'; |
117 | li3b.caption := 'n/a'; |
118 | li4b.caption := 'n/a'; |
118 | li4b.caption := 'n/a'; |
119 | LadenBtn.enabled := false; |
119 | LadenBtn.enabled := false; |
120 | LoeschenBtn.enabled := false; |
120 | LoeschenBtn.enabled := false; |
121 | deletefile(FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
121 | deletefile(FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
122 | searchsaves; |
122 | searchsaves; |
123 | end; |
123 | end; |
124 | end; |
124 | end; |
125 | 125 | ||
126 | procedure TSpeicherungForm.LadenBtnClick(Sender: TObject); |
126 | procedure TSpeicherungForm.LadenBtnClick(Sender: TObject); |
127 | var |
127 | var |
128 | Markiert: boolean; |
128 | Markiert: boolean; |
129 | i: integer; |
129 | i: integer; |
130 | SavGame: textfile; |
130 | SavGame: textfile; |
131 | begin |
131 | begin |
132 | Markiert := false; |
132 | Markiert := false; |
133 | for i := 0 to LevelListBox.items.Count-1 do |
133 | for i := 0 to LevelListBox.items.Count-1 do |
134 | begin |
134 | begin |
135 | if LevelListBox.Selected[i] then Markiert := true; |
135 | if LevelListBox.Selected[i] then Markiert := true; |
136 | end; |
136 | end; |
137 | if not Markiert then exit; |
137 | if not Markiert then exit; |
138 | if LevelListBox.items.count = 0 then |
138 | if LevelListBox.items.count = 0 then |
139 | begin |
139 | begin |
140 | li1.visible := false; |
140 | li1.visible := false; |
141 | li2a.visible := false; |
141 | li2a.visible := false; |
142 | li2b.visible := false; |
142 | li2b.visible := false; |
143 | li3a.visible := false; |
143 | li3a.visible := false; |
144 | li3b.visible := false; |
144 | li3b.visible := false; |
145 | li4a.visible := false; |
145 | li4a.visible := false; |
146 | li4b.visible := false; |
146 | li4b.visible := false; |
147 | liu.visible := false; |
147 | liu.visible := false; |
148 | liw.visible := false; |
148 | liw.visible := false; |
149 | li1.caption := 'n/a'; |
149 | li1.caption := 'n/a'; |
150 | li2b.caption := 'n/a'; |
150 | li2b.caption := 'n/a'; |
151 | li3b.caption := 'n/a'; |
151 | li3b.caption := 'n/a'; |
152 | li4b.caption := 'n/a'; |
152 | li4b.caption := 'n/a'; |
153 | LadenBtn.enabled := false; |
153 | LadenBtn.enabled := false; |
154 | LoeschenBtn.enabled := false; |
154 | LoeschenBtn.enabled := false; |
155 | end; |
155 | end; |
156 | {if liu.visible or (LevelListBox.items.count=0) then |
156 | {if liu.visible or (LevelListBox.items.count=0) then |
157 | exit;} |
157 | exit;} |
158 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
158 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
159 | Reset(SavGame); |
159 | Reset(SavGame); |
160 | ReadLN(SavGame); |
160 | ReadLN(SavGame); |
161 | ReadLN(SavGame); |
161 | ReadLN(SavGame); |
162 | ReadLN(SavGame, mainform.FScore); |
162 | ReadLN(SavGame, mainform.FScore); |
163 | ReadLN(SavGame, mainform.FLife); |
163 | ReadLN(SavGame, mainform.FLife); |
164 | ReadLN(SavGame, mainform.Flevel); |
164 | ReadLN(SavGame, mainform.Flevel); |
165 | ReadLN(SavGame, mainform.FMenuItem); |
165 | ReadLN(SavGame, mainform.FMenuItem); |
166 | CloseFile(SavGame); |
166 | CloseFile(SavGame); |
167 | mainform.playsound('SceneMov', false); |
167 | mainform.playsound('SceneMov', false); |
168 | mainform.FNextScene := gsNewLevel; |
168 | mainform.FNextScene := gsNewLevel; |
169 | mainform.FCheat := false; |
169 | mainform.FCheat := false; |
170 | close; |
170 | close; |
171 | end; |
171 | end; |
172 | 172 | ||
173 | procedure TSpeicherungForm.SpeichernBtnClick(Sender: TObject); |
173 | procedure TSpeicherungForm.SpeichernBtnClick(Sender: TObject); |
174 | var |
174 | var |
175 | SavGame: textfile; |
175 | SavGame: textfile; |
176 | i: integer; |
176 | i: integer; |
177 | begin |
177 | begin |
178 | if Levelname.text = '' then |
178 | if Levelname.text = '' then |
179 | begin |
179 | begin |
180 | MessageDlg('Dies ist kein gültiger Spielstandname!', mtError, [mbOK], 0); |
180 | MessageDlg('Dies ist kein gültiger Spielstandname!', mtError, [mbOK], 0); |
181 | LevelName.setfocus; |
181 | LevelName.setfocus; |
182 | exit; |
182 | exit; |
183 | end; |
183 | end; |
184 | for i := 0 to length(LevelName.text) do |
184 | for i := 0 to length(LevelName.text) do |
185 | begin |
185 | begin |
186 | if (copy(LevelName.text, i, 1) = '\') or |
186 | if (copy(LevelName.text, i, 1) = '\') or |
187 | (copy(LevelName.text, i, 1) = '/') or |
187 | (copy(LevelName.text, i, 1) = '/') or |
188 | (copy(LevelName.text, i, 1) = ':') or |
188 | (copy(LevelName.text, i, 1) = ':') or |
189 | (copy(LevelName.text, i, 1) = '*') or |
189 | (copy(LevelName.text, i, 1) = '*') or |
190 | (copy(LevelName.text, i, 1) = '?') or |
190 | (copy(LevelName.text, i, 1) = '?') or |
191 | (copy(LevelName.text, i, 1) = '"') or |
191 | (copy(LevelName.text, i, 1) = '"') or |
192 | (copy(LevelName.text, i, 1) = '<') or |
192 | (copy(LevelName.text, i, 1) = '<') or |
193 | (copy(LevelName.text, i, 1) = '>') or |
193 | (copy(LevelName.text, i, 1) = '>') or |
194 | (copy(LevelName.text, i, 1) = '|') then |
194 | (copy(LevelName.text, i, 1) = '|') then |
195 | begin |
195 | begin |
196 | MessageDlg('Dies ist kein gültiger Spielstandname!', mtError, [mbOK], 0); |
196 | MessageDlg('Dies ist kein gültiger Spielstandname!', mtError, [mbOK], 0); |
197 | LevelName.setfocus; |
197 | LevelName.setfocus; |
198 | exit; |
198 | exit; |
199 | end; |
199 | end; |
200 | end; |
200 | end; |
201 | if LevelListBox.items.IndexOf(LevelName.text) > -1 then |
201 | if LevelListBox.items.IndexOf(LevelName.text) > -1 then |
202 | begin |
202 | begin |
203 | 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 |
204 | exit; |
204 | exit; |
205 | end; |
205 | end; |
206 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelName.text+'.sav'); |
206 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelName.text+'.sav'); |
207 | Rewrite(SavGame); |
207 | Rewrite(SavGame); |
208 | WriteLN(SavGame, '; SpaceMission '+FCompVersion); |
208 | WriteLN(SavGame, '; SpaceMission '+FCompVersion); |
209 | WriteLN(SavGame, '; SAV-File'); |
209 | WriteLN(SavGame, '; SAV-File'); |
210 | WriteLN(SavGame, mainform.FScore); |
210 | WriteLN(SavGame, mainform.FScore); |
211 | WriteLN(SavGame, mainform.FLife); |
211 | WriteLN(SavGame, mainform.FLife); |
212 | WriteLN(SavGame, mainform.FLevel); |
212 | WriteLN(SavGame, mainform.FLevel); |
213 | WriteLN(SavGame, mainform.FMenuItem); |
213 | WriteLN(SavGame, mainform.FMenuItem); |
214 | CloseFile(SavGame); |
214 | CloseFile(SavGame); |
215 | SearchSaves; |
215 | SearchSaves; |
216 | end; |
216 | end; |
217 | 217 | ||
218 | procedure TSpeicherungForm.LevelListBoxClick(Sender: TObject); |
218 | procedure TSpeicherungForm.LevelListBoxClick(Sender: TObject); |
219 | var |
219 | var |
220 | Ergebniss: String; |
220 | Ergebniss: String; |
221 | SavGame: textfile; |
221 | SavGame: textfile; |
222 | Punkte, Leben, Level, Art: integer; |
222 | Punkte, Leben, Level, Art: integer; |
223 | begin |
223 | begin |
224 | ladenbtn.enabled := true; |
224 | ladenbtn.enabled := true; |
225 | loeschenbtn.enabled := true; |
225 | loeschenbtn.enabled := true; |
226 | li1.visible := false; |
226 | li1.visible := false; |
227 | li2a.visible := false; |
227 | li2a.visible := false; |
228 | li2b.visible := false; |
228 | li2b.visible := false; |
229 | li3a.visible := false; |
229 | li3a.visible := false; |
230 | li3b.visible := false; |
230 | li3b.visible := false; |
231 | li4a.visible := false; |
231 | li4a.visible := false; |
232 | li4b.visible := false; |
232 | li4b.visible := false; |
233 | liu.visible := false; |
233 | liu.visible := false; |
234 | liw.visible := false; |
234 | liw.visible := false; |
235 | li1.caption := 'n/a'; |
235 | li1.caption := 'n/a'; |
236 | li2b.caption := 'n/a'; |
236 | li2b.caption := 'n/a'; |
237 | li3b.caption := 'n/a'; |
237 | li3b.caption := 'n/a'; |
238 | li4b.caption := 'n/a'; |
238 | li4b.caption := 'n/a'; |
239 | if (LevelListBox.items.count=0) or (LevelListBox.itemindex = -1) then |
239 | if (LevelListBox.items.count=0) or (LevelListBox.itemindex = -1) then |
240 | begin |
240 | begin |
241 | ladenbtn.enabled := false; |
241 | ladenbtn.enabled := false; |
242 | loeschenbtn.enabled := false; |
242 | loeschenbtn.enabled := false; |
243 | liw.visible := true; |
243 | liw.visible := true; |
244 | exit; |
244 | exit; |
245 | end; |
245 | end; |
246 | LevelName.Text := LevelListBox.Items.strings[LevelListBox.itemindex]; |
246 | LevelName.Text := LevelListBox.Items.strings[LevelListBox.itemindex]; |
247 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
247 | AssignFile(SavGame, FDirectory+'Spielstände\'+LevelListBox.Items.strings[LevelListBox.itemindex]+'.sav'); |
248 | Reset(SavGame); |
248 | Reset(SavGame); |
249 | ReadLN(SavGame, Ergebniss); |
249 | ReadLN(SavGame, Ergebniss); |
250 | if Ergebniss <> '; SpaceMission '+FCompVersion then |
250 | if Ergebniss <> '; SpaceMission '+FCompVersion then |
251 | begin |
251 | begin |
252 | liu.visible := true; |
252 | liu.visible := true; |
253 | ladenbtn.enabled := false; |
253 | ladenbtn.enabled := false; |
254 | CloseFile(SavGame); |
254 | CloseFile(SavGame); |
255 | exit; |
255 | exit; |
256 | end; |
256 | end; |
257 | ReadLN(SavGame, Ergebniss); |
257 | ReadLN(SavGame, Ergebniss); |
258 | if Ergebniss <> '; SAV-File' then |
258 | if Ergebniss <> '; SAV-File' then |
259 | begin |
259 | begin |
260 | liu.visible := true; |
260 | liu.visible := true; |
261 | ladenbtn.enabled := false; |
261 | ladenbtn.enabled := false; |
262 | CloseFile(SavGame); |
262 | CloseFile(SavGame); |
263 | exit; |
263 | exit; |
264 | end; |
264 | end; |
265 | ReadLN(SavGame, Punkte); |
265 | ReadLN(SavGame, Punkte); |
266 | ReadLN(SavGame, Leben); |
266 | ReadLN(SavGame, Leben); |
267 | ReadLN(SavGame, Level); |
267 | ReadLN(SavGame, Level); |
268 | ReadLN(SavGame, Art); |
268 | ReadLN(SavGame, Art); |
269 | CloseFile(SavGame); |
269 | CloseFile(SavGame); |
270 | li1.visible := true; |
270 | li1.visible := true; |
271 | li2a.visible := true; |
271 | li2a.visible := true; |
272 | li2b.visible := true; |
272 | li2b.visible := true; |
273 | li3a.visible := true; |
273 | li3a.visible := true; |
274 | li3b.visible := true; |
274 | li3b.visible := true; |
275 | li4a.visible := true; |
275 | li4a.visible := true; |
276 | li4b.visible := true; |
276 | li4b.visible := true; |
277 | if Art = 1 then |
277 | if Art = 1 then |
278 | li1.caption := 'Das Level ist ein normales Level.' |
278 | li1.caption := 'Das Level ist ein normales Level.' |
279 | else |
279 | else |
280 | li1.caption := 'Das Level ist ein Zufallslevel.'; |
280 | li1.caption := 'Das Level ist ein Zufallslevel.'; |
281 | li3b.caption := inttostr(Level); |
281 | li3b.caption := inttostr(Level); |
282 | li4b.caption := inttostr(Leben); |
282 | li4b.caption := inttostr(Leben); |
283 | li2b.caption := inttostr(Punkte); |
283 | li2b.caption := inttostr(Punkte); |
284 | end; |
284 | end; |
285 | 285 | ||
286 | procedure TSpeicherungForm.LevelNameChange(Sender: TObject); |
286 | procedure TSpeicherungForm.LevelNameChange(Sender: TObject); |
287 | begin |
287 | begin |
288 | //listbox1.Items.indexof('Level '+spinedit1.text); |
288 | //listbox1.Items.indexof('Level '+spinedit1.text); |
289 | end; |
289 | end; |
290 | 290 | ||
291 | procedure TSpeicherungForm.Button4Click(Sender: TObject); |
291 | procedure TSpeicherungForm.Button4Click(Sender: TObject); |
292 | begin |
292 | begin |
293 | mainform.dxtimer.enabled := not mainform.gamepause.checked; |
293 | mainform.dxtimer.enabled := not mainform.gamepause.checked; |
294 | close; |
294 | close; |
295 | end; |
295 | end; |
296 | 296 | ||
297 | procedure TSpeicherungForm.FormShow(Sender: TObject); |
297 | procedure TSpeicherungForm.FormShow(Sender: TObject); |
298 | begin |
298 | begin |
299 | mainform.dxtimer.enabled := false; |
299 | mainform.dxtimer.enabled := false; |
300 | SearchSaves; |
300 | SearchSaves; |
301 | if mainform.FNotSave then |
301 | if mainform.FNotSave then |
302 | begin |
302 | begin |
303 | label1.enabled := false; |
303 | label1.enabled := false; |
304 | LevelName.enabled := false; |
304 | LevelName.enabled := false; |
305 | SpeichernBtn.enabled := false; |
305 | SpeichernBtn.enabled := false; |
306 | end |
306 | end |
307 | else |
307 | else |
308 | begin |
308 | begin |
309 | label1.enabled := true; |
309 | label1.enabled := true; |
310 | LevelName.enabled := true; |
310 | LevelName.enabled := true; |
311 | SpeichernBtn.enabled := true; |
311 | SpeichernBtn.enabled := true; |
312 | end; |
312 | end; |
313 | end; |
313 | end; |
314 | 314 | ||
315 | procedure TSpeicherungForm.DsFancyButton2Click(Sender: TObject); |
315 | procedure TSpeicherungForm.DsFancyButton2Click(Sender: TObject); |
316 | begin |
316 | begin |
317 | SearchSaves; |
317 | SearchSaves; |
318 | end; |
318 | end; |
319 | 319 | ||
320 | procedure TSpeicherungForm.AbbrechenBtnClick(Sender: TObject); |
320 | procedure TSpeicherungForm.AbbrechenBtnClick(Sender: TObject); |
321 | begin |
321 | begin |
322 | close; |
322 | close; |
323 | end; |
323 | end; |
324 | 324 | ||
325 | procedure TSpeicherungForm.FormHide(Sender: TObject); |
325 | procedure TSpeicherungForm.FormHide(Sender: TObject); |
326 | begin |
326 | begin |
327 | if not mainform.gamepause.checked then mainform.dxtimer.enabled := true; |
327 | if not mainform.gamepause.checked then mainform.dxtimer.enabled := true; |
328 | end; |
328 | end; |
329 | 329 | ||
330 | procedure TSpeicherungForm.LevelListBoxDblClick(Sender: TObject); |
330 | procedure TSpeicherungForm.LevelListBoxDblClick(Sender: TObject); |
331 | begin |
331 | begin |
332 | LadenBtn.click; |
332 | LadenBtn.click; |
333 | end; |
333 | end; |
334 | 334 | ||
335 | end. |
335 | end. |
336 | 336 | ||
337 | 337 |