Subversion Repositories spacemission

Compare Revisions

Regard whitespace Rev 64 → Rev 65

/GamMain.pas
1914,9 → 1914,13
FLevelDataAlreadyLoaded := true; // nicht nochmal NewLevel() aufrufen. Erst wieder wenn man gewonnen hat.
end;
 
var
TitleWasPressed: TDxInputState = isButton32;
 
procedure TMainForm.SceneTitle;
var
Logo: TPictureCollectionItem;
colo1, colo2: TColor;
begin
DXDraw.Surface.Fill(0);
Logo := GetSpriteGraphic(smgLogo);
1926,36 → 1930,91
2, 80, Fangle * 4);
inc(Fangle);
 
if (isDown in MainForm.DXInput.States) and (FGameMode=gmLevels) then FGameMode := gmRandom;
if ((isUp in MainForm.DXInput.States) and (FGameMode=gmRandom)) or (FGameMode=gmUnknown) then FGameMode := gmLevels;
if FGameMode = gmUnknown then FGameMode := gmLevels;
 
if (isUp in MainForm.DXInput.States) then TitleWasPressed := isUp;
if (TitleWasPressed=isUp) and not (isUp in MainForm.DXInput.States) then
begin
TitleWasPressed := isButton32;
if (Ord(FGameMode) <> 1) then
FGameMode := TGameMode(Ord(FGameMode)-1);
end;
 
// TODO: Wenn man schnell die Taste drückt, dann kommt es manchmal nicht an!
if (isDown in MainForm.DXInput.States) then TitleWasPressed := isDown;
if (TitleWasPressed=isDown) and not (isDown in MainForm.DXInput.States) then
begin
TitleWasPressed := isButton32;
if (FGameMode <> High(TGameMode)) then
FGameMode := TGameMode(Ord(FGameMode)+1);
end;
 
DXDraw.Surface.Canvas.Brush.Style := bsClear;
DXDraw.Surface.Canvas.Font.Size := 30;
 
{$REGION 'Menu point: Normal Level'}
if FGameMode = gmLevels then
begin
DXDraw.Surface.Canvas.Font.Color := clMaroon;
colo1 := clMaroon;
colo2 := clRed;
end
else
begin
colo1 := clOlive;
colo2 := clYellow;
end;
DXDraw.Surface.Canvas.Font.Color := colo1;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-152, (dxdraw.surfaceheight div 2)-52, 'Normales Spiel');
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-187, (dxdraw.surfaceheight div 2)-52, '>');
DXDraw.Surface.Canvas.Font.Color := clRed;
if FGameMode = gmLevels then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-185, (dxdraw.surfaceheight div 2)-52, '>');
DXDraw.Surface.Canvas.Font.Color := colo2;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-150, (dxdraw.surfaceheight div 2)-50, 'Normales Spiel');
if FGameMode = gmLevels then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-185, (dxdraw.surfaceheight div 2)-50, '>');
DXDraw.Surface.Canvas.Font.Color := clOlive;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-152, (dxdraw.surfaceheight div 2)-2, 'Zufallslevel');
DXDraw.Surface.Canvas.Font.Color := clYellow;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-150, (dxdraw.surfaceheight div 2), 'Zufallslevel');
{$ENDREGION}
 
{$REGION 'Menu point: Random Level'}
if FGameMode = gmRandom then
begin
colo1 := clMaroon;
colo2 := clRed;
end
else
begin
DXDraw.Surface.Canvas.Font.Color := clOlive;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-152, (dxdraw.surfaceheight div 2)-52, 'Normales Spiel');
DXDraw.Surface.Canvas.Font.Color := clYellow;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-150, (dxdraw.surfaceheight div 2)-50, 'Normales Spiel');
DXDraw.Surface.Canvas.Font.Color := clMaroon;
colo1 := clOlive;
colo2 := clYellow;
end;
DXDraw.Surface.Canvas.Font.Color := colo1;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-152, (dxdraw.surfaceheight div 2)-2, 'Zufallslevel');
if FGameMode = gmRandom then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-187, (dxdraw.surfaceheight div 2)-2, '>');
DXDraw.Surface.Canvas.Font.Color := clRed;
DXDraw.Surface.Canvas.Font.Color := colo2;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-150, (dxdraw.surfaceheight div 2), 'Zufallslevel');
if FGameMode = gmRandom then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-185, (dxdraw.surfaceheight div 2), '>');
{$ENDREGION}
 
{$REGION 'Menu point: Level Editor'}
if FGameMode = gmEditor then
begin
colo1 := clMaroon;
colo2 := clRed;
end
else
begin
colo1 := clOlive;
colo2 := clYellow;
end;
DXDraw.Surface.Canvas.Font.Color := colo1;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-152, (dxdraw.surfaceheight div 2)+48, 'Level-Editor');
if FGameMode = gmEditor then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-185, (dxdraw.surfaceheight div 2)+48, '>');
DXDraw.Surface.Canvas.Font.Color := colo2;
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-150, (dxdraw.surfaceheight div 2)+50, 'Level-Editor');
if FGameMode = gmEditor then
DXDraw.Surface.Canvas.Textout((dxdraw.surfaceWidth div 2)-185, (dxdraw.surfaceheight div 2)+50, '>');
{$ENDREGION}
 
{ if (FBlink div 300) mod 2=0 then
begin
DXDraw.Surface.Canvas.Font.Color := clGreen;
1970,8 → 2029,15
if (isButton1 in DXInput.States) or (isButton2 in DXInput.States) then
begin
FLevel := 1;
if ((FGameMode=gmLevels) and not GetLevelFileName(FLevel,false).found) or ((FGameMode=gmRandom) and (FLevel > 20)) then
if FGameMode = gmEditor then
begin
ShellExecute(0, 'open', PChar(OwnDirectory+'LevEdit.exe'), '', PChar(OwnDirectory), SW_NORMAL);
Close;
exit;
end;
if ((FGameMode=gmLevels) and not GetLevelFileName(FLevel,false).found) or
((FGameMode=gmRandom) and (FLevel > MaxPossibleLevels)) then
begin
//PlaySound('Frage', False);
exit;
end;