diff options
author | whiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2007-04-28 09:25:53 +0000 |
---|---|---|
committer | whiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2007-04-28 09:25:53 +0000 |
commit | ef87bafc41e7321c8559a23005c79de88b625741 (patch) | |
tree | c740fc633b01a02ed6806cc1f9c0d34e833c0a0e /Game | |
parent | 5c8ba0055244ca316dc9957fec02d6f151df0d2e (diff) | |
download | usdx-ef87bafc41e7321c8559a23005c79de88b625741.tar.gz usdx-ef87bafc41e7321c8559a23005c79de88b625741.tar.xz usdx-ef87bafc41e7321c8559a23005c79de88b625741.zip |
SongScreen:
Changed Alt+Letter now Jump to Artist
Added Alt+Shift+Letter: Jump to Title
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@147 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game')
-rw-r--r-- | Game/Code/Screens/UScreenSong.pas | 48 |
1 files changed, 36 insertions, 12 deletions
diff --git a/Game/Code/Screens/UScreenSong.pas b/Game/Code/Screens/UScreenSong.pas index 5814efbf..16ac46ab 100644 --- a/Game/Code/Screens/UScreenSong.pas +++ b/Game/Code/Screens/UScreenSong.pas @@ -199,25 +199,49 @@ begin SDL_ModState := SDL_GetModState and (KMOD_LSHIFT + KMOD_RSHIFT
+ KMOD_LCTRL + KMOD_RCTRL + KMOD_LALT + KMOD_RALT);
- //Jump To
- if (SDL_ModState = KMOD_LALT) AND (Mode = 0) AND (PressedKey > SDLK_A) AND (PressedKey < SDLK_Z) then
+ //Jump to Artist/Titel
+ if (SDL_ModState and KMOD_LALT <> 0) AND (Mode = 0) AND (PressedKey > SDLK_A) AND (PressedKey < SDLK_Z) then
begin
Letter := UpCase(Chr(ScanCode));
- Log.LogError(Letter);
I2 := Length(CatSongs.Song);
- For I := 1 to high(CatSongs.Song) do
+
+ //Jump To Titel
+ if (SDL_ModState = KMOD_LALT or KMOD_LSHIFT) then
begin
- if (CatSongs.Song[(I + Interaction) mod I2].Visible) AND (Length(CatSongs.Song[(I + Interaction) mod I2].Title)>0) AND (UpCase(CatSongs.Song[(I + Interaction) mod I2].Title[1]) = Letter) then
+ For I := 1 to high(CatSongs.Song) do
begin
- SkipTo(CatSongs.VisibleIndex((I + Interaction) mod I2));
+ if (CatSongs.Song[(I + Interaction) mod I2].Visible) AND (Length(CatSongs.Song[(I + Interaction) mod I2].Title)>0) AND (UpCase(CatSongs.Song[(I + Interaction) mod I2].Title[1]) = Letter) then
+ begin
+ SkipTo(CatSongs.VisibleIndex((I + Interaction) mod I2));
- Music.PlayChange;
+ Music.PlayChange;
- ChangeMusic;
- SetScroll4;
- UpdateLCD;
- //Break and Exit
- Exit;
+ ChangeMusic;
+ SetScroll4;
+ UpdateLCD;
+ //Break and Exit
+ Exit;
+ end;
+ end;
+ end
+ //Jump to Artist
+ else if (SDL_ModState = KMOD_LALT) then
+ begin
+ For I := 1 to high(CatSongs.Song) do
+ begin
+ if (CatSongs.Song[(I + Interaction) mod I2].Visible) AND (Length(CatSongs.Song[(I + Interaction) mod I2].Artist)>0) AND (UpCase(CatSongs.Song[(I + Interaction) mod I2].Artist[1]) = Letter) then
+ begin
+ SkipTo(CatSongs.VisibleIndex((I + Interaction) mod I2));
+
+ Music.PlayChange;
+
+ ChangeMusic;
+ SetScroll4;
+ UpdateLCD;
+
+ //Break and Exit
+ Exit;
+ end;
end;
end;
Exit;
|