Subversion Repositories spacemission

Compare Revisions

Regard whitespace Rev HEAD → Rev 1

/LevMain.pas
5,8 → 5,7
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, MMSystem,
Dialogs, StdCtrls, ExtCtrls, Menus, DIB, DXClass, DXSprite, DXDraws,
DXSounds, Spin, ComCtrls{$IF CompilerVersion >= 23.0}, System.UITypes,
WinAPI.DirectDraw{$ELSE}, DirectX{$IFEND};
DXSounds, Spin, ComCtrls, PjVersionInfo;
 
type
TMainForm = class(TDXForm)
14,9 → 13,11
Spiel: TMenuItem;
Beenden: TMenuItem;
Hilfe: TMenuItem;
Mitarbeiter: TMenuItem;
Leer1: TMenuItem;
Level: TMenuItem;
Informationen: TMenuItem;
Leer2: TMenuItem;
Enemy1: TRadioButton;
Enemy2: TRadioButton;
Enemy3: TRadioButton;
54,6 → 55,7
procedure DXTimerTimer(Sender: TObject; LagCount: Integer);
procedure BeendenClick(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure MitarbeiterClick(Sender: TObject);
procedure LevelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure InformationenClick(Sender: TObject);
76,10 → 78,13
public
{ VCL-Ersatz }
spriteengine: tdxspriteengine;
versioninfo: tpjversioninfo;
dxtimer: tdxtimer;
imagelist: tdximagelist;
dxdraw: tdxdraw;
{ Variablen }
FDirectory: string;
FEngineVersion: string;
FMenuItem: integer;
Enemys: TStrings;
ArtChecked: integer;
106,10 → 111,13
var
MainForm: TMainForm;
 
const
FCompVersion = '1.0';
 
implementation
 
uses
Global, LevSplash, LevSpeicherung, ComInfo, LevSource, LevOptions;
LevSplash, LevSpeicherung, LevText, LevInfo, LevSource, LevOptions;
 
const
FileError = 'Die Datei kann von SpaceMission nicht geöffnet werden!';
121,6 → 129,8
 
{$R *.DFM}
 
{$R WindowsXP.res}
 
type
TBackground = class(TBackgroundSprite)
protected
187,9 → 197,14
var
Ergebnis: string;
daten: textfile;
i: integer;
punkt: integer;
ok: boolean;
begin
{ VCL-Ersatz start }
 
versioninfo := tpjversioninfo.create(self);
 
dxtimer := tdxtimer.create(self);
dxtimer.Interval := 100;
dxtimer.ActiveOnly := false;
211,7 → 226,7
dxdraw.Display.FixedSize := False;
dxdraw.Display.Height := 600;
dxdraw.Display.Width := 800;
dxdraw.Options := [doAllowReboot, doWaitVBlank, doAllowPalette256, doCenter, {doRetainedMode,} doHardware, doSelectDriver];
dxdraw.Options := [doAllowReboot, doWaitVBlank, doAllowPalette256, doCenter, doRetainedMode, doHardware, doSelectDriver];
dxdraw.OnFinalize := DXDrawFinalize;
dxdraw.OnInitialize := DXDrawInitialize;
dxdraw.ParentShowHint := False;
232,9 → 247,17
LiveEdit := 1;
// Leeres Level am Anfang braucht keine Beenden-Bestätigung.
// LevChanged := true;
 
//Application.Title := 'SpaceMission '+ProgramVersion+' - Leveleditor';
Caption := 'SpaceMission '+ProgramVersion+' - Leveleditor';
punkt := 0;
FDirectory := extractfilepath(paramstr(0));
versioninfo.filename := paramstr(0);
for i := 1 to length(versioninfo.ProductVersion) do
begin
if copy(versioninfo.ProductVersion, i, 1) = '.' then inc(punkt);
if punkt < 2 then fengineversion :=
fengineversion+copy(versioninfo.ProductVersion, i, 1);
end;
//Application.Title := 'SpaceMission '+FEngineVersion+' - Leveleditor';
Caption := 'SpaceMission '+FEngineVersion+' - Leveleditor';
DXInit;
if (paramcount > 0) and (fileexists(paramstr(1))) then
begin
267,6 → 290,7
begin
Enemys.Free;
//spriteengine.Free;
versioninfo.free;
dxtimer.Free;
imagelist.Free;
dxdraw.free;
438,6 → 462,20
mainform.Visible := true;
end;
 
procedure TMainForm.MitarbeiterClick(Sender: TObject);
begin
if not fileexists(mainform.fdirectory+'Texte\Mitwirkende.txt') then
begin
MessageDLG('Die Datei "Texte\Mitwirkende.txt" ist nicht mehr vorhanden. Die Aktion wird abgebrochen!',
mtWarning, [mbOK], 0);
end
else
begin
TextForm.memo1.lines.loadfromfile(mainform.FDirectory+'Texte\Mitwirkende.txt');
TextForm.showmodal;
end;
end;
 
procedure TMainForm.LevelClick(Sender: TObject);
begin
speicherungform.showmodal;
454,9 → 492,7
 
procedure TMainForm.InformationenClick(Sender: TObject);
begin
mainform.dxtimer.enabled := false;
InfoForm.showmodal;
mainform.dxtimer.enabled := true;
end;
 
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
595,8 → 631,7
 
procedure TMainForm.DestroyLevel;
begin
ScrollBar.Position := 0; // this doesn't call ScrollBarScroll()
ScrollP := 0;
ScrollBar.Position := 0;
Enemys.Clear;
NumEnemys := 0;
Boss := false;