Subversion Repositories spacemission

Compare Revisions

Regard whitespace Rev 30 → Rev 31

/LevMain.pas
6,7 → 6,7
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{$ENDIF}, DirectX, ComLevelReader;
WinAPI.DirectDraw{$ENDIF}, DirectX, ComLevelReader, Global;
 
type
TMainForm = class(TDXForm)
84,6 → 84,8
LevChanged: boolean;
NumEnemys: integer;
function SelectedEnemyType: TEnemyType;
{ Grafik-Routinen }
function GetSpriteGraphic(Sprite: TSpaceMissionGraphicSprite): TPictureCollectionItem;
{ Level-Routinen }
procedure EnemyCreateSprite(x, y: integer; AEnemyType: TEnemyType; ALives: integer);
procedure DestroyLevel;
103,12 → 105,8
implementation
 
uses
Global, LevSplash, LevSpeicherung, ComInfo, LevOptions;
LevSplash, LevSpeicherung, ComInfo, LevOptions;
 
const
RasterW = 48;
RasterH = 32;
 
{$R *.DFM}
 
type
152,13 → 150,13
constructor TEnemy.Create(AParent: TSprite; AEnemyType: TEnemyType; ALives: Integer);
begin
inherited Create(AParent);
if AEnemyType = etEnemyAttacker then Image := MainForm.ImageList.Items.Find('Enemy-Attacker');
if AEnemyType = etEnemyAttacker2 then Image := MainForm.ImageList.Items.Find('Enemy-Attacker2');
if AEnemyType = etEnemyAttacker3 then Image := MainForm.ImageList.Items.Find('Enemy-Attacker3');
if AEnemyType = etEnemyMeteor then Image := MainForm.ImageList.Items.Find('Enemy-Meteor');
if AEnemyType = etEnemyUFO then Image := MainForm.ImageList.Items.Find('Enemy-Disk');
if AEnemyType = etEnemyUFO2 then Image := MainForm.ImageList.Items.Find('Enemy-Disk2');
if AEnemyType = etEnemyBoss then Image := MainForm.ImageList.Items.Find('Enemy-Boss');
if AEnemyType = etEnemyAttacker then Image := MainForm.GetSpriteGraphic(smgEnemyAttacker);
if AEnemyType = etEnemyAttacker2 then Image := MainForm.GetSpriteGraphic(smgEnemyAttacker2);
if AEnemyType = etEnemyAttacker3 then Image := MainForm.GetSpriteGraphic(smgEnemyAttacker3);
if AEnemyType = etEnemyMeteor then Image := MainForm.GetSpriteGraphic(smgEnemyMeteor);
if AEnemyType = etEnemyUFO then Image := MainForm.GetSpriteGraphic(smgEnemyDisk);
if AEnemyType = etEnemyUFO2 then Image := MainForm.GetSpriteGraphic(smgEnemyDisk2);
if AEnemyType = etEnemyBoss then Image := MainForm.GetSpriteGraphic(smgEnemyBoss);
 
if AEnemyType = etEnemyMeteor then FLives := 0 else FLives := ALives;
FEnemyType := AEnemyType;
171,7 → 169,7
 
procedure TMainForm.DXInit;
begin
Imagelist.Items.LoadFromFile(FDirectory+'DirectX\Graphic.dxg');
Imagelist.Items.LoadFromFile(OwnDirectory+'DirectX\Graphics.dxg');
ImageList.Items.MakeColorTable;
DXDraw.ColorTable := ImageList.Items.ColorTable;
DXDraw.DefColorTable := ImageList.Items.ColorTable;
346,7 → 344,7
with TBackground.Create(SpriteEngine.Engine) do
begin
SetMapSize(1, 1);
Image := mainform.ImageList.Items.Find('Star3');
Image := MainForm.GetSpriteGraphic(smgStar3);
Z := -13;
Y := 40;
Tile := True;
354,7 → 352,7
with TBackground.Create(SpriteEngine.Engine) do
begin
SetMapSize(1, 1);
Image := mainform.ImageList.Items.Find('Star2');
Image := MainForm.GetSpriteGraphic(smgStar2);
Z := -12;
Y := 30;
Tile := True;
362,7 → 360,7
with TBackground.Create(SpriteEngine.Engine) do
begin
SetMapSize(1, 1);
Image := mainform.ImageList.Items.Find('Star1');
Image := MainForm.GetSpriteGraphic(smgStar1);
Z := -11;
Y := 10;
Tile := True;
370,7 → 368,7
with TBackground.Create(SpriteEngine.Engine) do
begin
SetMapSize(1, 1);
Image := mainform.ImageList.Items.Find('Matrix');
Image := MainForm.GetSpriteGraphic(smgMatrix);
Z := -10;
Tile := True;
end;
459,6 → 457,15
dxtimer.ActiveOnly := true;
end;
 
function TMainForm.GetSpriteGraphic(
Sprite: TSpaceMissionGraphicSprite): TPictureCollectionItem;
begin
if (Sprite<>smgNone) and (imagelist.Items.Count >= Ord(Sprite)) then
result := imagelist.Items.Items[Ord(Sprite)-1]
else
result := nil;
end;
 
procedure TMainForm.InformationenClick(Sender: TObject);
begin
mainform.dxtimer.enabled := false;