aboutsummaryrefslogtreecommitdiffstats
path: root/Game/Code/Screens/UScreenTop.pas
diff options
context:
space:
mode:
authorbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-02-21 21:28:52 +0000
committerbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-02-21 21:28:52 +0000
commit754d71a59b7d07a12c7e7d198b7fdc3c9e1bdc5e (patch)
tree3212c14a900da8c4f62ce626633ed30901b30265 /Game/Code/Screens/UScreenTop.pas
parent69b1910acc77c177dba95d7375a668c07648093a (diff)
downloadusdx-754d71a59b7d07a12c7e7d198b7fdc3c9e1bdc5e.tar.gz
usdx-754d71a59b7d07a12c7e7d198b7fdc3c9e1bdc5e.tar.xz
usdx-754d71a59b7d07a12c7e7d198b7fdc3c9e1bdc5e.zip
moved and renamed DrawVolume to UDraw.DrawVolumeBar
added volume control to score screen, top screen and jumpto menu fixed a bug with VocalRemover when pausing a song git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.0.1 Challenge MOD@2137 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Screens/UScreenTop.pas')
-rw-r--r--Game/Code/Screens/UScreenTop.pas42
1 files changed, 41 insertions, 1 deletions
diff --git a/Game/Code/Screens/UScreenTop.pas b/Game/Code/Screens/UScreenTop.pas
index 340fe2ad..e74507b9 100644
--- a/Game/Code/Screens/UScreenTop.pas
+++ b/Game/Code/Screens/UScreenTop.pas
@@ -6,11 +6,18 @@ uses
UMenu, SDL, SysUtils, UDisplay, UMusic, USongs, UThemes, ULCD, ModiSDK;
type
+ THandler = record
+ changed: boolean;
+ change_time: real;
+ end;
+
TScreenTop = class(TMenu)
const
ID='ID_029'; //for help system
public
+ MP3VolumeHandler: THandler;
+
TextLevel: integer;
TextArtistTitle: integer;
@@ -33,13 +40,37 @@ type
implementation
-uses UGraphic, UDataBase, UMain, UIni, UPartyM2, DateUtils, UHelp, ULog;
+uses UGraphic, UDataBase, UDraw, UMain, UIni, UPartyM2, UTime, DateUtils, UHelp, ULog;
function TScreenTop.ParseInput(PressedKey: Cardinal; ScanCode: byte; PressedDown: Boolean): Boolean;
begin
Result := true;
If (PressedDown) Then begin
case PressedKey of
+ //MP3-Volume Up
+ SDLK_PAGEUP:
+ begin
+ if (ScreenSong.MP3Volume<100) then
+ begin
+ ScreenSong.MP3Volume := ScreenSong.MP3Volume+5;
+ Music.SetMusicVolume(ScreenSong.MP3Volume);
+ end;
+ MP3VolumeHandler.changed := true;
+ MP3VolumeHandler.change_time := 0;
+ end;
+
+ //MP3-Volume Down
+ SDLK_PAGEDOWN:
+ begin
+ if (ScreenSong.MP3Volume>0) then
+ begin
+ ScreenSong.MP3Volume := ScreenSong.MP3Volume-5;
+ Music.SetMusicVolume(ScreenSong.MP3Volume);
+ end;
+ MP3VolumeHandler.changed := true;
+ MP3VolumeHandler.change_time := 0;
+ end;
+
SDLK_TAB:
begin
ScreenPopupHelp.ShowPopup();
@@ -163,6 +194,8 @@ begin
end;
Text[TextLevel].Text := IDifficulty[Ini.Difficulty];
+
+ MP3VolumeHandler.changed := false;
end;
function TScreenTop.Draw: boolean;
@@ -205,6 +238,13 @@ begin
end;}
inherited Draw;
+
+ if MP3VolumeHandler.changed and (MP3VolumeHandler.change_time+TimeSkip<3) then
+ begin
+ MP3VolumeHandler.change_time := MP3VolumeHandler.change_time + TimeSkip;
+ DrawVolumeBar(10, 530, 780, 12, ScreenSong.MP3Volume);
+ end else
+ MP3VolumeHandler.changed := false;
end;
end.