Merge pull request #40 from flokuep/medley

merge flokuep/Vocaluxe/medley into medley
This commit is contained in:
Alexander Eckart committed 2012-11-28 13:28:23 -08:00
commit 606b1c8462
83 files changed
+6415 -875

No files matched your search

+7
View File
@@ -122,6 +122,11 @@
<TR_SCREENSONG_BUTTON_SING>Lied singen</TR_SCREENSONG_BUTTON_SING>
<TR_SCREENSONG_BUTTON_PLAYLIST>Zur Playlist hinzufügen</TR_SCREENSONG_BUTTON_PLAYLIST>
<TR_SCREENSONG_BUTTON_CANCEL>Schließen</TR_SCREENSONG_BUTTON_CANCEL>
<TR_SCREENSONG_BUTTON_RANDOM>Zufälligen Song wählen</TR_SCREENSONG_BUTTON_RANDOM>
<TR_SCREENSONG_BUTTON_SINGALL>Alle Songs singen</TR_SCREENSONG_BUTTON_SINGALL>
<TR_SCREENSONG_BUTTON_SINGALLVISIBLE>Alle sichtbaren Song singen</TR_SCREENSONG_BUTTON_SINGALLVISIBLE>
<TR_SCREENSONG_BUTTON_OPENPLAYLIST>Playlist öffnen</TR_SCREENSONG_BUTTON_OPENPLAYLIST>
<TR_SCREENSONG_NEWPLAYLIST>Neue Playlist</TR_SCREENSONG_NEWPLAYLIST>
<TR_SCREENSONG_SONGOPTIONS>Lied-Optionen</TR_SCREENSONG_SONGOPTIONS>
<TR_SCREENSONG_SEARCH>Suche:</TR_SCREENSONG_SEARCH>
<TR_SCREENSONG_NOLANGUAGE>Ohne Sprache</TR_SCREENSONG_NOLANGUAGE>
@@ -135,11 +140,13 @@
<TR_SCREENSING_PAUSE>Pause</TR_SCREENSING_PAUSE>
<TR_SCREENSING_BUTTON_CANCEL>Lied beenden</TR_SCREENSING_BUTTON_CANCEL>
<TR_SCREENSING_BUTTON_CONTINUE>Fortfahren</TR_SCREENSING_BUTTON_CONTINUE>
<TR_SCREENSING_BUTTON_SKIP>Lied überspringen</TR_SCREENSING_BUTTON_SKIP>
<!--ScreenScore-->
<TR_SCREENSCORE_SCORES>Auswertung</TR_SCREENSCORE_SCORES>
<TR_SCREENSCORE_RATING>Bewertung</TR_SCREENSCORE_RATING>
<TR_SCREENSCORE_POINTS>Punkte</TR_SCREENSCORE_POINTS>
<TR_SCREENSCORE_GAMEDIFFICULTY>Schwierigkeit</TR_SCREENSCORE_GAMEDIFFICULTY>
<TR_SCREENSCORE_OVERALLSCORE>Gesamtpunktzahl</TR_SCREENSCORE_OVERALLSCORE>
<!--ScreenHighscore-->
<TR_SCREENHIGHSCORE_HIGHSCORE>Highscore</TR_SCREENHIGHSCORE_HIGHSCORE>
<!--ScreenProfiles-->
+7
View File
@@ -122,6 +122,11 @@
<TR_SCREENSONG_BUTTON_SING>Sing</TR_SCREENSONG_BUTTON_SING>
<TR_SCREENSONG_BUTTON_PLAYLIST>Add to playlist</TR_SCREENSONG_BUTTON_PLAYLIST>
<TR_SCREENSONG_BUTTON_CANCEL>Close</TR_SCREENSONG_BUTTON_CANCEL>
<TR_SCREENSONG_BUTTON_RANDOM>Select a random song</TR_SCREENSONG_BUTTON_RANDOM>
<TR_SCREENSONG_BUTTON_SINGALL>Sing all songs</TR_SCREENSONG_BUTTON_SINGALL>
<TR_SCREENSONG_BUTTON_SINGALLVISIBLE>Sing all visible songs</TR_SCREENSONG_BUTTON_SINGALLVISIBLE>
<TR_SCREENSONG_BUTTON_OPENPLAYLIST>Open playlist</TR_SCREENSONG_BUTTON_OPENPLAYLIST>
<TR_SCREENSONG_NEWPLAYLIST>New Playlist</TR_SCREENSONG_NEWPLAYLIST>
<TR_SCREENSONG_SONGOPTIONS>Song Options</TR_SCREENSONG_SONGOPTIONS>
<TR_SCREENSONG_SEARCH>Search:</TR_SCREENSONG_SEARCH>
<TR_SCREENSONG_NOLANGUAGE>No Language</TR_SCREENSONG_NOLANGUAGE>
@@ -135,11 +140,13 @@
<TR_SCREENSING_PAUSE>Pause</TR_SCREENSING_PAUSE>
<TR_SCREENSING_BUTTON_CANCEL>Stop singing</TR_SCREENSING_BUTTON_CANCEL>
<TR_SCREENSING_BUTTON_CONTINUE>Continue</TR_SCREENSING_BUTTON_CONTINUE>
<TR_SCREENSING_BUTTON_SKIP>Skip this song</TR_SCREENSING_BUTTON_SKIP>
<!--ScreenScore-->
<TR_SCREENSCORE_SCORES>Scores</TR_SCREENSCORE_SCORES>
<TR_SCREENSCORE_RATING>Rating</TR_SCREENSCORE_RATING>
<TR_SCREENSCORE_POINTS>Points</TR_SCREENSCORE_POINTS>
<TR_SCREENSCORE_GAMEDIFFICULTY>Difficulty</TR_SCREENSCORE_GAMEDIFFICULTY>
<TR_SCREENSCORE_OVERALLSCORE>Overall score</TR_SCREENSCORE_OVERALLSCORE>
<!--ScreenHighscore-->
<TR_SCREENHIGHSCORE_HIGHSCORE>Highscore</TR_SCREENHIGHSCORE_HIGHSCORE>
<!--ScreenProfiles-->
+1
View File
@@ -117,6 +117,7 @@
<TR_SCREENSONG_SEARCH>Rechercher:</TR_SCREENSONG_SEARCH>
<TR_SCREENSONG_NOLANGUAGE>Pas de Langue</TR_SCREENSONG_NOLANGUAGE>
<TR_SCREENSONG_NOYEAR>Pas d'Année</TR_SCREENSONG_NOYEAR>
<TR_SCREENSONG_NEWPLAYLIST>TODO: New Playlist</TR_SCREENSONG_NEWPLAYLIST>
<TR_SCREENSONG_NOGENRE>Pas de Genre</TR_SCREENSONG_NOGENRE>
<TR_SCREENSONG_NOEDITION>Pas d'Edition</TR_SCREENSONG_NOEDITION>
<TR_SCREENSONG_ALLSONGS>Toutes les chansons</TR_SCREENSONG_ALLSONGS>
+1
View File
@@ -116,6 +116,7 @@
<TR_SCREENSONG_MENU>Selección de Canciones</TR_SCREENSONG_MENU>
<TR_SCREENSONG_SEARCH>Buscar:</TR_SCREENSONG_SEARCH>
<TR_SCREENSONG_NOLANGUAGE>Sin Idioma</TR_SCREENSONG_NOLANGUAGE>
<TR_SCREENSONG_NEWPLAYLIST>TODO: New Playlist</TR_SCREENSONG_NEWPLAYLIST>
<TR_SCREENSONG_NOYEAR>Sin Año</TR_SCREENSONG_NOYEAR>
<TR_SCREENSONG_NOGENRE>Sin Género</TR_SCREENSONG_NOGENRE>
<TR_SCREENSONG_NOEDITION>Sin Edición</TR_SCREENSONG_NOEDITION>
-23
View File
@@ -1,23 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<Info>
<PlaylistName>Test</PlaylistName>
</Info>
<Songs>
<Song1>
<Artist>2raumwohnung</Artist>
<Title>36 grad</Title>
<GameMode>TR_GAMEMODE_NORMAL</GameMode>
</Song1>
<Song2>
<Artist>Aura Dione</Artist>
<Title>Geronimo</Title>
<GameMode>TR_GAMEMODE_SHORTSONG</GameMode>
</Song2>
<Song3>
<Artist>Die Toten Hosen</Artist>
<Title>Tage wie diese</Title>
<GameMode>TR_GAMEMODE_MEDLEY</GameMode>
</Song3>
</Songs>
</root>
+2 -1
View File
@@ -109,7 +109,8 @@ Vocaluxe.exe -ConfigFile MyConfig.xml -ScoreFile C:\Vocaluxe\Highscores\MyHighsc
Songscreen
[CTRL] + [R] to select a random song
[F3] to open/close the song search menu
[A] to sing all songs from a category
[A] to sing all songs
[SHIFT] + [A] to sing all songs from a category
=================================
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

@@ -58,7 +58,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -103,7 +103,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -152,7 +152,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -201,7 +201,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -250,7 +250,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -299,7 +299,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -348,7 +348,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -397,7 +397,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -446,7 +446,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -68,7 +68,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENHIGHSCORE_HIGHSCORE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -97,7 +97,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -126,7 +126,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -155,7 +155,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -184,7 +184,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -213,7 +213,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -242,7 +242,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -271,7 +271,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -300,7 +300,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -329,7 +329,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -358,7 +358,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -387,7 +387,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -416,7 +416,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -445,7 +445,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -474,7 +474,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -503,7 +503,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -532,7 +532,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -561,7 +561,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -590,7 +590,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -619,7 +619,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -648,7 +648,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -677,7 +677,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -706,7 +706,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -735,7 +735,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -764,7 +764,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -793,7 +793,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -822,7 +822,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -851,7 +851,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -880,7 +880,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -909,7 +909,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -938,7 +938,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -967,7 +967,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -996,7 +996,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1025,7 +1025,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1054,7 +1054,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1083,7 +1083,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1112,7 +1112,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1141,7 +1141,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1170,7 +1170,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1199,7 +1199,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1228,7 +1228,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1257,7 +1257,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1286,7 +1286,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
+3 -3
View File
@@ -52,7 +52,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_PROGRAM_NAME</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -81,7 +81,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENLOAD_LOADING</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -110,7 +110,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
+4 -4
View File
@@ -68,7 +68,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENMAIN_BUTTON_SING</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -125,7 +125,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENMAIN_BUTTON_OPTIONS</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -182,7 +182,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENMAIN_BUTTON_PROFILES</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -239,7 +239,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_EXIT</Text>
</Text>
<!--<Reflection> If exists:-->
+564 -12
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<ScreenNames>
<ScreenVersion>2</ScreenVersion>
<ScreenVersion>3</ScreenVersion>
<Background1>
<!--<Type>: Background type: None, Color, Texture, Video-->
<Type>Video</Type>
@@ -276,7 +276,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENNAMES_MENU</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -306,7 +306,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -336,7 +336,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -365,7 +365,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -394,7 +394,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -423,7 +423,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -452,7 +452,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -481,7 +481,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -510,7 +510,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -555,7 +555,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -612,7 +612,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_START</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -695,6 +695,396 @@
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>6</NumVisible>
</SelectSlidePlayerNumber>
<SelectSlideDuetPlayer1>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>41</X>
<Y>105</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>20</ArrowLeftX>
<ArrowLeftY>105</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>20</ArrowRightX>
<ArrowRightY>105</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer1>
<SelectSlideDuetPlayer2>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>41</X>
<Y>260</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>20</ArrowLeftX>
<ArrowLeftY>260</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>20</ArrowRightX>
<ArrowRightY>260</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer2>
<SelectSlideDuetPlayer3>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>41</X>
<Y>415</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>20</ArrowLeftX>
<ArrowLeftY>415</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>20</ArrowRightX>
<ArrowRightY>415</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer3>
<SelectSlideDuetPlayer4>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>1152</X>
<Y>105</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>1240</ArrowLeftX>
<ArrowLeftY>105</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>1240</ArrowRightX>
<ArrowRightY>105</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer4>
<SelectSlideDuetPlayer5>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>1152</X>
<Y>260</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>1240</ArrowLeftX>
<ArrowLeftY>260</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>1240</ArrowRightX>
<ArrowRightY>260</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer5>
<SelectSlideDuetPlayer6>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<SkinArrowLeft>: Texture name of left arrow-->
<SkinArrowLeft>SelectSlideArrowLeft</SkinArrowLeft>
<!--<SkinArrowRight>: Texture name of right arrow-->
<SkinArrowRight>SelectSlideArrowRight</SkinArrowRight>
<!--<SkinSelected>: Texture name for selected SelectSlide-->
<SkinSelected>Button</SkinSelected>
<!--<SkinArrowLeftSelected>: Texture name of selected left arrow-->
<SkinArrowLeftSelected>SelectSlideArrowLeft</SkinArrowLeftSelected>
<!--<SkinArrowRightSelected>: Texture name of selected right arrow-->
<SkinArrowRightSelected>SelectSlideArrowRight</SkinArrowRightSelected>
<!--<SkinHighlighted>: Texture name for highlighted SelectSlide-->
<SkinHighlighted>Button</SkinHighlighted>
<!--<X>, <Y>, <Z>, <W>, <H>: SelectSlide position, width and height-->
<X>1152</X>
<Y>415</Y>
<Z>-4,00</Z>
<W>88</W>
<H>20</H>
<!--<ArrowLeftX>, <ArrowLeftY>, <ArrowLeftZ>, <ArrowLeftW>, <ArrowLeftH>: Left arrow position, width and height-->
<ArrowLeftX>1240</ArrowLeftX>
<ArrowLeftY>415</ArrowLeftY>
<ArrowLeftZ>-4,01</ArrowLeftZ>
<ArrowLeftW>20</ArrowLeftW>
<ArrowLeftH>20</ArrowLeftH>
<!--<ArrowRightX>, <ArrowRightY>, <ArrowRightZ>, <ArrowRightW>, <ArrowRightH>: Right arrow position, width and height-->
<ArrowRightX>1240</ArrowRightX>
<ArrowRightY>415</ArrowRightY>
<ArrowRightZ>-4,01</ArrowRightZ>
<ArrowRightW>20</ArrowRightW>
<ArrowRightH>20</ArrowRightH>
<!--<Color>: SelectSlide color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>SelectSlideColor</Color>
<!--<SColor>: Selected SelectSlide color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>SelectSlideSColor</SColor>
<!--<HColor>: Highlighted SelectSlide color from ColorScheme (high priority)-->
<!--or <HR>, <HG>, <HB>, <HA> (lower priority)-->
<HColor>SelectSlideHColor</HColor>
<!--<ArrowColor>: Arrow color from ColorScheme (high priority)-->
<!--or <ArrowR>, <ArrowG>, <ArrowB>, <ArrowA> (lower priority)-->
<ArrowColor>ArrowColor</ArrowColor>
<!--<ArrowSColor>: Selected arrow color from ColorScheme (high priority)-->
<!--or <ArrowSR>, <ArrowSG>, <ArrowSB>, <ArrowSA> (lower priority)-->
<ArrowSColor>ArrowSColor</ArrowSColor>
<!--<TextColor>: Text color from ColorScheme (high priority)-->
<!--or <TextR>, <TextG>, <TextB>, <TextA> (lower priority)-->
<TextColor>TextColor</TextColor>
<!--<TextSColor>: Selected text color from ColorScheme (high priority)-->
<!--or <TextSR>, <TextSG>, <TextSB>, <TextSA> (lower priority)-->
<TextSColor>TextSColor</TextSColor>
<!--<TextH>: Text height-->
<TextH>20,00</TextH>
<!--<TextMaxW>: Maximum text width (if exists)-->
<TextMaxW>86,00</TextMaxW>
<!--<TextFont>: Text font name-->
<TextFont>Outline</TextFont>
<!--<TextStyle>: Text style: Normal, Italic, Bold, BoldItalic-->
<TextStyle>Bold</TextStyle>
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>1</NumVisible>
</SelectSlideDuetPlayer6>
<NameSelection>
<!--<X>, <Y>, <Z>, <W>, <H>: NameSelection position, width and height-->
<X>172</X>
@@ -738,5 +1128,167 @@
</Name>
</Tiles>
</NameSelection>
<EqualizerPlayer1>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>21</X>
<Y>152</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player1Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player1Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer1>
<EqualizerPlayer2>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>21</X>
<Y>307</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player2Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player2Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer2>
<EqualizerPlayer3>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>21</X>
<Y>467</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player3Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player3Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer3>
<EqualizerPlayer4>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>1153</X>
<Y>152</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player4Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player4Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer4>
<EqualizerPlayer5>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>1153</X>
<Y>307</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player5Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player5Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer5>
<EqualizerPlayer6>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>1153</X>
<Y>467</Y>
<Z>-4,00</Z>
<W>108</W>
<H>60</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>8</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>Player6Dim2</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>Player6Dim2</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</EqualizerPlayer6>
</ScreenNames>
</root>
@@ -52,7 +52,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -97,7 +97,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_BUTTON_GAME</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -154,7 +154,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCRENNO_BUTTON_SOUND</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -211,7 +211,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_BUTTON_RECORD</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -268,7 +268,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_BUTTON_VIDEO</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -325,7 +325,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_BUTTON_LYRICS</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -382,7 +382,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_BUTTON_THEME</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -148,7 +148,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -177,7 +177,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_LANGUAGE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -206,7 +206,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_DEBUGLEVEL</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -235,7 +235,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_SONGMENU</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -264,7 +264,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_SONGSORTING</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -293,7 +293,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_TABS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -322,7 +322,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOGAME_TIMERMODE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -367,7 +367,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -52,7 +52,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOLYRICS_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -81,7 +81,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOLYRICS_STYLE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -110,7 +110,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOLYRICS_ONTOP</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -155,7 +155,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<ScreenOptionsRecord>
<ScreenVersion>1</ScreenVersion>
<ScreenVersion>2</ScreenVersion>
<Background1>
<!--<Type>: Background type: None, Color, Texture, Video-->
<Type>Video</Type>
@@ -180,7 +180,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -209,7 +209,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_DEVICE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -238,7 +238,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_INPUT</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -267,7 +267,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_CHANNEL_1</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -296,7 +296,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_CHANNEL_2</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -325,7 +325,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_MIC_DELAY</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -355,7 +355,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_MIC_WARNING</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -384,7 +384,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -413,7 +413,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -458,7 +458,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -515,7 +515,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENORECORD_BUTTON_DELAYTEST</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -858,5 +858,67 @@
<!--<NumVisible>: Number of visible elements in the slide-->
<NumVisible>5</NumVisible>
</SelectSlideDelay>
<EqualizerChannel1>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>50</X>
<Y>400</Y>
<Z>-1,00</Z>
<W>230</W>
<H>150</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>10</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>ButtonColor</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>ButtonColor</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
<Reflection>
<Space>10</Space>
<Height>26</Height>
</Reflection>
</EqualizerChannel1>
<EqualizerChannel2>
<!--<Skin>: Texture name-->
<Skin>Invisible</Skin>
<!--<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height-->
<X>400</X>
<Y>400</Y>
<Z>-1,00</Z>
<W>230</W>
<H>150</H>
<!--<NumBars>: Number of equalizer-elements.-->
<NumBars>10</NumBars>
<!--<Space>: Space between equalizer-elements.-->
<Space>2,00</Space>
<!--<Style>: Style of equalizer-elements: Collums-->
<Style>Collums</Style>
<!--<DrawNegative>: Draw negative values: TR_CONFIG_OFF, TR_CONFIG_ON-->
<DrawNegative>TR_CONFIG_OFF</DrawNegative>
<!--<Color>: Equalizer color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>ButtonColor</Color>
<!--<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)-->
<!--or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)-->
<MaxColor>ButtonColor</MaxColor>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
<Reflection>
<Space>10</Space>
<Height>26</Height>
</Reflection>
</EqualizerChannel2>
</ScreenOptionsRecord>
</root>
@@ -52,7 +52,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOSOUND_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -81,7 +81,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOSOUND_BACKGROUNDMUSIC</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -110,7 +110,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOSOUND_BACKGROUNDMUSICVOLUME</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -139,7 +139,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOSOUND_BACKGROUNDMUSICSOURCE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -184,7 +184,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -180,7 +180,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -209,7 +209,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_THEME</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -238,7 +238,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_SKIN</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -267,7 +267,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_COVERTHEME</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -296,7 +296,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_NOTELINES</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -325,7 +325,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_TONEHELPER</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -354,7 +354,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_TIMERLOOK</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -383,7 +383,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_FADEINFO</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -412,7 +412,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOTHEME_COVERLOADING</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -457,7 +457,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -100,7 +100,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOVIDEO_OPTIONS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -129,7 +129,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOVIDEO_VIDEOBACKGROUNDS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -158,7 +158,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOVIDEO_VIDEOPREVIEW</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -187,7 +187,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENOVIDEO_VIDEOINSONGS</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -216,7 +216,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENO_VIDEO_VIDEOSTOBACKGROUND</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -261,7 +261,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -148,7 +148,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_PROFILES</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -177,7 +177,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_PLAYERNAME</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -206,7 +206,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_GAMEDIFFICULTY</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -235,7 +235,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_AVATAR</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -264,7 +264,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_GUESTPROFILE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -293,7 +293,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_ACTIVE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -338,7 +338,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
</Text>
<!--<Reflection> If exists:-->
@@ -387,7 +387,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_BACK</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -444,7 +444,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_BUTTON_SAVE</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -501,7 +501,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_BUTTON_NEW</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -558,7 +558,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENPROFILES_BUTTON_DELETE</Text>
</Text>
<!--<Reflection> If exists:-->
+86 -86
View File
@@ -1226,7 +1226,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENSCORE_SCORES</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1255,7 +1255,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1284,7 +1284,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1313,7 +1313,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1342,7 +1342,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1371,7 +1371,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1400,7 +1400,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1429,7 +1429,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1458,7 +1458,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1487,7 +1487,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1516,7 +1516,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1545,7 +1545,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1574,7 +1574,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1603,7 +1603,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1632,7 +1632,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1661,7 +1661,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1690,7 +1690,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1719,7 +1719,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1748,7 +1748,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1777,7 +1777,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1806,7 +1806,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1835,7 +1835,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1864,7 +1864,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1893,7 +1893,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1922,7 +1922,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1951,7 +1951,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1980,7 +1980,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2009,7 +2009,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2039,7 +2039,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2068,7 +2068,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2097,7 +2097,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2126,7 +2126,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2156,7 +2156,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2185,7 +2185,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2214,7 +2214,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2243,7 +2243,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2273,7 +2273,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2302,7 +2302,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2331,7 +2331,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2360,7 +2360,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2390,7 +2390,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2419,7 +2419,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2449,7 +2449,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2479,7 +2479,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2509,7 +2509,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2539,7 +2539,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2569,7 +2569,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2599,7 +2599,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2629,7 +2629,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2659,7 +2659,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2689,7 +2689,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2719,7 +2719,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2749,7 +2749,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2779,7 +2779,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2809,7 +2809,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2839,7 +2839,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2869,7 +2869,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2899,7 +2899,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2929,7 +2929,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2959,7 +2959,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2989,7 +2989,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3019,7 +3019,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3049,7 +3049,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3079,7 +3079,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3109,7 +3109,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3139,7 +3139,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3169,7 +3169,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3199,7 +3199,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3229,7 +3229,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3259,7 +3259,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3289,7 +3289,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3319,7 +3319,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3349,7 +3349,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3379,7 +3379,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3409,7 +3409,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3439,7 +3439,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3469,7 +3469,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3499,7 +3499,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3529,7 +3529,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3559,7 +3559,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3589,7 +3589,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3619,7 +3619,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3649,7 +3649,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3679,7 +3679,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3709,7 +3709,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -3739,7 +3739,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
+165 -50
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<ScreenSing>
<ScreenVersion>4</ScreenVersion>
<ScreenVersion>5</ScreenVersion>
<Background1>
<!--<Type>: Background type: None, Color, Texture, Video-->
<Type>None</Type>
@@ -982,7 +982,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1011,7 +1011,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1040,12 +1040,70 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENSING_PAUSE</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</TextPause>
<TextDuetName1>
<!--<X>, <Y>: Text position-->
<X>40</X>
<Y>80</Y>
<!--<Z>: Text position-->
<Z>-1,00</Z>
<!--<H>: Text height-->
<H>35</H>
<!--<MaxW>: Maximum text width (if exists)-->
<!--<Color>: Text color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>TextSColor</Color>
<!--<SColor>: Selected Text color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>TextSColor</SColor>
<!--<Align>: Text align horizontal: Left, Center, Right-->
<Align>Left</Align>
<!--<HAlign>: Text align vertical (on downsizing): Top, Center, Bottom-->
<HAlign>Center</HAlign>
<!--<Style>: Text style: Normal, Italic, Bold, BoldItalic-->
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</TextDuetName1>
<TextDuetName2>
<!--<X>, <Y>: Text position-->
<X>40</X>
<Y>585</Y>
<!--<Z>: Text position-->
<Z>-1,00</Z>
<!--<H>: Text height-->
<H>35</H>
<!--<MaxW>: Maximum text width (if exists)-->
<!--<Color>: Text color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>TextSColor</Color>
<!--<SColor>: Selected Text color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>TextSColor</SColor>
<!--<Align>: Text align horizontal: Left, Center, Right-->
<Align>Left</Align>
<!--<HAlign>: Text align vertical (on downsizing): Top, Center, Bottom-->
<HAlign>Center</HAlign>
<!--<Style>: Text style: Normal, Italic, Bold, BoldItalic-->
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
</TextDuetName2>
<TextScoreP1N1>
<!--<X>, <Y>: Text position-->
<X>1240</X>
@@ -1069,7 +1127,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1101,7 +1159,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1130,7 +1188,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1162,7 +1220,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1191,7 +1249,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1223,7 +1281,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1252,7 +1310,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1284,7 +1342,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1313,7 +1371,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1345,7 +1403,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1374,7 +1432,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1406,7 +1464,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1435,7 +1493,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1467,7 +1525,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1496,7 +1554,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1528,7 +1586,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1557,7 +1615,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1589,7 +1647,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1618,7 +1676,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1650,7 +1708,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1679,7 +1737,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1711,7 +1769,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1740,7 +1798,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1772,7 +1830,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1801,7 +1859,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1833,7 +1891,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1862,7 +1920,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1894,7 +1952,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1923,7 +1981,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1955,7 +2013,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -1984,7 +2042,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2016,7 +2074,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2045,7 +2103,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2077,7 +2135,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2106,7 +2164,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2138,7 +2196,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2167,7 +2225,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2199,7 +2257,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2228,7 +2286,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2260,7 +2318,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2289,7 +2347,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Normal</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2321,7 +2379,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text />
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
@@ -2333,7 +2391,7 @@
<!--<SkinSelected>: Texture name for selected button-->
<SkinSelected>Button</SkinSelected>
<!--<X>, <Y>, <Z>, <W>, <H>: Button position, width and height-->
<X>670</X>
<X>775</X>
<Y>300</Y>
<Z>-2,11</Z>
<W>150</W>
@@ -2366,7 +2424,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENSING_BUTTON_CANCEL</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -2390,7 +2448,7 @@
<!--<SkinSelected>: Texture name for selected button-->
<SkinSelected>Button</SkinSelected>
<!--<X>, <Y>, <Z>, <W>, <H>: Button position, width and height-->
<X>460</X>
<X>355</X>
<Y>300</Y>
<Z>-2,11</Z>
<W>150</W>
@@ -2423,7 +2481,7 @@
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Text or translation tag-->
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENSING_BUTTON_CONTINUE</Text>
</Text>
<!--<Reflection> If exists:-->
@@ -2441,6 +2499,63 @@
<Height>26</Height>
</SReflection>
</ButtonContinue>
<ButtonSkip>
<!--<Skin>: Texture name-->
<Skin>Button</Skin>
<!--<SkinSelected>: Texture name for selected button-->
<SkinSelected>Button</SkinSelected>
<!--<X>, <Y>, <Z>, <W>, <H>: Button position, width and height-->
<X>565</X>
<Y>300</Y>
<Z>-2,11</Z>
<W>150</W>
<H>50</H>
<!--<Color>: Button color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>ButtonColor</Color>
<!--<SColor>: Selected button color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>ButtonSColor</SColor>
<Text>
<!--<X>, <Y>: Text position-->
<X>75</X>
<Y>10</Y>
<!--<H>: Text height-->
<H>32</H>
<!--<MaxW>: Maximum text width (if exists)-->
<MaxW>142</MaxW>
<!--<Color>: Text color from ColorScheme (high priority)-->
<!--or <R>, <G>, <B>, <A> (lower priority)-->
<Color>ButtonTextColor</Color>
<!--<SColor>: Selected Text color from ColorScheme (high priority)-->
<!--or <SR>, <SG>, <SB>, <SA> (lower priority)-->
<SColor>ButtonTextSColor</SColor>
<!--<Align>: Text align horizontal: Left, Center, Right-->
<Align>Center</Align>
<!--<HAlign>: Text align vertical (on downsizing): Top, Center, Bottom-->
<HAlign>Center</HAlign>
<!--<Style>: Text style: Normal, Italic, Bold, BoldItalic-->
<Style>Bold</Style>
<!--<Font>: Text font name-->
<Font>Outline</Font>
<!--<Text>: Nothing or translation tag-->
<Text>TR_SCREENSING_BUTTON_SKIP</Text>
</Text>
<!--<Reflection> If exists:-->
<!-- <Space>: Reflection Space-->
<!-- <Height>: Reflection Height-->
<Reflection>
<Space>10</Space>
<Height>26</Height>
</Reflection>
<!--<SReflection> If exists:-->
<!-- <Space>: Reflection Space of selected button-->
<!-- <Height>: Reflection Height of selected button-->
<SReflection>
<Space>10</Space>
<Height>26</Height>
</SReflection>
</ButtonSkip>
<LyricMain>
<!--<X>, <Y>, <Z>, <W>, <H>: Lyric position, width and height-->
<X>637</X>
File diff suppressed because it is too large. Load diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

+29 -13
View File
@@ -117,7 +117,7 @@
<G>0,000</G>
<B>0,500</B>
<A>0,400</A>
</Player6Dim2>
</Player6Dim2>
<BackgroundColor>
<R>0,000</R>
<G>0,000</G>
@@ -130,6 +130,12 @@
<B>0,969</B>
<A>1,000</A>
</StaticColor>
<StaticColorAlpha>
<R>0,675</R>
<G>0,890</G>
<B>0,969</B>
<A>0,500</A>
</StaticColorAlpha>
<StaticWarningColor>
<R>0,675</R>
<G>0,890</G>
@@ -166,6 +172,12 @@
<B>0,969</B>
<A>1,000</A>
</SelectSlideColor>
<SelectSlideColorAlpha>
<R>0,675</R>
<G>0,890</G>
<B>0,969</B>
<A>0,500</A>
</SelectSlideColorAlpha>
<SelectSlideHColor>
<R>0,675</R>
<G>0,890</G>
@@ -251,11 +263,11 @@
<A>1,000</A>
</LyricSubColor>
<LyricHelper>
<R>0,00</R>
<G>0,00</G>
<B>1,00</B>
<A>0,50</A>
</LyricHelper>
<R>0,000</R>
<G>0,000</G>
<B>1,000</B>
<A>0,500</A>
</LyricHelper>
<TimeBar>
<R>0,800</R>
<G>0,950</G>
@@ -309,12 +321,16 @@
<MedleyTagIcon>MedleyTagIcon.png</MedleyTagIcon>
<Invisible>Invisible.png</Invisible>
<PlayerSelector>PlayerSelector.png</PlayerSelector>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<CloseIcon>Close.png</CloseIcon>
<DeleteIcon>Delete.png</DeleteIcon>
<SaveIcon>Save.png</SaveIcon>
<SingIcon>Sing.png</SingIcon>
</Skins>
<Videos>
<BG_Video>[Blue]BG_Video.mp4</BG_Video>
@@ -322,4 +338,4 @@
<IntroMid>[Blue]IntroMid.mp4</IntroMid>
<IntroOut>[Blue]IntroOut.mp4</IntroOut>
</Videos>
</root>
</root>
+22 -12
View File
@@ -117,7 +117,7 @@
<G>0,000</G>
<B>0,500</B>
<A>0,400</A>
</Player6Dim2>
</Player6Dim2>
<BackgroundColor>
<R>0,000</R>
<G>0,750</G>
@@ -130,6 +130,12 @@
<B>0,674</B>
<A>1,000</A>
</StaticColor>
<StaticColorAlpha>
<R>0,709</R>
<G>0,968</G>
<B>0,674</B>
<A>0,500</A>
</StaticColorAlpha>
<StaticWarningColor>
<R>0,709</R>
<G>0,968</G>
@@ -251,10 +257,10 @@
<A>1,000</A>
</LyricSubColor>
<LyricHelper>
<R>0,00</R>
<G>1,00</G>
<B>0,00</B>
<A>0,50</A>
<R>0,000</R>
<G>1,000</G>
<B>0,000</B>
<A>0,500</A>
</LyricHelper>
<TimeBar>
<R>0,800</R>
@@ -309,12 +315,16 @@
<MedleyTagIcon>MedleyTagIcon.png</MedleyTagIcon>
<Invisible>Invisible.png</Invisible>
<PlayerSelector>PlayerSelector.png</PlayerSelector>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<CloseIcon>Close.png</CloseIcon>
<DeleteIcon>Delete.png</DeleteIcon>
<SaveIcon>Save.png</SaveIcon>
<SingIcon>Sing.png</SingIcon>
</Skins>
<Videos>
<BG_Video>[Green]BG_Video.mp4</BG_Video>
@@ -322,4 +332,4 @@
<IntroMid>[Green]IntroMid.mp4</IntroMid>
<IntroOut>[Green]IntroOut.mp4</IntroOut>
</Videos>
</root>
</root>
+23 -13
View File
@@ -117,7 +117,7 @@
<G>0,000</G>
<B>0,500</B>
<A>0,400</A>
</Player6Dim2>
</Player6Dim2>
<BackgroundColor>
<R>0,750</R>
<G>0,000</G>
@@ -130,6 +130,12 @@
<B>0,674</B>
<A>1,000</A>
</StaticColor>
<StaticColorAlpha>
<R>0,968</R>
<G>0,674</G>
<B>0,674</B>
<A>0,500</A>
</StaticColorAlpha>
<StaticWarningColor>
<R>0,968</R>
<G>0,674</G>
@@ -251,11 +257,11 @@
<A>1,000</A>
</LyricSubColor>
<LyricHelper>
<R>1,00</R>
<G>0,00</G>
<B>0,00</B>
<A>0,50</A>
</LyricHelper>
<R>1,000</R>
<G>0,000</G>
<B>0,000</B>
<A>0,500</A>
</LyricHelper>
<TimeBar>
<R>1,000</R>
<G>0,800</G>
@@ -309,12 +315,16 @@
<MedleyTagIcon>MedleyTagIcon.png</MedleyTagIcon>
<Invisible>Invisible.png</Invisible>
<PlayerSelector>PlayerSelector.png</PlayerSelector>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<CloseIcon>Close.png</CloseIcon>
<DeleteIcon>Delete.png</DeleteIcon>
<SaveIcon>Save.png</SaveIcon>
<SingIcon>Sing.png</SingIcon>
</Skins>
<Videos>
<BG_Video>[Red]BG_Video.mp4</BG_Video>
@@ -322,4 +332,4 @@
<IntroMid>[Red]IntroMid.mp4</IntroMid>
<IntroOut>[Red]IntroOut.mp4</IntroOut>
</Videos>
</root>
</root>
+23 -13
View File
@@ -117,7 +117,7 @@
<G>0,000</G>
<B>0,500</B>
<A>0,400</A>
</Player6Dim2>
</Player6Dim2>
<BackgroundColor>
<R>0,750</R>
<G>0,750</G>
@@ -130,6 +130,12 @@
<B>0,674</B>
<A>1,000</A>
</StaticColor>
<StaticColorAlpha>
<R>0,968</R>
<G>0,956</G>
<B>0,674</B>
<A>0,500</A>
</StaticColorAlpha>
<StaticWarningColor>
<R>0,968</R>
<G>0,956</G>
@@ -251,11 +257,11 @@
<A>1,000</A>
</LyricSubColor>
<LyricHelper>
<R>1,00</R>
<G>1,00</G>
<B>0,00</B>
<A>0,50</A>
</LyricHelper>
<R>1,000</R>
<G>1,000</G>
<B>0,000</B>
<A>0,500</A>
</LyricHelper>
<TimeBar>
<R>0,949</R>
<G>1,000</G>
@@ -309,12 +315,16 @@
<MedleyTagIcon>MedleyTagIcon.png</MedleyTagIcon>
<Invisible>Invisible.png</Invisible>
<PlayerSelector>PlayerSelector.png</PlayerSelector>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<PreviousIcon>PreviousIcon.png</PreviousIcon>
<NextIcon>NextIcon.png</NextIcon>
<PlayIcon>PlayIcon.png</PlayIcon>
<PauseIcon>PauseIcon.png</PauseIcon>
<RepeatIcon>RepeatIcon.png</RepeatIcon>
<SongMenuBG>SongMenuBG.png</SongMenuBG>
<CloseIcon>Close.png</CloseIcon>
<DeleteIcon>Delete.png</DeleteIcon>
<SaveIcon>Save.png</SaveIcon>
<SingIcon>Sing.png</SingIcon>
</Skins>
<Videos>
<BG_Video>[Yellow]BG_Video.mp4</BG_Video>
@@ -322,4 +332,4 @@
<IntroMid>[Yellow]IntroMid.mp4</IntroMid>
<IntroOut>[Yellow]IntroOut.mp4</IntroOut>
</Videos>
</root>
</root>
@@ -1,5 +1,11 @@
SceenNames
++++++++++
Version 3:
<EqualizerPlayer[1...6]> (One Equalizer for each player): Equalizer shows input from assigned mic for this player.
<SelectSlideDuetPlayer[1...6]> (One SelectSlide for each player)
++++++++++
Version 2:
@@ -0,0 +1,9 @@
ScreenOptionsRecord
++++++++++
Version 2:
Add:
<EqualizerChannel1> and <EqualizerChannel2>.
This is a new theme-element. Check ScreenOptionsRecord.xml for style-possibilities.
++++++++++
@@ -1,5 +1,17 @@
ScreenSing
+++++++++
Version 5
Add:
<TextDuetName1> and <TextDuetName2> (only showed when sining duet)
++++++++++
Version 5:
Add:
<ButtonSkip>
++++++++++
Version 4:
Added Elements for 6-player-singing!
@@ -1,5 +1,16 @@
ScreenSong
++++++++++
Version 3:
Add:
<StaticOptionsBG>
<TextOptionsTitle>
<ButtonOptionsSing>, <ButtonOptionsClose>, <ButtonOptionsPlaylist>, <ButtonOptionsSingAll>, <ButtonOptionsSingAllVisible>, <ButtonOptionsRandom>, <ButtonOptionsRandom>, <ButtonOpenOptions>
<SelectSlideOptionsMode>, <SelectSlideOptionsPlaylistAdd>, <SelectSlideOptionsPlaylistOpen>
and
<Playlist> as a new Screen-Element. For details, look at ScreenSong.xml
++++++++++
Version 2:
+5
View File
@@ -933,6 +933,11 @@ namespace Vocaluxe.Base
CSettings.sFileHighscoreDB = value;
}
break;
case "playlistfolder":
CSettings.CreateFolder(value);
CSettings.sFolderPlaylists = value;
break;
}
}
}
+5
View File
@@ -117,6 +117,11 @@ namespace Vocaluxe.Base
_Draw.DrawColor(color, rect);
}
public static void DrawColorReflection(SColorF color, SRectF rect, float space, float height)
{
_Draw.DrawColorReflection(color, rect, space, height);
}
public static void ClearScreen()
{
_Draw.ClearScreen();
+4 -4
View File
@@ -803,10 +803,10 @@ namespace Vocaluxe.Base
writer.WriteElementString("Folder", _Fonts[Index].Folder);
writer.WriteElementString("Outline", _Fonts[Index].Outline.ToString("#0.00"));
writer.WriteElementString("ColorR", _Fonts[Index].OutlineColor.R.ToString("#0.00"));
writer.WriteElementString("ColorG", _Fonts[Index].OutlineColor.G.ToString("#0.00"));
writer.WriteElementString("ColorB", _Fonts[Index].OutlineColor.B.ToString("#0.00"));
writer.WriteElementString("ColorA", _Fonts[Index].OutlineColor.A.ToString("#0.00"));
writer.WriteElementString("OutlineColorR", _Fonts[Index].OutlineColor.R.ToString("#0.00"));
writer.WriteElementString("OutlineColorG", _Fonts[Index].OutlineColor.G.ToString("#0.00"));
writer.WriteElementString("OutlineColorB", _Fonts[Index].OutlineColor.B.ToString("#0.00"));
writer.WriteElementString("OutlineColorA", _Fonts[Index].OutlineColor.A.ToString("#0.00"));
writer.WriteElementString("FileNormal", _Fonts[Index].FileNormal);
writer.WriteElementString("FileBold", _Fonts[Index].FileBold);
+10
View File
@@ -180,6 +180,11 @@ namespace Vocaluxe.Base
return _GameMode.GetSong(Num);
}
public static EGameMode GetGameMode(int Num)
{
return _GameMode.GetGameMode(Num);
}
public static int GetNumSongs()
{
return _GameMode.GetNumSongs();
@@ -190,6 +195,11 @@ namespace Vocaluxe.Base
return _GameMode.GetPoints();
}
public static int NumRounds
{
get { return _GameMode.GetNumSongs(); }
}
public static int NumPlayer
{
get { return _NumPlayer; }
+34 -5
View File
@@ -13,14 +13,27 @@ namespace Vocaluxe.Base
static class CPlaylists
{
private static List<CPlaylist> _Playlists;
private static List<CPlaylistFile> _Playlists;
private static CHelper Helper = new CHelper();
public static CPlaylist[] Playlists
public static CPlaylistFile[] Playlists
{
get { return _Playlists.ToArray(); }
}
public static string[] PlaylistNames
{
get
{
List<string> names = new List<string>();
for (int i = 0; i < _Playlists.Count; i++)
{
names.Add(_Playlists[i].PlaylistName);
}
return names.ToArray();
}
}
public static int NumPlaylists
{
get { return _Playlists.Count; }
@@ -33,13 +46,14 @@ namespace Vocaluxe.Base
public static void LoadPlaylists()
{
_Playlists = new List<CPlaylist>();
_Playlists = new List<CPlaylistFile>();
List<string> files = new List<string>();
files.AddRange(Helper.ListFiles(CSettings.sFolderPlaylists, "*.xml", true, true));
foreach (string file in files)
{
CPlaylist playlist = new CPlaylist(file);
CPlaylistFile playlist = new CPlaylistFile(file);
_Playlists.Add(playlist);
}
SortPlaylistsByName();
@@ -52,7 +66,7 @@ namespace Vocaluxe.Base
_Playlists.Sort(CompareByPlaylistName);
}
private static int CompareByPlaylistName(CPlaylist a, CPlaylist b)
private static int CompareByPlaylistName(CPlaylistFile a, CPlaylistFile b)
{
return String.Compare(a.PlaylistName, b.PlaylistName);
}
@@ -75,6 +89,21 @@ namespace Vocaluxe.Base
}
}
public static void SavePlaylist(int PlaylistID)
{
if (PlaylistID < 0 || PlaylistID >= _Playlists.Count)
return;
_Playlists[PlaylistID].SavePlaylist();
}
public static int NewPlaylist()
{
CPlaylistFile pl = new CPlaylistFile();
pl.PlaylistName = "New Playlist";
_Playlists.Add(pl);
return (_Playlists.Count - 1);
}
#endregion
}
}
+8 -1
View File
@@ -94,7 +94,7 @@ namespace Vocaluxe.Base
public const string sFolderLanguages = "Languages";
public const string sFolderScreenshots = "Screenshots";
public const string sFolderBackgroundMusic = "BackgroundMusic";
public const string sFolderPlaylists = "Playlists";
public static string sFolderPlaylists = "Playlists";
//public const String[] ToneStrings = new String[]{ "C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B" };
public const int ToneMin = -36;
@@ -185,6 +185,7 @@ namespace Vocaluxe.Base
Folders.Add(sFolderScreenshots);
Folders.Add(sFolderBackgroundMusic);
Folders.Add(sFolderSounds);
Folders.Add(sFolderPlaylists);
foreach (string folder in Folders)
{
@@ -193,5 +194,11 @@ namespace Vocaluxe.Base
Directory.CreateDirectory(path);
}
}
public static void CreateFolder(string path)
{
if (!Directory.Exists(path))
Directory.CreateDirectory(path);
}
}
}
+4
View File
@@ -315,6 +315,10 @@ namespace Vocaluxe.Base
public CBuffer()
{
_ToneWeigth = new float[_NumHalfTones];
for (int i = 0; i < _ToneWeigth.Length; i++)
{
_ToneWeigth[i] = 0.99f;
}
_Stream = new MemoryStream();
_NewSamples = false;
}
+10 -1
View File
@@ -248,6 +248,7 @@ namespace Vocaluxe.GameModes
if (_CurrentSong >= 0 && _CurrentSong < _SongQueque.Count)
{
CSong song = CSongs.GetSong(_SongQueque[_CurrentSong].SongID);
song = new CSong(song);
switch (GetCurrentGameMode())
{
@@ -283,12 +284,20 @@ namespace Vocaluxe.GameModes
public virtual CSong GetSong(int Num)
{
if (Num - 1 < _SongQueque.Count)
if (Num - 1 < _SongQueque.Count && Num - 1 > -1)
return CSongs.GetSong(_SongQueque[Num - 1].SongID);
return null;
}
public virtual EGameMode GetGameMode(int Num)
{
if(Num - 1 < _SongQueque.Count && Num > -1)
return _SongQueque[Num].GameMode;
return EGameMode.TR_GAMEMODE_NORMAL;
}
public virtual CPoints GetPoints()
{
return _Points;
+1
View File
@@ -38,5 +38,6 @@ namespace Vocaluxe.GameModes
int GetNumSongs();
CSong GetSong();
CSong GetSong(int Num);
EGameMode GetGameMode(int Num);
}
}
+13
View File
@@ -836,6 +836,19 @@ namespace Vocaluxe.Lib.Draw
{
DrawTexture(_BlankTexture, rect, color);
}
/// <summary>
/// Draws reflection of a colored rectangle
/// </summary>
/// <param name="color">The color in which the rectangle will be drawn in</param>
/// <param name="rect">The coordinates in a SRectF struct</param>
/// <param name="space">The space between the texture and the reflection</param>
/// <param name="height">The height of the reflection</param>
public void DrawColorReflection(SColorF color, SRectF rect, float space, float height)
{
DrawTextureReflection(_BlankTexture, rect, color, rect, space, height);
}
#endregion Basic Draw Methods
#region Textures
#region adding
+5
View File
@@ -352,6 +352,11 @@ namespace Vocaluxe.Lib.Draw
}
public void DrawColorReflection(SColorF color, SRectF rect, float space, float height)
{
}
public STexture AddTexture(Bitmap bmp)
{
Bitmap bmp2 = new Bitmap(bmp);
+53
View File
@@ -661,6 +661,59 @@ namespace Vocaluxe.Lib.Draw
GL.Disable(EnableCap.Blend);
}
public void DrawColorReflection(SColorF color, SRectF rect, float space, float height)
{
if (rect.H < height)
height = rect.H;
float rx1 = rect.X;
float rx2 = rect.X + rect.W;
float ry1 = rect.Y + rect.H + space;
float ry2 = rect.Y + rect.H + space + height;
if (rx1 < rect.X)
rx1 = rect.X;
if (rx2 > rect.X + rect.W)
rx2 = rect.X + rect.W;
if (ry1 < rect.Y + space)
ry1 = rect.Y + space;
if (ry2 > rect.Y + rect.H + space + height)
ry2 = rect.Y + rect.H + space + height;
GL.Enable(EnableCap.Blend);
if (rect.Rotation != 0f)
{
GL.Translate(0.5f, 0.5f, 0);
GL.Rotate(-rect.Rotation, 0f, 0f, 1f);
GL.Translate(-0.5f, -0.5f, 0);
}
GL.Begin(BeginMode.Quads);
GL.Color4(color.R, color.G, color.B, color.A * CGraphics.GlobalAlpha);
GL.Vertex3(rx2, ry1, rect.Z + CGraphics.ZOffset);
GL.Color4(color.R, color.G, color.B, 0f);
GL.Vertex3(rx2, ry2, rect.Z + CGraphics.ZOffset);
GL.Color4(color.R, color.G, color.B, 0f);
GL.Vertex3(rx1, ry2, rect.Z + CGraphics.ZOffset);
GL.Color4(color.R, color.G, color.B, color.A * CGraphics.GlobalAlpha);
GL.Vertex3(rx1, ry1, rect.Z + CGraphics.ZOffset);
GL.End();
GL.Disable(EnableCap.Blend);
}
#endregion Basic Draw Methods
#region Textures
+1
View File
@@ -125,6 +125,7 @@ namespace Vocaluxe.Lib.Draw
// Basic Draw Methods
void DrawLine(int a, int r, int g, int b, int w, int x1, int y1, int x2, int y2);
void DrawColor(SColorF color, SRectF rect);
void DrawColorReflection(SColorF color, SRectF rect, float space, float height);
void ClearScreen();
STexture CopyScreen();
@@ -29,24 +29,26 @@ namespace Vocaluxe.Lib.Playlist
}
}
public class CPlaylist
public class CPlaylistFile
{
private static XmlWriterSettings _settings = new XmlWriterSettings();
private static CHelper Helper = new CHelper();
public string PlaylistName;
public string PlaylistFile;
public List<CPlaylistSong> Songs;
public List<CPlaylistSong> Songs = new List<CPlaylistSong>();
public CPlaylist()
public CPlaylistFile()
{
Init();
PlaylistName = string.Empty;
PlaylistFile = string.Empty;
}
public CPlaylist(string file)
public CPlaylistFile(string file)
{
Init();
PlaylistName = file;
PlaylistFile = file;
LoadPlaylist();
}
@@ -58,29 +60,32 @@ namespace Vocaluxe.Lib.Playlist
}
private void SavePlaylist()
public void SavePlaylist()
{
string filename = string.Empty;
foreach (char chr in PlaylistName)
if (PlaylistFile == string.Empty)
{
if (char.IsLetter(chr))
filename += chr.ToString();
}
if (filename == String.Empty)
filename = "1";
int i = 0;
while (File.Exists(Path.Combine(CSettings.sFolderPlaylists, filename + ".xml")))
{
i++;
if (!File.Exists(Path.Combine(CSettings.sFolderPlaylists, filename + i + ".xml")))
string filename = string.Empty;
foreach (char chr in PlaylistName)
{
filename += i;
if (char.IsLetter(chr))
filename += chr.ToString();
}
}
PlaylistFile = Path.Combine(CSettings.sFolderPlaylists, filename + ".xml");
if (filename == String.Empty)
filename = "1";
int i = 0;
while (File.Exists(Path.Combine(CSettings.sFolderPlaylists, filename + ".xml")))
{
i++;
if (!File.Exists(Path.Combine(CSettings.sFolderPlaylists, filename + i + ".xml")))
{
filename += i;
}
}
PlaylistFile = Path.Combine(CSettings.sFolderPlaylists, filename + ".xml");
}
XmlWriter writer;
try
@@ -107,7 +112,7 @@ namespace Vocaluxe.Lib.Playlist
writer.WriteEndElement();
writer.WriteStartElement("Songs");
for (i = 0; i < Songs.Count; i++)
for (int i = 0; i < Songs.Count; i++)
{
CSong song = CSongs.GetSong(Songs[i].SongID);
if (song != null)
@@ -202,5 +207,47 @@ namespace Vocaluxe.Lib.Playlist
}
}
}
public void AddSong(int SongID)
{
CPlaylistSong song = new CPlaylistSong();
song.SongID = SongID;
if (CSongs.GetSong(SongID).IsDuet)
song.GameMode = EGameMode.TR_GAMEMODE_DUET;
else
song.GameMode = EGameMode.TR_GAMEMODE_NORMAL;
Songs.Add(song);
}
public void AddSong(int SongID, EGameMode gm)
{
CPlaylistSong song = new CPlaylistSong();
song.SongID = SongID;
song.GameMode = gm;
Songs.Add(song);
}
public void DeleteSong(int SongNr)
{
Songs.RemoveAt(SongNr);
}
public void SongDown(int SongNr)
{
if (SongNr != 0)
{
Songs.Reverse(SongNr - 1, 2);
}
}
public void SongUp(int SongNr)
{
if (SongNr + 1 < Songs.Count)
{
Songs.Reverse(SongNr, 2);
}
}
}
}
+2 -1
View File
@@ -6,7 +6,7 @@ using Vocaluxe.Base;
namespace Vocaluxe.Lib.Song
{
class CNotes
class CNotes
{
private List<CLines> _Lines = new List<CLines>();
@@ -549,6 +549,7 @@ namespace Vocaluxe.Lib.Song
updateMinMaxBeat(note);
}
}
#endregion Methods
}
+59 -5
View File
@@ -7,6 +7,7 @@ using System.Text.RegularExpressions;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
using Vocaluxe.Menu;
using Vocaluxe.GameModes;
namespace Vocaluxe.Lib.Song
{
@@ -128,6 +129,9 @@ namespace Vocaluxe.Lib.Song
public float Gap = 0f;
public float VideoGap = 0f;
public string DuetPart1 = String.Empty;
public string DuetPart2 = String.Empty;
public List<string> Comment = new List<string>();
// Sorting
@@ -148,6 +152,23 @@ namespace Vocaluxe.Lib.Song
// Notes
public CNotes Notes = new CNotes();
public EGameMode[] AvailableGameModes
{
get
{
List<EGameMode> gms = new List<EGameMode>();
if (IsDuet)
gms.Add(EGameMode.TR_GAMEMODE_DUET);
else
gms.Add(EGameMode.TR_GAMEMODE_NORMAL);
if (Medley.Source != EMedleySource.None)
gms.Add(EGameMode.TR_GAMEMODE_MEDLEY);
gms.Add(EGameMode.TR_GAMEMODE_SHORTSONG);
return gms.ToArray();
}
}
public CSong()
{
}
@@ -363,6 +384,18 @@ namespace Vocaluxe.Lib.Song
this.ArtistSorting = Value;
}
break;
case "P1":
if (Value != String.Empty)
{
this.DuetPart1 = Value;
}
break;
case "P2":
if (Value != String.Empty)
{
this.DuetPart2 = Value;
}
break;
case "MP3":
if (File.Exists(Path.Combine(this.Folder, Value)))
{
@@ -545,12 +578,12 @@ namespace Vocaluxe.Lib.Song
CheckFiles();
//Before saving this tags to .txt: Check, if ArtistSorting and Artist are equal, then don't save this tag.
if (this.ArtistSorting == "")
if (this.ArtistSorting == String.Empty)
{
this.ArtistSorting = this.Artist;
}
if (this.TitleSorting == "")
if (this.TitleSorting == String.Empty)
{
this.TitleSorting = this.Title;
}
@@ -609,9 +642,10 @@ namespace Vocaluxe.Lib.Song
FileLineNo++;
if (TempC.CompareTo('P') == 0)
{
char chr = (char)sr.Read();
int.TryParse(chr.ToString(), out Param1);
char chr;
while ((chr = (char)sr.Read()) == ' '){ }
int.TryParse(chr.ToString(), out Param1);
if (Param1 == 1)
Player = 0;
else if (Param1 == 2)
@@ -696,7 +730,8 @@ namespace Vocaluxe.Lib.Song
FindRefrain();
FindShortEnd();
_NotesLoaded = true;
if(IsDuet)
CheckDuet();
return true;
}
@@ -763,6 +798,20 @@ namespace Vocaluxe.Lib.Song
}
}
private void CheckDuet()
{
if (DuetPart1 == String.Empty)
{
DuetPart1 = "Part 1";
CLog.LogError("Warning: Can't find #P1-tag for duets in \"" + this.Artist + " - " + this.Title + "\".");
}
if (DuetPart2 == String.Empty)
{
DuetPart2 = "Part 2";
CLog.LogError("Warning: Can't find #P2-tag for duets in \"" + this.Artist + " - " + this.Title + "\".");
}
}
private struct Series
{
public int start;
@@ -962,5 +1011,10 @@ namespace Vocaluxe.Lib.Song
ShortEnd = stop;
}
public object Clone()
{
return base.MemberwiseClone();
}
}
}
+1 -1
View File
@@ -804,7 +804,7 @@ namespace Vocaluxe.Lib.Sound
{
AL.GetSource(_source, ALGetSourcei.BuffersProcessed, out processed_count);
doit = false;
Console.WriteLine("Buffers Prozessed on Stream " + _source.ToString() + " = " + processed_count.ToString());
Console.WriteLine("Buffers Processed on Stream " + _source.ToString() + " = " + processed_count.ToString());
if (processed_count < 1)
return;
}
+92
View File
@@ -0,0 +1,92 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Xml;
using System.Xml.XPath;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
namespace Vocaluxe.Menu.Animations
{
public class CAnimation:IAnimation
{
private IAnimation _Animation;
public CAnimation(EAnimationType Type)
{
setAnimation(Type);
}
public void Init()
{
_Animation.Init();
}
public bool LoadAnimation(string item, XPathNavigator navigator)
{
return _Animation.LoadAnimation(item, navigator);
}
public bool SaveAnimation(XmlWriter writer)
{
return _Animation.SaveAnimation(writer);
}
public void StartAnimation()
{
_Animation.StartAnimation();
}
public void StopAnimation()
{
_Animation.StopAnimation();
}
public void ResetAnimation()
{
_Animation.ResetAnimation();
}
public bool AnimationActive()
{
return _Animation.AnimationActive();
}
public void Update()
{
_Animation.Update();
}
public void setRect(SRectF rect)
{
_Animation.setRect(rect);
}
public SRectF getRect()
{
return _Animation.getRect();
}
public void setColor(SColorF color)
{
_Animation.setColor(color);
}
public SColorF getColor()
{
return _Animation.getColor();
}
public void setAnimation(EAnimationType Type)
{
switch (Type)
{
case EAnimationType.Resize:
_Animation = new CAnimationResize();
break;
}
}
}
}
@@ -0,0 +1,95 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Xml;
using System.Xml.XPath;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
namespace Vocaluxe.Menu.Animations
{
public enum EAnimationType
{
Resize
}
public enum EAnimationRepeat
{
None,
Reset,
Repeat,
RepeatWithReset
}
public abstract class CAnimationFramework:IAnimation
{
public bool _AnimationLoaded;
public EAnimationType Type;
public EAnimationRepeat Repeat;
public float Speed;
public Stopwatch Timer = new Stopwatch();
public bool ResetMode = false;
public abstract void Init();
public virtual bool LoadAnimation(string item, XPathNavigator navigator)
{
_AnimationLoaded = true;
_AnimationLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Speed", navigator, ref Speed);
_AnimationLoaded &= CHelper.TryGetEnumValueFromXML<EAnimationRepeat>(item + "/Repeat", navigator, ref Repeat);
return _AnimationLoaded;
}
public virtual bool SaveAnimation(XmlWriter writer)
{
return false;
}
public virtual void StartAnimation()
{
Timer.Start();
}
public virtual void StopAnimation()
{
Timer.Stop();
Timer.Reset();
}
public virtual void ResetAnimation()
{
ResetMode = !ResetMode;
}
public virtual bool AnimationActive()
{
return Timer.IsRunning;
}
public virtual void setRect(SRectF rect)
{
}
public virtual SRectF getRect()
{
return new SRectF();
}
public virtual void setColor(SColorF color)
{
}
public virtual SColorF getColor()
{
return new SColorF();
}
public abstract void Update();
}
}
@@ -0,0 +1,106 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Xml;
using System.Xml.XPath;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
namespace Vocaluxe.Menu.Animations
{
public class CAnimationResize : CAnimationFramework
{
public SRectF FinalRect;
public SRectF CurrentRect;
public SRectF OriginalRect;
public CAnimationResize()
{
}
public override void Init()
{
Type = EAnimationType.Resize;
}
public override bool LoadAnimation(string item, XPathNavigator navigator)
{
//Load normal animation-options
_AnimationLoaded &= base.LoadAnimation(item, navigator);
//Load specific animation-options
_AnimationLoaded &= CHelper.TryGetFloatValueFromXML(item + "/X", navigator, ref FinalRect.X);
_AnimationLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Y", navigator, ref FinalRect.Y);
_AnimationLoaded &= CHelper.TryGetFloatValueFromXML(item + "/W", navigator, ref FinalRect.W);
_AnimationLoaded &= CHelper.TryGetFloatValueFromXML(item + "/H", navigator, ref FinalRect.H);
return _AnimationLoaded;
}
public override void setRect(SRectF rect)
{
OriginalRect = rect;
}
public override SRectF getRect()
{
return CurrentRect;
}
public override void StartAnimation()
{
base.StartAnimation();
CurrentRect = OriginalRect;
}
public override void Update()
{
//Update CurrentRect
if (!ResetMode)
{
CLog.LogError((CurrentRect.X + ((FinalRect.X - CurrentRect.X) / Speed * Timer.ElapsedMilliseconds)).ToString("#.#####"));
CurrentRect.X = CurrentRect.X + ((FinalRect.X - CurrentRect.X) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.Y = CurrentRect.Y + ((FinalRect.Y - CurrentRect.Y) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.H = CurrentRect.H + ((FinalRect.H - CurrentRect.H) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.W = CurrentRect.W + ((FinalRect.W - CurrentRect.W) / Speed * Timer.ElapsedMilliseconds);
}
else
{
CurrentRect.X = CurrentRect.X + ((OriginalRect.X - CurrentRect.X) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.Y = CurrentRect.Y + ((OriginalRect.Y - CurrentRect.Y) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.H = CurrentRect.H + ((OriginalRect.H - CurrentRect.H) / Speed * Timer.ElapsedMilliseconds);
CurrentRect.W = CurrentRect.W + ((OriginalRect.W - CurrentRect.W) / Speed * Timer.ElapsedMilliseconds);
}
if (CurrentRect.X == FinalRect.X && CurrentRect.Y == FinalRect.Y && CurrentRect.H == FinalRect.H && CurrentRect.W == FinalRect.W)
{
switch (Repeat)
{
case EAnimationRepeat.Repeat:
StopAnimation();
CurrentRect = OriginalRect;
StartAnimation();
break;
case EAnimationRepeat.RepeatWithReset:
ResetAnimation();
break;
case EAnimationRepeat.Reset:
if (!ResetMode)
ResetAnimation();
else
StopAnimation();
break;
case EAnimationRepeat.None:
StopAnimation();
break;
}
}
}
}
}
+30
View File
@@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.Xml;
using System.Xml.XPath;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
namespace Vocaluxe.Menu.Animations
{
interface IAnimation
{
void Init();
bool LoadAnimation(string item, XPathNavigator navigator);
bool SaveAnimation(XmlWriter writer);
void setRect(SRectF rect);
SRectF getRect();
void setColor(SColorF color);
SColorF getColor();
void StartAnimation();
void StopAnimation();
void ResetAnimation();
bool AnimationActive();
void Update();
}
}
+5
View File
@@ -38,6 +38,11 @@ namespace Vocaluxe.Menu
public SColorF Color;
public string GetThemeName()
{
return _Theme.Name;
}
#region Constructors
public CBackground()
{
+37 -5
View File
@@ -30,7 +30,9 @@ namespace Vocaluxe.Menu
public SColorF Color;
public SColorF SColor;
public bool SelText;
public CText Text;
public CText SText;
public bool Reflection;
public float ReflectionSpace;
@@ -53,6 +55,11 @@ namespace Vocaluxe.Menu
}
public bool Visible;
public string GetThemeName()
{
return _Theme.Name;
}
public CButton()
{
_Theme = new SThemeButton();
@@ -60,7 +67,9 @@ namespace Vocaluxe.Menu
Color = new SColorF();
SColor = new SColorF();
SelText = false;
Text = new CText();
SText = new CText();
Selected = false;
Visible = true;
@@ -113,6 +122,13 @@ namespace Vocaluxe.Menu
_ThemeLoaded &= Text.LoadTheme(item, "Text", navigator, SkinIndex, true);
Text.Z = Rect.Z;
if (CHelper.ItemExistsInXML(item + "/SText", navigator))
{
SelText = true;
_ThemeLoaded &= SText.LoadTheme(item, "SText", navigator, SkinIndex, true);
SText.Z = Rect.Z;
}
//Reflections
if (CHelper.ItemExistsInXML(item + "/Reflection", navigator))
@@ -189,6 +205,8 @@ namespace Vocaluxe.Menu
}
Text.SaveTheme(writer);
if (SelText)
SText.SaveTheme(writer);
writer.WriteComment("<Reflection> If exists:");
writer.WriteComment(" <Space>: Reflection Space");
@@ -240,28 +258,42 @@ namespace Vocaluxe.Menu
{
texture = CTheme.GetSkinTexture(_Theme.TextureName);
CDraw.DrawTexture(texture, Rect, Color);
Text.DrawRelative(Rect.X, Rect.Y);
if (Reflection)
{
CDraw.DrawTextureReflection(texture, Rect, Color, Rect, ReflectionSpace, ReflectionHeight);
Text.DrawRelative(Rect.X, Rect.Y, ReflectionSpace, ReflectionHeight, Rect.H);
}
}
else
else if(!SelText)
{
texture = CTheme.GetSkinTexture(_Theme.STextureName);
CDraw.DrawTexture(texture, Rect, SColor);
Text.DrawRelative(Rect.X, Rect.Y);
if (Reflection)
{
CDraw.DrawTextureReflection(texture, Rect, SColor, Rect, ReflectionSpace, ReflectionHeight);
Text.DrawRelative(Rect.X, Rect.Y, ReflectionSpace, ReflectionHeight, Rect.H);
}
}
Text.DrawRelative(Rect.X, Rect.Y);
if (Reflection)
else if(SelText)
{
Text.DrawRelative(Rect.X, Rect.Y, ReflectionSpace, ReflectionHeight, Rect.H);
texture = CTheme.GetSkinTexture(_Theme.STextureName);
CDraw.DrawTexture(texture, Rect, SColor);
SText.DrawRelative(Rect.X, Rect.Y);
if (Reflection)
{
CDraw.DrawTextureReflection(texture, Rect, SColor, Rect, ReflectionSpace, ReflectionHeight);
SText.DrawRelative(Rect.X, Rect.Y, ReflectionSpace, ReflectionHeight, Rect.H);
}
}
}
public void ProcessMouseMove(int x, int y)
{
Selected = CHelper.IsInBounds(Rect, x, y);
}
public void UnloadTextures()
{
Text.UnloadTextures();
+310
View File
@@ -0,0 +1,310 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Text;
using System.Xml;
using System.Xml.XPath;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
namespace Vocaluxe.Menu
{
enum EEqualizerStyle
{
Collums
}
struct SThemeEqualizer
{
public string Name;
public string ColorName;
public string MaxColorName;
public string TextureName;
public int NumBars;
public EEqualizerStyle Style;
public EOffOn DrawNegative;
}
class CEqualizer : IMenuElement
{
private SThemeEqualizer _Theme;
private bool _ThemeLoaded;
public SRectF Rect;
public SColorF Color;
public SColorF MaxColor;
public float Space;
public bool Reflection;
public float ReflectionSpace;
public float ReflectionHeight;
public bool Selected;
public bool Visible;
public bool ScreenHandles;
public string GetThemeName()
{
return _Theme.Name;
}
private float[] _Bars;
public CEqualizer()
{
_Theme = new SThemeEqualizer();
_ThemeLoaded = false;
Rect = new SRectF();
Color = new SColorF();
MaxColor = new SColorF();
Selected = false;
Visible = true;
ScreenHandles = false;
Reflection = false;
ReflectionSpace = 0f;
ReflectionHeight = 0f;
}
public bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex)
{
string item = XmlPath + "/" + ElementName;
_ThemeLoaded = true;
_ThemeLoaded &= CHelper.GetValueFromXML(item + "/Skin", navigator, ref _Theme.TextureName, String.Empty);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/X", navigator, ref Rect.X);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Y", navigator, ref Rect.Y);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Z", navigator, ref Rect.Z);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/W", navigator, ref Rect.W);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/H", navigator, ref Rect.H);
_ThemeLoaded &= CHelper.TryGetIntValueFromXML(item + "/NumBars", navigator, ref _Theme.NumBars);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Space", navigator, ref Space);
_ThemeLoaded &= CHelper.TryGetEnumValueFromXML<EEqualizerStyle>(item + "/Style", navigator, ref _Theme.Style);
_ThemeLoaded &= CHelper.TryGetEnumValueFromXML<EOffOn>(item + "/DrawNegative", navigator, ref _Theme.DrawNegative);
if (CHelper.GetValueFromXML(item + "/Color", navigator, ref _Theme.ColorName, String.Empty))
{
_ThemeLoaded &= CTheme.GetColor(_Theme.ColorName, SkinIndex, ref Color);
}
else
{
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/R", navigator, ref Color.R);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/G", navigator, ref Color.G);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/B", navigator, ref Color.B);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/A", navigator, ref Color.A);
}
if (CHelper.GetValueFromXML(item + "/MaxColor", navigator, ref _Theme.MaxColorName, String.Empty))
{
_ThemeLoaded &= CTheme.GetColor(_Theme.ColorName, SkinIndex, ref Color);
}
else
{
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/MaxR", navigator, ref MaxColor.R);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/MaxG", navigator, ref MaxColor.G);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/MaxB", navigator, ref MaxColor.B);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/MaxA", navigator, ref MaxColor.A);
}
//Reflection
if (CHelper.ItemExistsInXML(item + "/Reflection", navigator))
{
Reflection = true;
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Reflection/Space", navigator, ref ReflectionSpace);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Reflection/Height", navigator, ref ReflectionHeight);
}
else
Reflection = false;
if (_ThemeLoaded)
{
_Theme.Name = ElementName;
_Bars = new float[_Theme.NumBars];
for (int i = 0; i < _Bars.Length; i++)
{
_Bars[i] = 0f;
}
LoadTextures();
}
return _ThemeLoaded;
}
public bool SaveTheme(XmlWriter writer)
{
if (_ThemeLoaded)
{
writer.WriteStartElement(_Theme.Name);
writer.WriteComment("<Skin>: Texture name");
writer.WriteElementString("Skin", _Theme.TextureName);
writer.WriteComment("<X>, <Y>, <Z>, <W>, <H>: Equalizer position, width and height");
writer.WriteElementString("X", Rect.X.ToString("#0"));
writer.WriteElementString("Y", Rect.Y.ToString("#0"));
writer.WriteElementString("Z", Rect.Z.ToString("#0.00"));
writer.WriteElementString("W", Rect.W.ToString("#0"));
writer.WriteElementString("H", Rect.H.ToString("#0"));
writer.WriteComment("<NumBars>: Number of equalizer-elements.");
writer.WriteElementString("NumBars", _Theme.NumBars.ToString("#0"));
writer.WriteComment("<Space>: Space between equalizer-elements.");
writer.WriteElementString("Space", Space.ToString("#0.00"));
writer.WriteComment("<Style>: Style of equalizer-elements: " + CConfig.ListStrings(Enum.GetNames(typeof(EEqualizerStyle))));
writer.WriteElementString("Style", Enum.GetName(typeof(EEqualizerStyle), _Theme.Style));
writer.WriteComment("<DrawNegative>: Draw negative values: " + CConfig.ListStrings(Enum.GetNames(typeof(EOffOn))));
writer.WriteElementString("DrawNegative", Enum.GetName(typeof(EOffOn), _Theme.DrawNegative));
writer.WriteComment("<Color>: Equalizer color from ColorScheme (high priority)");
writer.WriteComment("or <R>, <G>, <B>, <A> (lower priority)");
if (_Theme.ColorName != String.Empty)
{
writer.WriteElementString("Color", _Theme.ColorName);
}
else
{
writer.WriteElementString("R", Color.R.ToString("#0.00"));
writer.WriteElementString("G", Color.G.ToString("#0.00"));
writer.WriteElementString("B", Color.B.ToString("#0.00"));
writer.WriteElementString("A", Color.A.ToString("#0.00"));
}
writer.WriteComment("<MaxColor>: Equalizer color for maximal volume from ColorScheme (high priority)");
writer.WriteComment("or <MaxR>, <MaxG>, <MaxB>, <MaxA> (lower priority)");
if (_Theme.ColorName != String.Empty)
{
writer.WriteElementString("MaxColor", _Theme.ColorName);
}
else
{
writer.WriteElementString("MaxR", Color.R.ToString("#0.00"));
writer.WriteElementString("MaxG", Color.G.ToString("#0.00"));
writer.WriteElementString("MaxB", Color.B.ToString("#0.00"));
writer.WriteElementString("MaxA", Color.A.ToString("#0.00"));
}
writer.WriteComment("<Reflection> If exists:");
writer.WriteComment(" <Space>: Reflection Space");
writer.WriteComment(" <Height>: Reflection Height");
if (Reflection)
{
writer.WriteStartElement("Reflection");
writer.WriteElementString("Space", ReflectionSpace.ToString("#0"));
writer.WriteElementString("Height", ReflectionHeight.ToString("#0"));
writer.WriteEndElement();
}
writer.WriteEndElement();
return true;
}
return false;
}
public void Update(float[] weights)
{
if (weights == null || weights.Length == 0 || _Bars == null)
return;
for (int i = 0; i < _Bars.Length; i++)
{
if (weights.Length > i){
_Bars[i] = 1f - weights[i];
if (_Theme.DrawNegative == EOffOn.TR_CONFIG_OFF && weights[i] < 0)
_Bars[i] = (1f + weights[i]);
}
else
_Bars[i] = 0f;
}
}
public void Reset()
{
if (_Bars == null || _Bars.Length == 0)
return;
for (int i = 0; i < _Bars.Length; i++)
{
_Bars[i] = 0f;
}
}
public void Draw()
{
if (_Bars == null)
return;
float dx = (Rect.W ) / _Bars.Length;
int max = _Bars.Length - 1;
float maxB = _Bars[max];
for (int i = 0; i < _Bars.Length - 1; i++)
{
if (_Bars[i] > maxB)
{
maxB = _Bars[i];
max = i;
}
}
for (int i = 0; i < _Bars.Length; i++)
{
SRectF bar = new SRectF(Rect.X + dx * i, Rect.Y + Rect.H - _Bars[i] * Rect.H, dx - Space, _Bars[i] * Rect.H, Rect.Z);
SColorF color = Color;
if (i == max)
{
color = MaxColor;
}
CDraw.DrawColor(color, bar);
if (Reflection)
CDraw.DrawColorReflection(color, bar, ReflectionSpace, ReflectionHeight);
}
}
public void UnloadTextures()
{
}
public void LoadTextures()
{
if (_Theme.ColorName != String.Empty)
Color = CTheme.GetColor(_Theme.ColorName);
if (_Theme.MaxColorName != String.Empty)
MaxColor = CTheme.GetColor(_Theme.MaxColorName);
}
public void ReloadTextures()
{
UnloadTextures();
LoadTextures();
}
#region ThemeEdit
public void MoveElement(int stepX, int stepY)
{
Rect.X += stepX;
Rect.Y += stepY;
}
public void ResizeElement(int stepW, int stepH)
{
Rect.W += stepW;
if (Rect.W <= 0)
Rect.W = 1;
Rect.H += stepH;
if (Rect.H <= 0)
Rect.H = 1;
}
#endregion ThemeEdit
}
}
+2 -2
View File
@@ -464,7 +464,7 @@ namespace Vocaluxe.Menu
if (PopupPlayerControlAllowed && KeyEvent.Key == Keys.Tab)
{
if (_CurrentPopupScreen == EPopupScreens.NoPopup)
if (_CurrentPopupScreen == EPopupScreens.NoPopup && CConfig.BackgroundMusic == EOffOn.TR_CONFIG_ON)
ShowPopup(EPopupScreens.PopupPlayerControl);
else
HidePopup(EPopupScreens.PopupPlayerControl);
@@ -509,7 +509,7 @@ namespace Vocaluxe.Menu
bool isOverPopupPlayerControl = CHelper.IsInBounds(_PopupScreens[(int)EPopupScreens.PopupPlayerControl].ScreenArea, MouseEvent);
if (PopupPlayerControlAllowed && isOverPopupPlayerControl)
{
if (_CurrentPopupScreen == EPopupScreens.NoPopup)
if (_CurrentPopupScreen == EPopupScreens.NoPopup && CConfig.BackgroundMusic == EOffOn.TR_CONFIG_ON)
ShowPopup(EPopupScreens.PopupPlayerControl);
}
+6 -2
View File
@@ -14,7 +14,9 @@ namespace Vocaluxe.Menu
TSongMenu,
TLyric,
TSingNote,
TNameSelection
TNameSelection,
TEqualizer,
TPlaylist
}
class CInteraction
@@ -42,7 +44,9 @@ namespace Vocaluxe.Menu
_Type == EType.TStatic ||
_Type == EType.TSongMenu ||
_Type == EType.TLyric ||
_Type == EType.TSingNote);
_Type == EType.TSingNote ||
_Type == EType.TEqualizer ||
_Type == EType.TPlaylist);
}
}
+5
View File
@@ -47,6 +47,11 @@ namespace Vocaluxe.Menu
private float _Alpha = 1f;
public string GetThemeName()
{
return _Theme.Name;
}
public SRectF Rect
{
get { return new SRectF(_X, _Y, _MaxW, _H, _Z); }
+260 -15
View File
@@ -36,6 +36,8 @@ namespace Vocaluxe.Menu
private List<CLyric> _Lyrics;
private List<CSingNotes> _SingNotes;
private List<CNameSelection> _NameSelections;
private List<CEqualizer> _Equalizers;
private List<CPlaylist> _Playlists;
private Hashtable _htBackgrounds;
private Hashtable _htStatics;
@@ -46,6 +48,8 @@ namespace Vocaluxe.Menu
private Hashtable _htSelectSlides;
private Hashtable _htSingNotes;
private Hashtable _htNameSelections;
private Hashtable _htEqualizers;
private Hashtable _htPlaylists;
private int _PrevMouseX;
@@ -67,6 +71,8 @@ namespace Vocaluxe.Menu
protected string[] _ThemeSelectSlides;
protected string[] _ThemeSingNotes;
protected string[] _ThemeNameSelections;
protected string[] _ThemeEqualizers;
protected string[] _ThemePlaylists;
protected SRectF _ScreenArea;
@@ -99,6 +105,8 @@ namespace Vocaluxe.Menu
_Lyrics = new List<CLyric>();
_SingNotes = new List<CSingNotes>();
_NameSelections = new List<CNameSelection>();
_Equalizers = new List<CEqualizer>();
_Playlists = new List<CPlaylist>();
_htBackgrounds = new Hashtable();
_htStatics = new Hashtable();
@@ -109,6 +117,8 @@ namespace Vocaluxe.Menu
_htSelectSlides = new Hashtable();
_htSingNotes = new Hashtable();
_htNameSelections = new Hashtable();
_htEqualizers = new Hashtable();
_htPlaylists = new Hashtable();
_PrevMouseX = 0;
_PrevMouseY = 0;
@@ -129,6 +139,8 @@ namespace Vocaluxe.Menu
_ThemeSelectSlides = null;
_ThemeSingNotes = null;
_ThemeNameSelections = null;
_ThemeEqualizers = null;
_ThemePlaylists = null;
}
#region ThemeHandler
@@ -311,6 +323,38 @@ namespace Vocaluxe.Menu
}
}
}
if (_ThemeEqualizers != null)
{
for (int i = 0; i < _ThemeEqualizers.Length; i++)
{
CEqualizer eq = new CEqualizer();
if (eq.LoadTheme("//root/" + _ThemeName, _ThemeEqualizers[i], navigator, SkinIndex))
{
_htEqualizers.Add(_ThemeEqualizers[i], AddEqualizer(eq));
}
else
{
CLog.LogError("Can't load equalizer \"" + _ThemeEqualizers[i] + "\" in screen " + _ThemeName);
}
}
}
if (_ThemePlaylists != null)
{
for (int i = 0; i < _ThemePlaylists.Length; i++)
{
CPlaylist pls = new CPlaylist();
if (pls.LoadTheme("//root/" + _ThemeName, _ThemePlaylists[i], navigator, SkinIndex))
{
_htPlaylists.Add(_ThemePlaylists[i], AddPlaylist(pls));
}
else
{
CLog.LogError("Can't load Playlist \"" + _ThemePlaylists[i] + "\" in screen " + _ThemeName);
}
}
}
}
else
{
@@ -386,6 +430,18 @@ namespace Vocaluxe.Menu
_NameSelections[i].SaveTheme(writer);
}
//Equalizers
for (int i = 0; i < _Equalizers.Count; i++)
{
_Equalizers[i].SaveTheme(writer);
}
//Playlists
for (int i = 0; i < _Playlists.Count; i++)
{
_Playlists[i].SaveTheme(writer);
}
writer.WriteEndElement();
// End of File
@@ -442,6 +498,16 @@ namespace Vocaluxe.Menu
{
ns.ReloadTextures();
}
foreach (CEqualizer eq in _Equalizers)
{
eq.ReloadTextures();
}
foreach (CPlaylist pls in _Playlists)
{
pls.ReloadTextures();
}
}
public virtual void UnloadTextures()
@@ -490,7 +556,15 @@ namespace Vocaluxe.Menu
{
ns.UnloadTextures();
}
foreach (CPlaylist pls in _Playlists)
{
pls.UnloadTextures();
}
foreach (CEqualizer eq in _Equalizers)
{
eq.UnloadTextures();
}
}
@@ -547,6 +621,16 @@ namespace Vocaluxe.Menu
{
return _NameSelections;
}
public List<CEqualizer> GetEqualizers()
{
return _Equalizers;
}
public List<CPlaylist> GetPlaylists()
{
return _Playlists;
}
#endregion GetLists
#region ElementHandler
@@ -622,6 +706,22 @@ namespace Vocaluxe.Menu
return _NameSelections.ToArray();
}
}
public CEqualizer[] Equalizers
{
get
{
return _Equalizers.ToArray();
}
}
public CPlaylist[] Playlists
{
get
{
return _Playlists.ToArray();
}
}
#endregion Get Arrays
#region Hashtables
@@ -741,6 +841,32 @@ namespace Vocaluxe.Menu
throw;
}
}
public int htEqualizer(string key)
{
try
{
return (int)_htEqualizers[key];
}
catch (Exception)
{
CLog.LogError("Can't find Equalizer Element \"" + key + "\" in Screen " + _ThemeName);
throw;
}
}
public int htPlaylists(string key)
{
try
{
return (int)_htPlaylists[key];
}
catch (Exception)
{
CLog.LogError("Can't find Playlist Element \"" + key + "\" in Screen " + _ThemeName);
throw;
}
}
#endregion Hashtables
#endregion ElementHandler
@@ -752,22 +878,22 @@ namespace Vocaluxe.Menu
if (KeyEvent.Key == Keys.Left)
{
if (_Interactions.Count > 0 && _Interactions[_Selection].Type == EType.TSelectSlide && KeyEvent.Mod != Modifier.Shift)
PrevElement();
KeyEvent.Handled = PrevElement();
else
_NextInteraction(KeyEvent);
KeyEvent.Handled = _NextInteraction(KeyEvent);
}
if (KeyEvent.Key == Keys.Right)
{
if (_Interactions.Count > 0 && _Interactions[_Selection].Type == EType.TSelectSlide && KeyEvent.Mod != Modifier.Shift)
NextElement();
KeyEvent.Handled = NextElement();
else
_NextInteraction(KeyEvent);
KeyEvent.Handled = _NextInteraction(KeyEvent);
}
if (KeyEvent.Key == Keys.Up || KeyEvent.Key == Keys.Down)
{
_NextInteraction(KeyEvent);
KeyEvent.Handled = _NextInteraction(KeyEvent);
}
}
else
@@ -999,7 +1125,9 @@ namespace Vocaluxe.Menu
_Interactions[i].Type == EType.TStatic ||
_Interactions[i].Type == EType.TNameSelection ||
_Interactions[i].Type == EType.TText ||
_Interactions[i].Type == EType.TSongMenu))
_Interactions[i].Type == EType.TSongMenu ||
_Interactions[i].Type == EType.TEqualizer ||
_Interactions[i].Type == EType.TPlaylist))
{
ZSort zs = new ZSort();
zs.ID = i;
@@ -1085,6 +1213,20 @@ namespace Vocaluxe.Menu
_AddInteraction(_NameSelections.Count - 1, EType.TNameSelection);
return _NameSelections.Count - 1;
}
public int AddEqualizer(CEqualizer eq)
{
_Equalizers.Add(eq);
_AddInteraction(_Equalizers.Count - 1, EType.TEqualizer);
return _Equalizers.Count - 1;
}
public int AddPlaylist(CPlaylist pls)
{
_Playlists.Add(pls);
_AddInteraction(_Playlists.Count - 1, EType.TPlaylist);
return _Playlists.Count - 1;
}
#endregion Elements
#region InteractionHandling
@@ -1100,16 +1242,28 @@ namespace Vocaluxe.Menu
_PrevInteraction();
}
public void NextElement()
/// <summary>
/// Selects the next element in a menu interaction.
/// </summary>
/// <returns>True if the next element is selected. False if either there is no next element or the interaction does not provide such a method.</returns>
public bool NextElement()
{
if (_Interactions.Count > 0)
_NextElement();
return _NextElement();
return false;
}
public void PrevElement()
/// <summary>
/// Selects the previous element in a menu interaction.
/// </summary>
/// <returns>True if the previous element is selected. False if either there is no next element or the interaction does not provide such a method.</returns>
public bool PrevElement()
{
if (_Interactions.Count > 0)
_PrevElement();
return _PrevElement();
return false;
}
public bool SetInteractionToButton(CButton button)
@@ -1233,6 +1387,14 @@ namespace Vocaluxe.Menu
if (CHelper.IsInBounds(_NameSelections[interact.Num].Rect, x, y))
return true;
break;
case EType.TEqualizer:
if (CHelper.IsInBounds(_Equalizers[interact.Num].Rect, x, y))
return true;
break;
case EType.TPlaylist:
if (CHelper.IsInBounds(_Playlists[interact.Num].Rect, x, y))
return true;
break;
}
return false;
}
@@ -1255,6 +1417,10 @@ namespace Vocaluxe.Menu
return _Lyrics[interact.Num].Rect.Z;
case EType.TNameSelection:
return _NameSelections[interact.Num].Rect.Z;
case EType.TEqualizer:
return _Equalizers[interact.Num].Rect.Z;
case EType.TPlaylist:
return _Playlists[interact.Num].Rect.Z;
}
return CSettings.zFar;
}
@@ -1283,6 +1449,12 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
return _NameSelections[_Interactions[interaction].Num].Rect.Z;
case EType.TEqualizer:
return _Equalizers[_Interactions[interaction].Num].Rect.Z;
case EType.TPlaylist:
return _Playlists[_Interactions[interaction].Num].Rect.Z;
}
return CSettings.zFar;
@@ -1342,7 +1514,12 @@ namespace Vocaluxe.Menu
_SetSelected();
}
private void _NextInteraction(KeyEvent Key)
/// <summary>
/// Selects the next best interaction in a menu.
/// </summary>
/// <param name="Key"></param>
/// <returns></returns>
private bool _NextInteraction(KeyEvent Key)
{
KeyEvent[] Directions = new KeyEvent[4];
float[] Distances = new float[4];
@@ -1408,8 +1585,11 @@ namespace Vocaluxe.Menu
_Selection = element;
_SetSelected();
_SetHighlighted(_Selection);
return true;
}
}
return false;
}
private int _GetNextElement(KeyEvent Key, out float Distance, out int Stage)
@@ -1568,16 +1748,30 @@ namespace Vocaluxe.Menu
return distance;
}
private void _NextElement()
/// <summary>
/// Selects the next element in a menu interaction.
/// </summary>
/// <returns>True if the next element is selected. False if either there is no next element or the interaction does not provide such a method.</returns>
private bool _NextElement()
{
if (_Interactions[_Selection].Type == EType.TSelectSlide)
_SelectSlides[_Interactions[_Selection].Num].NextValue();
return _SelectSlides[_Interactions[_Selection].Num].NextValue();
return false;
}
private void _PrevElement()
/// <summary>
/// Selects the previous element in a menu interaction.
/// </summary>
/// <returns>
/// True if the previous element is selected. False if either there is no previous element or the interaction does not provide such a method.
/// </returns>
private bool _PrevElement()
{
if (_Interactions[_Selection].Type == EType.TSelectSlide)
_SelectSlides[_Interactions[_Selection].Num].PrevValue();
return _SelectSlides[_Interactions[_Selection].Num].PrevValue();
return false;
}
private void _SetSelected()
@@ -1605,6 +1799,12 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
_NameSelections[_Interactions[_Selection].Num].Selected = true;
break;
case EType.TEqualizer:
_Equalizers[_Interactions[_Selection].Num].Selected = true;
break;
case EType.TPlaylist:
_Playlists[_Interactions[_Selection].Num].Selected = true;
break;
}
}
@@ -1633,6 +1833,12 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
_NameSelections[_Interactions[_Selection].Num].Selected = false;
break;
case EType.TEqualizer:
_Equalizers[_Interactions[_Selection].Num].Selected = false;
break;
case EType.TPlaylist:
_Playlists[_Interactions[_Selection].Num].Selected = false;
break;
}
}
@@ -1664,6 +1870,9 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
//_NameSelections[_Interactions[selection].Num].Selected = true;
break;
case EType.TPlaylist:
//_Playlists[_Interactions[_Selection].Num].Selected = true;
break;
}
}
@@ -1695,6 +1904,9 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
//_NameSelections[_Interactions[selection].Num].Selected = false;
break;
case EType.TPlaylist:
//_Playlists[_Interactions[_Selection].Num].Selected = true;
break;
}
}
@@ -1744,6 +1956,12 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
return _NameSelections[_Interactions[interaction].Num].Visible;
case EType.TEqualizer:
return _Equalizers[_Interactions[interaction].Num].Visible;
case EType.TPlaylist:
return _Playlists[_Interactions[interaction].Num].Visible;
}
return false;
@@ -1774,6 +1992,12 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
return _NameSelections[_Interactions[interaction].Num].Rect;
case EType.TEqualizer:
return _Equalizers[_Interactions[interaction].Num].Rect;
case EType.TPlaylist:
return _Playlists[_Interactions[interaction].Num].Rect;
}
return Result;
@@ -1815,6 +2039,19 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
_NameSelections[_Interactions[interaction].Num].Draw();
break;
case EType.TEqualizer:
if (!_Equalizers[_Interactions[interaction].Num].ScreenHandles)
{
//TODO:
//Call Update-Method of Equalizer and give infos about bg-sound.
//_Equalizers[_Interactions[interaction].Num].Draw();
}
break;
case EType.TPlaylist:
_Playlists[_Interactions[interaction].Num].Draw();
break;
//TODO:
//case EType.TLyric:
@@ -1859,6 +2096,10 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
_NameSelections[_Interactions[_Selection].Num].MoveElement(stepX, stepY);
break;
case EType.TPlaylist:
_Playlists[_Interactions[_Selection].Num].MoveElement(stepX, stepY);
break;
}
}
}
@@ -1896,6 +2137,10 @@ namespace Vocaluxe.Menu
case EType.TNameSelection:
_NameSelections[_Interactions[_Selection].Num].ResizeElement(stepW, stepH);
break;
case EType.TPlaylist:
_Playlists[_Interactions[_Selection].Num].ResizeElement(stepW, stepH);
break;
}
}
}
+5
View File
@@ -49,6 +49,11 @@ namespace Vocaluxe.Menu
private SThemeNameSelection _Theme;
private bool _ThemeLoaded;
public string GetThemeName()
{
return _Theme.Name;
}
public bool Selected = false;
public bool Visible = true;
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+73 -5
View File
@@ -38,11 +38,16 @@ namespace Vocaluxe.Menu
public EStyle TextStyle;
}
class CSelectSlide : IMenuElement
class CSelectSlide : IMenuElement, ICloneable
{
private SThemeSelectSlide _Theme;
private bool _ThemeLoaded;
public string GetThemeName()
{
return _Theme.Name;
}
public SRectF Rect;
public SRectF RectArrowLeft;
public SRectF RectArrowRight;
@@ -112,6 +117,14 @@ namespace Vocaluxe.Menu
}
}
public int NumValues
{
get
{
return _ValueNames.Count;
}
}
private int _NumVisible = -1;
public int NumVisible
{
@@ -151,6 +164,56 @@ namespace Vocaluxe.Menu
_ValueNames = new List<string>();
}
public CSelectSlide(CSelectSlide slide)
{
_Theme = new SThemeSelectSlide();
_Theme.TextureArrowLeftName = slide._Theme.TextureArrowLeftName;
_Theme.TextureArrowRightName = slide._Theme.TextureArrowRightName;
_Theme.STextureName = slide._Theme.STextureName;
_Theme.STextureArrowLeftName = slide._Theme.STextureArrowLeftName;
_Theme.STextureArrowRightName = slide._Theme.STextureArrowRightName;
_Theme.HTextureName = slide._Theme.HTextureName;
_Theme.ColorName = slide._Theme.ColorName;
_Theme.SColorName = slide._Theme.SColorName;
_Theme.HColorName = slide._Theme.HColorName;
_Theme.ArrowColorName = slide._Theme.ArrowColorName;
_Theme.SArrowColorName = slide._Theme.SArrowColorName;
_Theme.TextColorName = slide._Theme.TextColorName;
_Theme.STextColorName = slide._Theme.STextColorName;
_Theme.TextFont = slide._Theme.TextFont;
_Theme.TextStyle = slide._Theme.TextStyle;
_ThemeLoaded = false;
Rect = new SRectF(slide.Rect);
RectArrowLeft = new SRectF(slide.RectArrowLeft);
RectArrowRight = new SRectF(slide.RectArrowRight);
Color = new SColorF(slide.Color);
SColor = new SColorF(slide.SColor);
ColorArrow = new SColorF(slide.ColorArrow);
SColorArrow = new SColorF(slide.SColorArrow);
TextColor = new SColorF(slide.TextColor);
STextColor = new SColorF(slide.STextColor);
TextH = slide.TextH;
MaxW = slide.MaxW;
_Selected = false;
_Textures = new List<STexture>();
_ValueIndexes = new List<int>();
_ValueNames = new List<string>();
_NumVisible = slide._NumVisible;
}
public bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex)
{
string item = XmlPath + "/" + ElementName;
@@ -581,14 +644,14 @@ namespace Vocaluxe.Menu
public void ProcessMouseMove(int x, int y)
{
_ArrowLeftSelected = CHelper.IsInBounds(RectArrowLeft, x, y);
_ArrowRightSelected = CHelper.IsInBounds(RectArrowRight, x, y);
_ArrowLeftSelected = CHelper.IsInBounds(RectArrowLeft, x, y) && _Selection > 0;
_ArrowRightSelected = CHelper.IsInBounds(RectArrowRight, x, y) && _Selection < _ValueNames.Count - 1;
}
public void ProcessMouseLBClick(int x, int y)
{
_ArrowLeftSelected = CHelper.IsInBounds(RectArrowLeft, x, y);
_ArrowRightSelected = CHelper.IsInBounds(RectArrowRight, x, y);
_ArrowLeftSelected = CHelper.IsInBounds(RectArrowLeft, x, y) && _Selection > 0;
_ArrowRightSelected = CHelper.IsInBounds(RectArrowRight, x, y) && _Selection < _ValueNames.Count - 1;
if (_ArrowLeftSelected)
PrevValue();
@@ -746,6 +809,11 @@ namespace Vocaluxe.Menu
LoadTextures();
}
public object Clone()
{
return base.MemberwiseClone();
}
#region ThemeEdit
public void MoveElement(int stepX, int stepY)
{
+5
View File
@@ -22,6 +22,11 @@ namespace Vocaluxe.Menu
private SThemeStatic _Theme;
private bool _ThemeLoaded;
public string GetThemeName()
{
return _Theme.Name;
}
private STexture _Texture;
public STexture Texture
{
+7 -1
View File
@@ -41,6 +41,12 @@ namespace Vocaluxe.Menu
{
private SThemeText _Theme;
private bool _ThemeLoaded;
public string GetThemeName()
{
return _Theme.Name;
}
private bool _ButtonText;
private bool _PositionNeedsUpdate = true;
@@ -538,7 +544,7 @@ namespace Vocaluxe.Menu
writer.WriteComment("<Font>: Text font name");
writer.WriteElementString("Font", Fon);
writer.WriteComment("<Text>: Text or translation tag");
writer.WriteComment("<Text>: Nothing or translation tag");
if (CLanguage.TranslationExists(_Theme.Text))
writer.WriteElementString("Text", _Theme.Text);
else
+1
View File
@@ -8,6 +8,7 @@ namespace Vocaluxe.Menu
{
interface IMenuElement
{
string GetThemeName();
bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex);
bool SaveTheme(XmlWriter writer);
+5
View File
@@ -75,6 +75,11 @@ namespace Vocaluxe.Menu.SingNotes
_ActID = 0;
}
public string GetThemeName()
{
return _Theme.Name;
}
public bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex)
{
string item = XmlPath + "/" + ElementName;
+15
View File
@@ -73,6 +73,16 @@ namespace Vocaluxe.Menu.SongMenu
_SongMenu.Draw();
}
public bool IsActive()
{
return _SongMenu.IsActive();
}
public void SetActive(bool Active)
{
_SongMenu.SetActive(Active);
}
public int GetSelectedSong()
{
return _SongMenu.GetSelectedSong();
@@ -131,6 +141,11 @@ namespace Vocaluxe.Menu.SongMenu
#endregion ISongMenu
#region IMenuElement
public string GetThemeName()
{
return _SongMenu.GetThemeName();
}
public bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex)
{
return _SongMenu.LoadTheme(XmlPath, ElementName, navigator, SkinIndex);
@@ -1,10 +1,48 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Vocaluxe.Base;
using Vocaluxe.Lib.Draw;
using Vocaluxe.Lib.Song;
namespace Vocaluxe.Menu.SongMenu
{
class CSongMenuDreidel : CSongMenuFramework
{
private SRectF _ScrollRect;
private CStatic _CoverBig;
private CStatic _TextBG;
private CStatic _DuetIcon;
private CStatic _VideoIcon;
private CText _Artist;
private CText _Title;
private CText _SongLength;
private int _actualSelection = -1;
public override int GetActualSelection()
{
return _actualSelection;
}
public override void Init()
{
base.Init();
/**
_CoverBig = _Theme.songMenuDreidel.StaticCoverBig;
_TextBG = _Theme.songMenuDreidel.StaticTextBG;
_DuetIcon = _Theme.songMenuDreidel.StaticDuetIcon;
_VideoIcon = _Theme.songMenuDreidel.StaticVideoIcon;
_Artist = _Theme.songMenuDreidel.TextArtist;
_Title = _Theme.songMenuDreidel.TextTitle;
_SongLength = _Theme.songMenuDreidel.TextSongLength;
**/
}
}
}
+19 -15
View File
@@ -115,6 +115,7 @@ namespace Vocaluxe.Menu.SongMenu
protected long _PendingTime = 500L;
private int _LockedInternal = -1;
protected bool _Active = false;
protected int _PreviewSelected //for preview only
{
@@ -217,6 +218,7 @@ namespace Vocaluxe.Menu.SongMenu
public void SetSelected(bool Selected)
{
_Selected = Selected;
SetActive(Selected);
}
public bool IsVisible()
@@ -247,6 +249,11 @@ namespace Vocaluxe.Menu.SongMenu
_ThemeLoaded = false;
}
public string GetThemeName()
{
return _Theme.Name;
}
public bool LoadTheme(string XmlPath, string ElementName, XPathNavigator navigator, int SkinIndex)
{
string item = XmlPath + "/" + ElementName;
@@ -258,12 +265,6 @@ namespace Vocaluxe.Menu.SongMenu
_ThemeLoaded &= CHelper.GetValueFromXML(item + "/VideoIcon", navigator, ref _Theme.VideoIconName, String.Empty);
_ThemeLoaded &= CHelper.GetValueFromXML(item + "/MedleyCalcIcon", navigator, ref _Theme.MedleyCalcIcon, String.Empty);
_ThemeLoaded &= CHelper.GetValueFromXML(item + "/MedleyTagIcon", navigator, ref _Theme.MedleyTagIcon, String.Empty);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/X", navigator, ref _Rect.X);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Y", navigator, ref _Rect.Y);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/Z", navigator, ref _Rect.Z);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/W", navigator, ref _Rect.W);
_ThemeLoaded &= CHelper.TryGetFloatValueFromXML(item + "/H", navigator, ref _Rect.H);
if (CHelper.GetValueFromXML(item + "/Color", navigator, ref _Theme.ColorName, String.Empty))
{
@@ -345,13 +346,6 @@ namespace Vocaluxe.Menu.SongMenu
writer.WriteComment("<MedleyTagIcon>: Texture name of medley tag (manuelly set) icon");
writer.WriteElementString("MedleyTagIcon", _Theme.MedleyTagIcon);
writer.WriteComment("<X>, <Y>, <Z>, <W>, <H>: SongMenu position, width and height");
writer.WriteElementString("X", _Rect.X.ToString("#0"));
writer.WriteElementString("Y", _Rect.Y.ToString("#0"));
writer.WriteElementString("Z", _Rect.Z.ToString("#0.00"));
writer.WriteElementString("W", _Rect.W.ToString("#0"));
writer.WriteElementString("H", _Rect.H.ToString("#0"));
writer.WriteComment("<Color>: Tile color from ColorScheme (high priority)");
writer.WriteComment("or <R>, <G>, <B>, <A> (lower priority)");
if (_Theme.ColorName != String.Empty)
@@ -383,10 +377,10 @@ namespace Vocaluxe.Menu.SongMenu
writer.WriteElementString("SpaceH", _Theme.songMenuTileBoard.spaceH.ToString("#0.00"));
writer.WriteComment("<NumWsmall>: Number of tiles horizontal in small-mode");
writer.WriteElementString("NumW", _Theme.songMenuTileBoard.numW.ToString());
writer.WriteElementString("NumWsmall", _Theme.songMenuTileBoard.numWsmall.ToString());
writer.WriteComment("<NumHsmall>: Number of tiles vertical in small-mode");
writer.WriteElementString("NumH", _Theme.songMenuTileBoard.numH.ToString());
writer.WriteElementString("NumHsmall", _Theme.songMenuTileBoard.numHsmall.ToString());
writer.WriteComment("<TileRectX>, <TileRectY>, <TileRectZ>, <TileRectW>, <TileRectH>: SongMenu position, width and height");
writer.WriteElementString("TileRectX", _Theme.songMenuTileBoard.TileRect.X.ToString("#0"));
@@ -516,6 +510,16 @@ namespace Vocaluxe.Menu.SongMenu
}
public virtual bool IsActive()
{
return _Active;
}
public virtual void SetActive(bool Active)
{
_Active = Active;
}
public virtual int GetSelectedSong()
{
return -1;
+16 -4
View File
@@ -51,6 +51,8 @@ namespace Vocaluxe.Menu.SongMenu
{
base.Init();
_Rect = _Theme.songMenuTileBoard.TileRect;
_NumW = _Theme.songMenuTileBoard.numW;
_NumH = _Theme.songMenuTileBoard.numH;
_SpaceW = _Theme.songMenuTileBoard.spaceW;
@@ -148,6 +150,11 @@ namespace Vocaluxe.Menu.SongMenu
}
else
{
if (!(KeyEvent.Key == Keys.Left || KeyEvent.Key == Keys.Right || KeyEvent.Key == Keys.Up || KeyEvent.Key == Keys.Down ||
KeyEvent.Key == Keys.Escape || KeyEvent.Key == Keys.Back || KeyEvent.Key == Keys.Enter ||
KeyEvent.Key == Keys.PageDown || KeyEvent.Key == Keys.PageUp))
return;
bool sel = false;
foreach (CStatic tile in _Tiles)
{
@@ -400,7 +407,7 @@ namespace Vocaluxe.Menu.SongMenu
{
foreach (CStatic tile in _Tiles)
{
if (tile.Selected)
if (tile.Selected && _Active)
tile.Draw(1.2f, tile.Rect.Z - 0.1f, true, false);
else
{
@@ -458,8 +465,8 @@ namespace Vocaluxe.Menu.SongMenu
}
}
_CoverBig.Draw(1f, true);
if (_vidtex.color.A < 1)
_CoverBig.Draw(1f, true);
_TextBG.Draw();
if (_vidtex.index != -1 && _Video != -1)
@@ -469,9 +476,12 @@ namespace Vocaluxe.Menu.SongMenu
CHelper.SetRect(bounds, ref rect, rect.Width / rect.Height, EAspect.Crop);
CDraw.DrawTexture(_vidtex, new SRectF(rect.X, rect.Y, rect.Width, rect.Height, _CoverBig.Rect.Z),
_vidtex.color, new SRectF(bounds.X, bounds.Y, bounds.Width, bounds.Height, 0f), false);
_vidtex.color, new SRectF(bounds.X, bounds.Y, bounds.Width, bounds.Height, 0f), false);
CDraw.DrawTextureReflection(_vidtex, new SRectF(rect.X, rect.Y, rect.Width, rect.Height, _CoverBig.Rect.Z),
_vidtex.color, new SRectF(bounds.X, bounds.Y, bounds.Width, bounds.Height, 0f), _CoverBig.ReflectionSpace, _CoverBig.ReflectionHeight);
}
_Artist.Draw();
_Title.Draw();
@@ -687,6 +697,7 @@ namespace Vocaluxe.Menu.SongMenu
}
}
_Rect = _Theme.songMenuTileBoard.TileRectSmall;
_ScrollRect = new SRectF(0, 0, CSettings.iRenderW, CSettings.iRenderH, _Theme.songMenuTileBoard.TileRectSmall.Z);
}
else
@@ -712,6 +723,7 @@ namespace Vocaluxe.Menu.SongMenu
}
}
_Rect = _Theme.songMenuTileBoard.TileRect;
_ScrollRect = new SRectF(0, 0, CSettings.iRenderW, CSettings.iRenderH, _Theme.songMenuTileBoard.TileRect.Z);
}
+3
View File
@@ -20,6 +20,9 @@ namespace Vocaluxe.Menu.SongMenu
int GetSelectedSong();
void SetSelectedSong(int VisibleSongNr);
bool IsActive();
void SetActive(bool Active);
int GetSelectedCategory();
int GetActualSelection();
@@ -218,7 +218,7 @@ namespace Vocaluxe.Screens
CGame.ClearSongs();
EGameMode gm = EGameMode.TR_GAMEMODE_NORMAL;
if (CSongs.VisibleSongs[SongNr].IsDuet)
if (CSongs.AllSongs[SongNr].IsDuet)
gm = EGameMode.TR_GAMEMODE_DUET;
CGame.AddSong(SongNr, gm);
+69 -57
View File
@@ -23,7 +23,7 @@ namespace Vocaluxe.Screens
private string[] TextScore;
private string[] TextDate;
private List<SScores> _Scores;
private List<SScores>[] _Scores;
private List<int> _NewEntryIDs;
private int _Round;
private int _Pos;
@@ -135,6 +135,17 @@ namespace Vocaluxe.Screens
CGraphics.FadeTo(EScreens.ScreenSong);
}
if (MouseEvent.MB)
{
int LastRound = _Round;
ChangeRound(1);
if (LastRound == _Round)
{
_Round = 0;
UpdateRound();
}
}
ChangePos(MouseEvent.Wheel);
return true;
}
@@ -143,7 +154,7 @@ namespace Vocaluxe.Screens
{
for (int p = 0; p < NumEntrys; p++)
{
if (_Pos + p < _Scores.Count)
if (_Pos + p < _Scores[_Round].Count)
{
Texts[htTexts(TextNumber[p])].Visible = true;
Texts[htTexts(TextName[p])].Visible = true;
@@ -152,16 +163,16 @@ namespace Vocaluxe.Screens
Texts[htTexts(TextNumber[p])].Text = (_Pos + p + 1).ToString();
string name = _Scores[_Pos + p].Name;
name += " [" + CLanguage.Translate(Enum.GetName(typeof(EGameDifficulty), _Scores[_Pos + p].Difficulty)) + "]";
string name = _Scores[_Round][_Pos + p].Name;
name += " [" + CLanguage.Translate(Enum.GetName(typeof(EGameDifficulty), _Scores[_Round][_Pos + p].Difficulty)) + "]";
if (_IsDuet)
name += " (P" + (_Scores[_Pos + p].LineNr + 1).ToString() + ")";
name += " (P" + (_Scores[_Round][_Pos + p].LineNr + 1).ToString() + ")";
Texts[htTexts(TextName[p])].Text = name;
Texts[htTexts(TextScore[p])].Text = _Scores[_Pos + p].Score.ToString("00000");
Texts[htTexts(TextDate[p])].Text = _Scores[_Pos + p].Date;
Texts[htTexts(TextScore[p])].Text = _Scores[_Round][_Pos + p].Score.ToString("00000");
Texts[htTexts(TextDate[p])].Text = _Scores[_Round][_Pos + p].Date;
if (isNewEntry(_Scores[_Pos + p].ID) == true)
if (isNewEntry(_Scores[_Round][_Pos + p].ID) == true)
{
Texts[htTexts(TextNumber[p])].Style = EStyle.BoldItalic;
Texts[htTexts(TextName[p])].Style = EStyle.BoldItalic;
@@ -185,10 +196,16 @@ namespace Vocaluxe.Screens
base.OnShow();
_Round = 0;
_Pos = 0;
_Scores = new List<SScores>();
CPoints _Points = CGame.GetPoints();
_Scores = new List<SScores>[_Points.NumRounds];
for (int i = 0; i < _Scores.Length; i++)
{
_Scores[i] = new List<SScores>();
}
_NewEntryIDs.Clear();
AddScoresToDB();
LoadScores();
UpdateRound();
UpdateGame();
}
@@ -239,39 +256,47 @@ namespace Vocaluxe.Screens
for (int round = 0; round < points.NumRounds; round++)
{
SPlayer player = points.GetPlayer(round, CGame.NumPlayer)[0];
CDataBase.LoadScore(ref _Scores, player);
CDataBase.LoadScore(ref _Scores[round], player);
}
}
if (round == _Round)
{
_IsDuet = false;
private void UpdateRound()
{
_IsDuet = false;
CPoints points = CGame.GetPoints();
SPlayer player = points.GetPlayer(_Round, CGame.NumPlayer)[0];
CSong song = CGame.GetSong(_Round+1);
if (song == null)
return;
CSong song = CSongs.GetSong(player.SongID);
Texts[htTexts(TextSongName)].Text = song.Artist + " - " + song.Title;
Texts[htTexts(TextSongName)].Text = song.Artist + " - " + song.Title;
if (points.NumRounds > 1)
{
Texts[htTexts(TextSongName)].Text += " (" + (_Round+1) + "/" + points.NumRounds + ")";
}
switch (CGame.GameMode)
{
case EGameMode.TR_GAMEMODE_NORMAL:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_NORMAL";
break;
switch (CGame.GetGameMode(_Round))
{
case EGameMode.TR_GAMEMODE_NORMAL:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_NORMAL";
break;
case EGameMode.TR_GAMEMODE_MEDLEY:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_MEDLEY";
break;
case EGameMode.TR_GAMEMODE_MEDLEY:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_MEDLEY";
break;
case EGameMode.TR_GAMEMODE_DUET:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_DUET";
_IsDuet = true;
break;
case EGameMode.TR_GAMEMODE_DUET:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_DUET";
_IsDuet = true;
break;
case EGameMode.TR_GAMEMODE_SHORTSONG:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_SHORTSONG";
break;
case EGameMode.TR_GAMEMODE_SHORTSONG:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_SHORTSONG";
break;
default:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_NORMAL";
break;
}
}
default:
Texts[htTexts(TextSongMode)].Text = "TR_GAMEMODE_NORMAL";
break;
}
}
@@ -279,7 +304,7 @@ namespace Vocaluxe.Screens
{
if (Num > 0)
{
if (_Pos + Num + NumEntrys < _Scores.Count)
if (_Pos + Num + NumEntrys < _Scores[_Round].Count)
_Pos += Num;
}
if (Num < 0)
@@ -292,27 +317,14 @@ namespace Vocaluxe.Screens
private void ChangeRound(int Num)
{
CPoints points = CGame.GetPoints();
if (points.NumRounds < 2)
return;
_Round += Num;
if (Num > 0)
{
if (_Round >= points.NumRounds)
_Round = 0;
LoadScores();
}
if (Num < 0)
{
if (_Round < 0)
_Round = points.NumRounds - 1;
LoadScores();
}
CPoints _Points = CGame.GetPoints();
if (_Round + Num < _Points.NumRounds && _Round + Num > -1)
_Round += Num;
else if (_Round + Num >= _Points.NumRounds)
_Round = _Points.NumRounds - 1;
else if (_Round + Num < 0)
_Round = 0;
UpdateRound();
}
}
}
+120 -9
View File
@@ -12,7 +12,7 @@ namespace Vocaluxe.Screens
class CScreenNames : CMenu
{
// Version number for theme files. Increment it, if you've changed something on the theme files!
const int ScreenVersion = 2;
const int ScreenVersion = 3;
private CStatic chooseAvatarStatic;
private int OldMouseX;
@@ -29,10 +29,13 @@ namespace Vocaluxe.Screens
private readonly string[] StaticPlayer = new string[] { "StaticPlayer1", "StaticPlayer2", "StaticPlayer3", "StaticPlayer4", "StaticPlayer5", "StaticPlayer6" };
private readonly string[] StaticPlayerAvatar = new string[] { "StaticPlayerAvatar1", "StaticPlayerAvatar2", "StaticPlayerAvatar3", "StaticPlayerAvatar4", "StaticPlayerAvatar5", "StaticPlayerAvatar6" };
private readonly string[] TextPlayer = new string[] { "TextPlayer1", "TextPlayer2", "TextPlayer3", "TextPlayer4", "TextPlayer5", "TextPlayer6" };
private readonly string[] EqualizerPlayer = new string[] { "EqualizerPlayer1", "EqualizerPlayer2", "EqualizerPlayer3", "EqualizerPlayer4", "EqualizerPlayer5", "EqualizerPlayer6" };
private readonly string[] SelectSlideDuetPlayer = new string[] { "SelectSlideDuetPlayer1", "SelectSlideDuetPlayer2", "SelectSlideDuetPlayer3", "SelectSlideDuetPlayer4", "SelectSlideDuetPlayer5", "SelectSlideDuetPlayer6" };
private STexture[] OriginalPlayerAvatarTextures = new STexture[CSettings.MaxNumPlayer];
private bool selectingMouseActive = false;
private bool selectingKeyboardActive = false;
private bool selectingKeyboardUnendless = false;
private int selectingKeyboardPlayerNr = 0;
private int SelectedPlayerNr;
@@ -63,8 +66,9 @@ namespace Vocaluxe.Screens
_ThemeStatics = statics.ToArray();
List<string> texts = new List<string>();
_ThemeSelectSlides = new string[] { SelectSlidePlayerNumber };
texts.Add(SelectSlidePlayerNumber);
texts.AddRange(SelectSlideDuetPlayer);
_ThemeSelectSlides = texts.ToArray();
texts.Clear();
texts.Add(TextWarningMics);
@@ -84,6 +88,10 @@ namespace Vocaluxe.Screens
texts.Add(NameSelection);
_ThemeNameSelections = texts.ToArray();
texts.Clear();
texts.AddRange(EqualizerPlayer);
_ThemeEqualizers = texts.ToArray();
chooseAvatarStatic = new CStatic();
chooseAvatarStatic.Visible = false;
}
@@ -102,6 +110,11 @@ namespace Vocaluxe.Screens
{
OriginalPlayerAvatarTextures[i] = Statics[htStatics(StaticPlayerAvatar[i])].Texture;
}
for (int i = 1; i <= CSettings.MaxNumPlayer; i++)
{
Equalizers[htEqualizer("EqualizerPlayer" + i)].ScreenHandles = true;
}
}
public override bool HandleInput(KeyEvent KeyEvent)
@@ -127,6 +140,22 @@ namespace Vocaluxe.Screens
NameSelections[htNameSelections(NameSelection)].UpdateList();
}
break;
case Keys.P:
if (!selectingKeyboardActive)
{
selectingKeyboardPlayerNr = 1;
selectingKeyboardUnendless = true;
}
else
{
if (selectingKeyboardPlayerNr + 1 <= CGame.NumPlayer)
selectingKeyboardPlayerNr++;
else
selectingKeyboardPlayerNr = 1;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, selectingKeyboardPlayerNr);
}
break;
}
//Check if selecting with keyboard is active
if (selectingKeyboardActive)
@@ -156,10 +185,29 @@ namespace Vocaluxe.Screens
NameSelections[htNameSelections(NameSelection)].UpdateList();
SetInteractionToButton(Buttons[htButtons(ButtonStart)]);
}
//Reset all values
selectingKeyboardPlayerNr = 0;
selectingKeyboardActive = false;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(false, -1);
//Started selecting with 'P'
if (selectingKeyboardUnendless)
{
if (selectingKeyboardPlayerNr == CGame.NumPlayer)
{
//Reset all values
selectingKeyboardPlayerNr = 0;
selectingKeyboardActive = false;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(false, -1);
}
else
{
selectingKeyboardPlayerNr++;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, selectingKeyboardPlayerNr);
}
}
else
{
//Reset all values
selectingKeyboardPlayerNr = 0;
selectingKeyboardActive = false;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(false, -1);
}
break;
case Keys.D1:
@@ -176,6 +224,7 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 1;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 1);
}
selectingKeyboardUnendless = false;
break;
case Keys.D2:
case Keys.NumPad2:
@@ -191,6 +240,7 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 2;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 2);
}
selectingKeyboardUnendless = false;
break;
case Keys.D3:
case Keys.NumPad3:
@@ -206,6 +256,7 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 3;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 3);
}
selectingKeyboardUnendless = false;
break;
case Keys.D4:
case Keys.NumPad4:
@@ -221,6 +272,7 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 4;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 4);
}
selectingKeyboardUnendless = false;
break;
case Keys.D5:
case Keys.NumPad5:
@@ -236,6 +288,7 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 5;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 5);
}
selectingKeyboardUnendless = false;
break;
case Keys.D6:
case Keys.NumPad6:
@@ -251,11 +304,14 @@ namespace Vocaluxe.Screens
selectingKeyboardPlayerNr = 6;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(true, 6);
}
selectingKeyboardUnendless = false;
break;
case Keys.Escape:
//Reset all values
selectingKeyboardPlayerNr = 0;
selectingKeyboardActive = false;
selectingKeyboardUnendless = false;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(false, -1);
break;
@@ -279,6 +335,22 @@ namespace Vocaluxe.Screens
//Update Tiles-List
NameSelections[htNameSelections(NameSelection)].UpdateList();
break;
case Keys.F10:
if (CGame.GetNumSongs() == 1 && CGame.GetSong(1).IsDuet)
{
if (SelectSlides[htSelectSlides(SelectSlideDuetPlayer[selectingKeyboardPlayerNr - 1])].Selection == 0)
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[selectingKeyboardPlayerNr - 1])].SetSelectionByValueIndex(1);
else
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[selectingKeyboardPlayerNr - 1])].SetSelectionByValueIndex(0);
//Reset all values
selectingKeyboardPlayerNr = 0;
selectingKeyboardActive = false;
selectingKeyboardUnendless = false;
NameSelections[htNameSelections(NameSelection)].KeyboardSelection(false, -1);
SetInteractionToButton(Buttons[htButtons(ButtonStart)]);
}
break;
}
}
@@ -503,13 +575,18 @@ namespace Vocaluxe.Screens
public override bool UpdateGame()
{
for (int i = 1; i <= CGame.NumPlayer; i++)
{
CSound.AnalyzeBuffer((i-1));
Equalizers[htEqualizer("EqualizerPlayer" + i)].Update(CSound.ToneWeigth((i-1)));
}
return true;
}
public override void OnShow()
{
base.OnShow();
CSound.RecordStart();
NameSelections[htNameSelections(NameSelection)].Init();
@@ -526,11 +603,33 @@ namespace Vocaluxe.Screens
Statics[htStatics(StaticPlayerAvatar[i])].Texture = CProfiles.Profiles[CGame.Player[i].ProfileID].Avatar.Texture;
Texts[htTexts(TextPlayer[i])].Text = CProfiles.Profiles[CGame.Player[i].ProfileID].PlayerName;
}
if (CGame.GetNumSongs() == 1 && CGame.GetSong(1).IsDuet)
{
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].Clear();
if (i + 1 <= CGame.NumPlayer)
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].Visible = true;
else
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].Visible = false;
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].AddValue(CGame.GetSong(1).DuetPart1);
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].AddValue(CGame.GetSong(1).DuetPart2);
if ((i + 1) % 2 == 0)
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].SetSelectionByValueIndex(1);
else
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].SetSelectionByValueIndex(0);
}
else
SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].Visible = false;
}
SetInteractionToButton(Buttons[htButtons(ButtonStart)]);
}
public override void OnClose()
{
base.OnClose();
CSound.RecordStop();
}
public override bool Draw()
{
base.Draw();
@@ -539,7 +638,10 @@ namespace Vocaluxe.Screens
{
chooseAvatarStatic.Draw();
}
for (int i = 1; i <= CGame.NumPlayer; i++)
{
Equalizers[htEqualizer("EqualizerPlayer" + i)].Draw();
}
return true;
}
@@ -561,6 +663,10 @@ namespace Vocaluxe.Screens
CGame.Player[i].Name = "";
}
}
if (CGame.GetNumSongs() == 1 && CGame.GetSong(1).IsDuet)
{
CGame.Player[i].LineNr = SelectSlides[htSelectSlides(SelectSlideDuetPlayer[i])].Selection;
}
}
CGraphics.FadeTo(EScreens.ScreenSing);
@@ -591,12 +697,17 @@ namespace Vocaluxe.Screens
{
Texts[htTexts("TextPlayer" + i)].Text = CLanguage.Translate("TR_SCREENNAMES_PLAYER") + " " + i.ToString();
}
Equalizers[htEqualizer("EqualizerPlayer" + i)].Visible = true;
if (CGame.GetNumSongs() == 1 && CGame.GetSong(1).IsDuet)
SelectSlides[htSelectSlides("SelectSlideDuetPlayer" + i)].Visible = true;
}
else
{
Statics[htStatics("StaticPlayer" + i)].Visible = false;
Statics[htStatics("StaticPlayerAvatar" + i)].Visible = false;
Texts[htTexts("TextPlayer" + i)].Visible = false;
Equalizers[htEqualizer("EqualizerPlayer" + i)].Visible = false;
SelectSlides[htSelectSlides("SelectSlideDuetPlayer" + i)].Visible = false;
}
}
CConfig.SaveConfig();
+16 -103
View File
@@ -21,7 +21,7 @@ namespace Vocaluxe.Screens
class CScreenOptionsRecord : CMenu
{
// Version number for theme files. Increment it, if you've changed something on the theme files!
const int ScreenVersion = 1;
const int ScreenVersion = 2;
private const float MaxDelayTime = 1f;
private const string SelectSlideRecordDevices = "SelectSlideRecordDevices";
@@ -40,6 +40,9 @@ namespace Vocaluxe.Screens
private const string TextDelayChannel1 = "TextDelayChannel1";
private const string TextDelayChannel2 = "TextDelayChannel2";
private const string EqualizerChannel1 = "EqualizerChannel1";
private const string EqualizerChannel2 = "EqualizerChannel2";
private readonly string[] StaticEnergyChannel = new string[] { "StaticEnergyChannel1", "StaticEnergyChannel2" };
private float[] ChannelEnergy;
@@ -51,8 +54,6 @@ namespace Vocaluxe.Screens
private bool _DelayTestRunning;
private int _DelaySound;
private Equalizer[] _Equalizer;
public CScreenOptionsRecord()
{
Init();
@@ -73,6 +74,7 @@ namespace Vocaluxe.Screens
_ThemeTexts = new string[] { TextWarning, TextDelayChannel1, TextDelayChannel2 };
_ThemeButtons = new string[] { ButtonExit, ButtonDelayTest };
_ThemeSelectSlides = new string[] { SelectSlideRecordDevices, SelectSlideRecordInputs, SelectSlideRecordChannel1, SelectSlideRecordChannel2, SelectSlideDelay };
_ThemeEqualizers = new string[] { EqualizerChannel1, EqualizerChannel2 };
}
public override void LoadTheme()
@@ -107,6 +109,9 @@ namespace Vocaluxe.Screens
Statics[htStatics(StaticEnergyChannel[i])].Visible = false;
ChannelEnergy[i] = 0f;
}
Equalizers[htEqualizer(EqualizerChannel1)].ScreenHandles = true;
Equalizers[htEqualizer(EqualizerChannel2)].ScreenHandles = true;
}
public override bool HandleInput(KeyEvent KeyEvent)
@@ -277,28 +282,29 @@ namespace Vocaluxe.Screens
if (player > 0)
{
ChannelEnergy[0] = CSound.RecordGetMaxVolume(player - 1);
_Equalizer[0].Update(CSound.ToneWeigth(player - 1));
Equalizers[htEqualizer(EqualizerChannel1)].Update(CSound.ToneWeigth(player - 1));
}
else
_Equalizer[0].Reset();
Equalizers[htEqualizer(EqualizerChannel1)].Reset();
ChannelEnergy[1] = 0f;
player = SelectSlides[htSelectSlides(SelectSlideRecordChannel2)].Selection;
if (player > 0)
{
ChannelEnergy[1] = CSound.RecordGetMaxVolume(player - 1);
_Equalizer[1].Update(CSound.ToneWeigth(player - 1));
Equalizers[htEqualizer(EqualizerChannel2)].Update(CSound.ToneWeigth(player - 1));
}
else
_Equalizer[1].Reset();
Equalizers[htEqualizer(EqualizerChannel2)].Reset();
}
else
{
for (int i = 0; i < ChannelEnergy.Length; i++)
{
ChannelEnergy[i] = 0f;
_Equalizer[i].Reset();
}
Equalizers[htEqualizer(EqualizerChannel1)].Reset();
Equalizers[htEqualizer(EqualizerChannel2)].Reset();
}
return true;
@@ -361,13 +367,6 @@ namespace Vocaluxe.Screens
_DelayTestRunning = false;
_DelaySound = -1;
_Equalizer = new Equalizer[2];
for (int i = 0; i < _Equalizer.Length; i++)
{
_Equalizer[i] = new Equalizer(new SRectF(50 + 350 * i, 400, 230, 150, -1), CSound.NumHalfTones(0), 2);
}
}
public override void OnShowFinish()
@@ -406,10 +405,8 @@ namespace Vocaluxe.Screens
}
}
for (int i = 0; i < _Equalizer.Length; i++)
{
_Equalizer[i].Draw();
}
Equalizers[htEqualizer(EqualizerChannel1)].Draw();
Equalizers[htEqualizer(EqualizerChannel2)].Draw();
DrawFG();
@@ -594,88 +591,4 @@ namespace Vocaluxe.Screens
}
}
}
class Equalizer
{
private SRectF _Bounds;
private float _Space;
private float[] _Bars;
public Equalizer(SRectF bounds, int numBars, float space)
{
_Bounds = bounds;
_Space = space;
if (numBars > 0)
_Bars = new float[numBars];
}
public void Update(float[] weights)
{
if (weights == null || weights.Length == 0 || _Bars == null)
return;
if (_Bars.Length < weights.Length)
{
}
else if (_Bars.Length > weights.Length)
{
}
else
{
for (int i = 0; i < _Bars.Length; i++)
{
//if (weights[i] > 0)
_Bars[i] = weights[i];
//else
// _Bars[i] = 0f;
}
}
}
public void Reset()
{
if (_Bars == null || _Bars.Length == 0)
return;
for (int i = 0; i < _Bars.Length; i++)
{
_Bars[i] = 0f;
}
}
public void Draw()
{
if (_Bars == null)
return;
float dx = _Bounds.W / _Bars.Length + _Space;
int max = _Bars.Length - 1;
float maxB = _Bars[max];
for (int i = 0; i < _Bars.Length - 1; i++)
{
if (_Bars[i] > maxB)
{
maxB = _Bars[i];
max = i;
}
}
for (int i = 0; i < _Bars.Length; i++)
{
SRectF bar = new SRectF(_Bounds.X + dx * i, _Bounds.Y + _Bounds.H - _Bars[i] * _Bounds.H, dx - _Space, _Bars[i] * _Bounds.H, _Bounds.Z);
SColorF color = new SColorF(1f, 1f, 1f, 1f);
if (i == max)
{
color.B = 0f;
color.G = 0f;
}
CDraw.DrawColor(color, bar);
}
}
}
}
+67 -14
View File
@@ -92,6 +92,11 @@ namespace Vocaluxe.Screens
{
base.HandleMouse(MouseEvent);
if (MouseEvent.Wheel != 0)
{
ChangeRound(MouseEvent.Wheel);
}
if (MouseEvent.LB)
{
CGraphics.FadeTo(EScreens.ScreenHighscore);
@@ -117,9 +122,23 @@ namespace Vocaluxe.Screens
public override bool UpdateGame()
{
SPlayer[] player = new SPlayer[CGame.NumPlayer];
player = _Points.GetPlayer(_Round - 1, CGame.NumPlayer);
if (_Round != 0)
player = _Points.GetPlayer(_Round - 1, CGame.NumPlayer);
else {
for (int i = 0; i < CGame.NumRounds; i++)
{
SPlayer[] points = _Points.GetPlayer(i, CGame.NumPlayer);
for (int p = 0; p < player.Length; p++)
{
player[p].Points += points[p].Points;
}
}
for (int p = 0; p < player.Length; p++)
{
player[p].Points = (int)(player[p].Points/CGame.NumRounds);
}
}
for (int p = 0; p < player.Length; p++)
{
if (StaticPointsBarDrawnPoints[p] < player[p].Points)
@@ -244,18 +263,42 @@ namespace Vocaluxe.Screens
private void UpdateRatings()
{
CSong song = CGame.GetSong(_Round);
if (song == null)
return;
Texts[htTexts(TextSong)].Text = song.Artist + " - " + song.Title;
if (_Points.NumRounds > 1)
{
Texts[htTexts(TextSong)].Text += " (" + _Round + "/" + _Points.NumRounds + ")";
}
SPlayer[] player = new SPlayer[CGame.NumPlayer];
player = _Points.GetPlayer(_Round - 1, CGame.NumPlayer);
if (_Round != 0)
{
CSong song = CGame.GetSong(_Round);
if (song == null)
return;
Texts[htTexts(TextSong)].Text = song.Artist + " - " + song.Title;
if (_Points.NumRounds > 1)
{
Texts[htTexts(TextSong)].Text += " (" + _Round + "/" + _Points.NumRounds + ")";
}
player = _Points.GetPlayer(_Round - 1, CGame.NumPlayer);
}
else
{
Texts[htTexts(TextSong)].Text = "TR_SCREENSCORE_OVERALLSCORE";
for (int i = 0; i < CGame.NumRounds; i++)
{
SPlayer[] points = _Points.GetPlayer(i, CGame.NumPlayer);
for (int p = 0; p < player.Length; p++)
{
if (i < 1)
{
player[p].ProfileID = points[p].ProfileID;
player[p].Name = points[p].Name;
player[p].Difficulty = points[p].Difficulty;
}
player[p].Points += points[p].Points;
}
}
for (int p = 0; p < player.Length; p++)
{
player[p].Points = (int)(player[p].Points / CGame.NumRounds);
}
}
for (int p = 0; p < player.Length; p++)
{
Texts[htTexts(TextNames[p, CGame.NumPlayer - 1])].Text = player[p].Name;
@@ -315,11 +358,21 @@ namespace Vocaluxe.Screens
private void ChangeRound(int Num)
{
if ((_Round + Num) <= _Points.NumRounds && (_Round + Num) > 0)
if ((_Round + Num) <= _Points.NumRounds && (_Round + Num) > 0 && _Round != 0)
{
_Round += Num;
UpdateRatings();
}
else if(Num > 0 && _Round != 0 && CGame.NumRounds > 1)
{
_Round = 0;
UpdateRatings();
}
else if (Num < 0 && _Round == 0)
{
_Round = CGame.NumRounds;
UpdateRatings();
}
}
}
}
+153 -15
View File
@@ -17,7 +17,7 @@ namespace Vocaluxe.Screens
class CScreenSing : CMenu
{
// Version number for theme files. Increment it, if you've changed something on the theme files!
const int ScreenVersion = 4;
const int ScreenVersion = 5;
struct TimeRect
{
@@ -25,10 +25,12 @@ namespace Vocaluxe.Screens
public float startBeat;
public float endBeat;
}
private const string TextSongName = "TextSongName";
private const string TextTime = "TextTime";
private const string TextPause = "TextPause";
private const string TextDuetName1 = "TextDuetName1";
private const string TextDuetName2 = "TextDuetName2";
private string[,] TextScores;
private string[,] TextNames;
@@ -51,6 +53,7 @@ namespace Vocaluxe.Screens
private const string ButtonCancel = "ButtonCancel";
private const string ButtonContinue = "ButtonContinue";
private const string ButtonSkip = "ButtonSkip";
private const string LyricMain = "LyricMain";
private const string LyricSub = "LyricSub";
@@ -85,6 +88,8 @@ namespace Vocaluxe.Screens
private int[] NoteLines = new int[CSettings.MaxNumPlayer];
private Stopwatch _TimerSongText;
private Stopwatch _TimerDuetText1;
private Stopwatch _TimerDuetText2;
private bool _Pause;
@@ -104,6 +109,8 @@ namespace Vocaluxe.Screens
texts.Add(TextSongName);
texts.Add(TextTime);
texts.Add(TextPause);
texts.Add(TextDuetName1);
texts.Add(TextDuetName2);
BuildTextStrings(ref texts);
_ThemeTexts = texts.ToArray();
@@ -127,6 +134,7 @@ namespace Vocaluxe.Screens
List<string> buttons = new List<string>();
buttons.Add(ButtonCancel);
buttons.Add(ButtonContinue);
buttons.Add(ButtonSkip);
_ThemeButtons = buttons.ToArray();
_ThemeLyrics = new string[] { LyricMain, LyricSub, LyricMainDuet, LyricSubDuet, LyricMainTop, LyricSubTop };
@@ -134,6 +142,8 @@ namespace Vocaluxe.Screens
_TimeRects = new List<TimeRect>();
_TimerSongText = new Stopwatch();
_TimerDuetText1 = new Stopwatch();
_TimerDuetText2 = new Stopwatch();
}
public override void LoadTheme()
@@ -200,12 +210,21 @@ namespace Vocaluxe.Screens
SetVisuability();
break;
case Keys.S:
if(CGame.NumRounds > CGame.RoundNr)
if(KeyEvent.ModCTRL)
LoadNextSong();
break;
case Keys.Enter:
if (Buttons[htButtons(ButtonContinue)].Selected && _Pause)
TogglePause();
TogglePause();
if (Buttons[htButtons(ButtonCancel)].Selected && _Pause)
Stop();
Stop();
if (Buttons[htButtons(ButtonSkip)].Selected && _Pause)
{
LoadNextSong();
}
break;
}
}
@@ -232,6 +251,11 @@ namespace Vocaluxe.Screens
if (Buttons[htButtons(ButtonCancel)].Selected && _Pause)
Stop();
if (Buttons[htButtons(ButtonSkip)].Selected && _Pause)
{
LoadNextSong();
TogglePause();
}
}
@@ -257,6 +281,7 @@ namespace Vocaluxe.Screens
}
UpdateSongText();
UpdateDuetText();
if (_FadeOut)
return true;
@@ -286,15 +311,15 @@ namespace Vocaluxe.Screens
SingNotes[htSingNotes(SingBars)].SetAlpha(NoteLines[p], Alpha[CGame.Player[p].LineNr * 2]);
if (CConfig.FadePlayerInfo == EFadePlayerInfo.TR_CONFIG_FADEPLAYERINFO_INFO || CConfig.FadePlayerInfo == EFadePlayerInfo.TR_CONFIG_FADEPLAYERINFO_ALL)
{
Statics[htStatics(StaticAvatars[p,CGame.NumPlayer-1])].Alpha = Alpha[0];
Texts[htTexts(TextNames[p,CGame.NumPlayer-1])].Alpha = Alpha[0];
Statics[htStatics(StaticAvatars[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
Texts[htTexts(TextNames[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
}
if (CConfig.FadePlayerInfo == EFadePlayerInfo.TR_CONFIG_FADEPLAYERINFO_ALL)
{
Statics[htStatics(StaticScores[p, CGame.NumPlayer - 1])].Alpha = Alpha[0];
Statics[htStatics(StaticAvatars[p, CGame.NumPlayer - 1])].Alpha = Alpha[0];
Texts[htTexts(TextNames[p, CGame.NumPlayer - 1])].Alpha = Alpha[0];
Texts[htTexts(TextScores[p, CGame.NumPlayer - 1])].Alpha = Alpha[0];
Statics[htStatics(StaticScores[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
Statics[htStatics(StaticAvatars[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
Texts[htTexts(TextNames[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
Texts[htTexts(TextScores[p, CGame.NumPlayer - 1])].Alpha = Alpha[CGame.Player[p].LineNr * 2];
}
}
@@ -484,6 +509,8 @@ namespace Vocaluxe.Screens
Lyrics[htLyrics(LyricMainTop)].Clear();
Lyrics[htLyrics(LyricSubTop)].Clear();
Texts[htTexts(TextSongName)].Text = String.Empty;
Texts[htTexts(TextDuetName1)].Text = String.Empty;
Texts[htTexts(TextDuetName2)].Text = String.Empty;
}
private void LoadNextSong()
@@ -523,6 +550,15 @@ namespace Vocaluxe.Screens
_FinishTime = song.Finish;
_TimeToFirstNote = 0f;
_TimeToFirstNoteDuet = 0f;
int[] duet_player = new int[CGame.NumPlayer];
if (song.IsDuet)
{
//Save duet-assignment before resetting
for (int i = 0; i < duet_player.Length; i++)
{
duet_player[i] = CGame.Player[i].LineNr;
}
}
CGame.ResetPlayer();
CDraw.RemoveTexture(ref _CurrentVideoTexture);
@@ -542,10 +578,24 @@ namespace Vocaluxe.Screens
bool LyricsOnTop = (CGame.NumPlayer != 1) && CConfig.LyricsOnTop == EOffOn.TR_CONFIG_ON;
if (song.IsDuet)
{
for (int i = 1; i <= CGame.NumPlayer; i = i + 2)
{
Texts[htTexts(TextDuetName1)].Text = song.DuetPart1;
Texts[htTexts(TextDuetName2)].Text = song.DuetPart2;
//More than one song: Player is not assigned to line by user
//Otherwise, this is done by CScreenNames
if (CGame.GetNumSongs() > 1)
{
CGame.Player[i].LineNr = 1;
for (int i = 1; i <= CGame.NumPlayer; i = i + 2)
{
CGame.Player[i].LineNr = 1;
}
}
else
{
for (int i = 0; i < CGame.NumPlayer; i++)
{
CGame.Player[i].LineNr = duet_player[i];
}
}
Statics[htStatics(StaticLyricsDuet)].Visible = true;
Lyrics[htLyrics(LyricMainDuet)].Visible = true;
@@ -586,9 +636,15 @@ namespace Vocaluxe.Screens
_TimerSongText.Stop();
_TimerSongText.Reset();
_TimerDuetText1.Stop();
_TimerDuetText1.Reset();
_TimerDuetText2.Stop();
_TimerDuetText2.Reset();
if (song.Notes.Lines.Length != 2)
{
_TimerSongText.Start();
}
StartSong();
}
@@ -602,7 +658,9 @@ namespace Vocaluxe.Screens
private void Stop()
{
CGame.NextRound();
//Need this to set other songs to points-var
while(!CGame.IsFinished())
CGame.NextRound();
CGraphics.FadeTo(EScreens.ScreenScore);
_FadeOut = true;
@@ -708,11 +766,16 @@ namespace Vocaluxe.Screens
{
Buttons[htButtons(ButtonCancel)].Visible = true;
Buttons[htButtons(ButtonContinue)].Visible = true;
if (CGame.NumRounds > CGame.RoundNr && CGame.NumRounds > 1)
Buttons[htButtons(ButtonSkip)].Visible = true;
else
Buttons[htButtons(ButtonSkip)].Visible = false;
CSound.Pause(_CurrentStream);
}else
{
Buttons[htButtons(ButtonCancel)].Visible = false;
Buttons[htButtons(ButtonContinue)].Visible = false;
Buttons[htButtons(ButtonSkip)].Visible = false;
CSound.Play(_CurrentStream);
}
}
@@ -772,6 +835,8 @@ namespace Vocaluxe.Screens
Statics[htStatics(StaticSongText)].Visible = false;
Texts[htTexts(TextSongName)].Visible = false;
Texts[htTexts(TextDuetName1)].Visible = false;
Texts[htTexts(TextDuetName2)].Visible = false;
for (int numplayer = 0; numplayer < CSettings.MaxNumPlayer; numplayer++)
{
@@ -1042,6 +1107,79 @@ namespace Vocaluxe.Screens
}
}
private void UpdateDuetText()
{
if (CGame.GetSong() != null)
{
//Timer for first duet-part
if (_TimerDuetText1.IsRunning)
{
float t = _TimerDuetText1.ElapsedMilliseconds / 1000f;
if (t < 10f)
{
Texts[htTexts(TextDuetName1)].Visible = true;
if (t < 3f)
{
Texts[htTexts(TextDuetName1)].Color.A = (3f - (3f - t)) / 3f;
}
else if (t < 7f)
{
Texts[htTexts(TextDuetName1)].Color.A = 1f;
}
else
{
Texts[htTexts(TextDuetName1)].Color.A = (3f - (t - 7f)) / 3f;
}
}
else
{
Texts[htTexts(TextDuetName1)].Visible = false;
_TimerDuetText1.Stop();
}
}
else if (!_TimerDuetText1.IsRunning && _TimerDuetText1.ElapsedMilliseconds == 0 && Lyrics[htLyrics(LyricMainDuet)].Alpha > 0 && CGame.GetSong().IsDuet)
_TimerDuetText1.Start();
else
{
Texts[htTexts(TextDuetName1)].Visible = false;
}
//Timer for second duet-part
if (_TimerDuetText2.IsRunning)
{
float t = _TimerDuetText2.ElapsedMilliseconds / 1000f;
if (t < 10f)
{
Texts[htTexts(TextDuetName2)].Visible = true;
if (t < 3f)
{
Texts[htTexts(TextDuetName2)].Color.A = (3f - (3f - t)) / 3f;
}
else if (t < 7f)
{
Texts[htTexts(TextDuetName2)].Color.A = 1f;
}
else
{
Texts[htTexts(TextDuetName2)].Color.A = (3f - (t - 7f)) / 3f;
}
}
else
{
Texts[htTexts(TextDuetName2)].Visible = false;
_TimerDuetText2.Stop();
}
}
else if (!_TimerDuetText2.IsRunning && _TimerDuetText2.ElapsedMilliseconds == 0 && Lyrics[htLyrics(LyricMain)].Alpha > 0 && CGame.GetSong().IsDuet)
_TimerDuetText2.Start();
else
{
Texts[htTexts(TextDuetName2)].Visible = false;
}
}
}
private void UpdateTimeLine()
{
CSong song = CGame.GetSong();
+305 -37
View File
@@ -17,6 +17,13 @@ namespace Vocaluxe.Screens
{
class CScreenSong : CMenu
{
enum ESongOptionsView
{
None,
Song,
General
}
// Version number for theme files. Increment it, if you've changed something on the theme files!
const int ScreenVersion = 3;
@@ -26,20 +33,29 @@ namespace Vocaluxe.Screens
private const string TextSearchBar = "TextSearchBar";
private const string TextOptionsTitle = "TextOptionsTitle";
private const string ButtonOpenOptions = "ButtonOpenOptions";
private const string ButtonOptionsSing = "ButtonOptionsSing";
private const string ButtonOptionsPlaylist = "ButtonOptionsPlaylist";
private const string ButtonOptionsClose = "ButtonOptionsClose";
private const string ButtonOptionsRandom = "ButtonOptionsRandom";
private const string ButtonOptionsSingAll = "ButtonOptionsSingAll";
private const string ButtonOptionsSingAllVisible = "ButtonOptionsSingAllVisible";
private const string ButtonOptionsOpenPlaylist = "ButtonOptionsOpenPlaylist";
private const string SelectSlideOptionsMode = "SelectSlideOptionsMode";
private const string SelectSlideOptionsPlaylistAdd = "SelectSlideOptionsPlaylistAdd";
private const string SelectSlideOptionsPlaylistOpen = "SelectSlideOptionsPlaylistOpen";
private const string StaticSearchBar = "StaticSearchBar";
private const string StaticOptionsBG = "StaticOptionsBG";
private const string SongMenu = "SongMenu";
private const string Playlist = "Playlist";
private string _SearchText = String.Empty;
private bool _SearchActive = false;
private bool _SongOptionsActive = false;
private bool _PlaylistActive = false;
private List<GameModes.EGameMode> _AvailableGameModes;
public CScreenSong()
@@ -57,29 +73,52 @@ namespace Vocaluxe.Screens
_ScreenVersion = ScreenVersion;
_ThemeStatics = new string[] { StaticSearchBar, StaticOptionsBG };
_ThemeTexts = new string[] { TextCategory, TextSelection, TextSearchBarTitle, TextSearchBar, TextOptionsTitle };
_ThemeButtons = new string[] { ButtonOptionsClose, ButtonOptionsPlaylist, ButtonOptionsSing };
_ThemeSelectSlides = new string[] { SelectSlideOptionsMode };
_ThemeButtons = new string[] { ButtonOptionsClose, ButtonOptionsPlaylist, ButtonOptionsSing, ButtonOptionsRandom, ButtonOptionsSingAll, ButtonOptionsSingAllVisible, ButtonOptionsOpenPlaylist, ButtonOpenOptions };
_ThemeSelectSlides = new string[] { SelectSlideOptionsMode, SelectSlideOptionsPlaylistAdd, SelectSlideOptionsPlaylistOpen };
_ThemeSongMenus = new string[] { SongMenu };
_ThemePlaylists = new string[] { Playlist };
}
public override void LoadTheme()
{
base.LoadTheme();
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = false;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = false;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;
Buttons[htButtons(ButtonOptionsClose)].Visible = false;
Buttons[htButtons(ButtonOptionsSing)].Visible = false;
Buttons[htButtons(ButtonOptionsPlaylist)].Visible = false;
Buttons[htButtons(ButtonOptionsRandom)].Visible = false;
Buttons[htButtons(ButtonOptionsSingAll)].Visible = false;
Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = false;
Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = false;
Texts[htTexts(TextOptionsTitle)].Visible = false;
Statics[htStatics(StaticOptionsBG)].Visible = false;
Playlists[htPlaylists(Playlist)].Visible = false;
}
public override bool HandleInput(KeyEvent KeyEvent)
{
base.HandleInput(KeyEvent);
if (KeyEvent.Handled)
return true;
if (_PlaylistActive)
{
if (!KeyEvent.KeyPressed && KeyEvent.Key == Keys.Tab)
{
_PlaylistActive = !_PlaylistActive;
Playlists[htPlaylists(Playlist)].Selected = _PlaylistActive;
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
return true;
}
Playlists[htPlaylists(Playlist)].HandleInput(KeyEvent);
return true;
}
if (!_SongOptionsActive)
{
if (KeyEvent.KeyPressed && !Char.IsControl(KeyEvent.Unicode))
{
if (_SearchActive)
@@ -94,7 +133,6 @@ namespace Vocaluxe.Screens
else
{
SongMenus[htSongMenus(SongMenu)].HandleInput(ref KeyEvent);
if (KeyEvent.Handled)
return true;
@@ -109,7 +147,16 @@ namespace Vocaluxe.Screens
if (CSongs.NumVisibleSongs > 0)
{
if (SongMenus[htSongMenus(SongMenu)].GetSelectedSong() != -1 && !_SongOptionsActive)
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.Song);
}
break;
case Keys.Tab:
if (Playlists[htPlaylists(Playlist)].Visible)
{
_PlaylistActive = !_PlaylistActive;
Playlists[htPlaylists(Playlist)].Selected = _PlaylistActive;
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
}
break;
@@ -124,6 +171,10 @@ namespace Vocaluxe.Screens
break;
case Keys.Space:
ToggleSongOptions(ESongOptionsView.General);
break;
case Keys.F3:
if (_SearchActive)
{
@@ -137,6 +188,7 @@ namespace Vocaluxe.Screens
}
break;
//TODO: Delete it! ??? Shouldn't we keep this as shortcut?
case Keys.A:
if (!_SearchActive && KeyEvent.Mod == Modifier.None)
{
@@ -148,6 +200,7 @@ namespace Vocaluxe.Screens
}
break;
//TODO: Delete that from here and from wiki!
case Keys.F:
if (KeyEvent.Mod == Modifier.Ctrl)
{
@@ -164,6 +217,7 @@ namespace Vocaluxe.Screens
}
break;
//TODO: We need another key for random!
case Keys.R:
if (CSongs.Category != -1 && KeyEvent.Mod == Modifier.Ctrl)
{
@@ -171,6 +225,7 @@ namespace Vocaluxe.Screens
}
break;
//TODO: Delete that!
case Keys.S:
if (CSongs.NumVisibleSongs > 0)
StartMedleySong(SongMenus[htSongMenus(SongMenu)].GetSelectedSong());
@@ -185,19 +240,43 @@ namespace Vocaluxe.Screens
{
case Keys.Enter:
if (Buttons[htButtons(ButtonOptionsClose)].Selected)
ToggleSongOptions();
{
ToggleSongOptions(ESongOptionsView.None);
}
else if (Buttons[htButtons(ButtonOptionsSing)].Selected)
{
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.None);
StartSong(SongMenus[htSongMenus(SongMenu)].GetSelectedSong());
}
else if (Buttons[htButtons(ButtonOptionsPlaylist)].Selected)
ToggleSongOptions();
{
OpenAndAddPlaylistAction();
}
else if (Buttons[htButtons(ButtonOptionsRandom)].Selected)
{
if (CSongs.Category != -1)
{
SongMenus[htSongMenus(SongMenu)].SetSelectedSong(CSongs.GetRandomSong());
}
}
else if (Buttons[htButtons(ButtonOptionsSingAll)].Selected)
{
StartRandomAllSongs();
}
else if (Buttons[htButtons(ButtonOptionsSingAllVisible)].Selected)
{
StartRandomVisibleSongs();
}
else if (Buttons[htButtons(ButtonOptionsOpenPlaylist)].Selected)
{
OpenPlaylistAction();
}
break;
case Keys.Escape:
case Keys.Back:
ToggleSongOptions();
case Keys.Space:
ToggleSongOptions(ESongOptionsView.None);
break;
}
}
@@ -209,6 +288,22 @@ namespace Vocaluxe.Screens
{
base.HandleMouse(MouseEvent);
if (Playlists[htPlaylists(Playlist)].IsMouseOver(MouseEvent))
{
_PlaylistActive = true;
Playlists[htPlaylists(Playlist)].Selected = _PlaylistActive;
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
}
else if (CHelper.IsInBounds(SongMenus[htSongMenus(SongMenu)].Rect, MouseEvent.X, MouseEvent.Y))
{
_PlaylistActive = false;
Playlists[htPlaylists(Playlist)].Selected = _PlaylistActive;
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
}
if (Playlists[htPlaylists(Playlist)].HandleMouse(MouseEvent))
return true;
if (!_SongOptionsActive)
{
@@ -217,7 +312,7 @@ namespace Vocaluxe.Screens
CGraphics.FadeTo(EScreens.ScreenMain);
}
else if (MouseEvent.RB && _SongOptionsActive)
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.None);
if (MouseEvent.MB && CSongs.Category != -1)
{
@@ -231,7 +326,14 @@ namespace Vocaluxe.Screens
{
if (SongMenus[htSongMenus(SongMenu)].GetSelectedSong() != -1 && !_SongOptionsActive)
{
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.Song);
}
}
else if (MouseEvent.LB && IsMouseOver(MouseEvent))
{
if (Buttons[htButtons(ButtonOpenOptions)].Selected)
{
ToggleSongOptions(ESongOptionsView.General);
}
}
}
@@ -242,21 +344,42 @@ namespace Vocaluxe.Screens
{
if (Buttons[htButtons(ButtonOptionsClose)].Selected)
{
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.None);
}
else if (Buttons[htButtons(ButtonOptionsSing)].Selected)
{
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.None);
StartSong(SongMenus[htSongMenus(SongMenu)].GetSelectedSong());
}
else if (Buttons[htButtons(ButtonOptionsPlaylist)].Selected)
{
SongMenus[htSongMenus(SongMenu)].SetSmallView(true);
OpenAndAddPlaylistAction();
}
else if (Buttons[htButtons(ButtonOptionsRandom)].Selected)
{
if (CSongs.Category != -1)
{
SongMenus[htSongMenus(SongMenu)].SetSelectedSong(CSongs.GetRandomSong());
}
}
else if (Buttons[htButtons(ButtonOptionsSingAll)].Selected)
{
ToggleSongOptions(ESongOptionsView.None);
StartRandomAllSongs();
}
else if (Buttons[htButtons(ButtonOptionsSingAllVisible)].Selected)
{
ToggleSongOptions(ESongOptionsView.None);
StartRandomVisibleSongs();
}
else if (Buttons[htButtons(ButtonOptionsOpenPlaylist)].Selected)
{
OpenPlaylistAction();
}
}
if (MouseEvent.RB)
{
ToggleSongOptions();
ToggleSongOptions(ESongOptionsView.None);
}
}
@@ -268,11 +391,20 @@ namespace Vocaluxe.Screens
base.OnShow();
CGame.EnterNormalGame();
SongMenus[htSongMenus(SongMenu)].OnShow();
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
Playlists[htPlaylists(Playlist)].Init();
if (Playlists[htPlaylists(Playlist)].ActivePlaylistID != -1)
Playlists[htPlaylists(Playlist)].LoadPlaylist(Playlists[htPlaylists(Playlist)].ActivePlaylistID);
UpdatePlaylistNames();
}
public override bool UpdateGame()
{
SongMenus[htSongMenus(SongMenu)].Update();
if (SongMenus[htSongMenus(SongMenu)].IsSmallView())
CheckPlaylist();
Texts[htTexts(TextCategory)].Text = CSongs.GetActualCategoryName();
if (CSongs.Category > -1 || CConfig.Tabs == EOffOn.TR_CONFIG_OFF)
@@ -384,7 +516,7 @@ namespace Vocaluxe.Screens
int SongNr = IDs[CGame.Rand.Next(IDs.Count)];
EGameMode gm = EGameMode.TR_GAMEMODE_NORMAL;
if (CSongs.VisibleSongs[SongNr].IsDuet)
if (CSongs.AllSongs[SongNr].IsDuet)
gm = EGameMode.TR_GAMEMODE_DUET;
CGame.AddSong(SongNr, gm);
@@ -411,7 +543,7 @@ namespace Vocaluxe.Screens
int SongNr = IDs[CGame.Rand.Next(IDs.Count)];
EGameMode gm = EGameMode.TR_GAMEMODE_NORMAL;
if (CSongs.VisibleSongs[SongNr].IsDuet)
if (CSongs.AllSongs[SongNr].IsDuet)
gm = EGameMode.TR_GAMEMODE_DUET;
CGame.AddSong(SongNr, gm);
@@ -472,47 +604,183 @@ namespace Vocaluxe.Screens
SongMenus[htSongMenus(SongMenu)].OnShow();
}
private void ToggleSongOptions()
private void ToggleSongOptions(ESongOptionsView view)
{
_SongOptionsActive = !_SongOptionsActive;
if (_SongOptionsActive)
{
SetInteractionToButton(Buttons[htButtons(ButtonOptionsSing)]);
_AvailableGameModes.Clear();
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Clear();
if (!CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
if (view == ESongOptionsView.Song)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_NORMAL));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_NORMAL);
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_SHORTSONG));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_SHORTSONG);
EGameMode LastMode = EGameMode.TR_GAMEMODE_NORMAL;
if (_AvailableGameModes.Count > 0)
LastMode = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
SetInteractionToButton(Buttons[htButtons(ButtonOptionsSing)]);
_AvailableGameModes.Clear();
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Clear();
if (!CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_NORMAL));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_NORMAL);
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_SHORTSONG));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_SHORTSONG);
}
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_DUET));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_DUET);
}
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].Medley.Source != EMedleySource.None)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_MEDLEY));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_MEDLEY);
}
//Set SelectSlide-Selection to last selected game-mode if possible
for (int i = 0; i < _AvailableGameModes.Count; i++)
{
if (_AvailableGameModes[i] == LastMode)
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].SetSelectionByValueIndex(i);
}
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = true;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = true;
Buttons[htButtons(ButtonOptionsSing)].Visible = true;
Buttons[htButtons(ButtonOptionsPlaylist)].Visible = true;
}
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
else if (view == ESongOptionsView.General)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_DUET));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_DUET);
Buttons[htButtons(ButtonOptionsRandom)].Visible = CSongs.Category != -1;
Buttons[htButtons(ButtonOptionsSingAll)].Visible = true;
Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = true;
Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = true;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = true;
}
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].Medley.Source != EMedleySource.None)
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_MEDLEY));
_AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_MEDLEY);
}
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = true;
Buttons[htButtons(ButtonOptionsClose)].Visible = true;
Buttons[htButtons(ButtonOptionsSing)].Visible = true;
Buttons[htButtons(ButtonOptionsPlaylist)].Visible = true;
Texts[htTexts(TextOptionsTitle)].Visible = true;
Statics[htStatics(StaticOptionsBG)].Visible = true;
}
else
{
SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = false;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = false;
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;
Buttons[htButtons(ButtonOptionsClose)].Visible = false;
Buttons[htButtons(ButtonOptionsSing)].Visible = false;
Buttons[htButtons(ButtonOptionsPlaylist)].Visible = false;
Buttons[htButtons(ButtonOptionsRandom)].Visible = false;
Buttons[htButtons(ButtonOptionsSingAll)].Visible = false;
Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = false;
Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = false;
Texts[htTexts(TextOptionsTitle)].Visible = false;
Statics[htStatics(StaticOptionsBG)].Visible = false;
}
}
public void CheckPlaylist()
{
if (Playlists[htPlaylists(Playlist)].ActivePlaylistID == -1)
ClosePlaylist();
}
private void OpenPlaylist(int PlaylistID)
{
if (CPlaylists.Playlists.Length > PlaylistID && PlaylistID > -1)
{
Playlists[htPlaylists(Playlist)].LoadPlaylist(PlaylistID);
SongMenus[htSongMenus(SongMenu)].SetSmallView(true);
Playlists[htPlaylists(Playlist)].Visible = true;
}
}
private void ClosePlaylist()
{
SongMenus[htSongMenus(SongMenu)].SetSmallView(false);
_PlaylistActive = false;
Playlists[htPlaylists(Playlist)].Selected = _PlaylistActive;
SongMenus[htSongMenus(SongMenu)].SetActive(!_PlaylistActive);
}
private void UpdatePlaylistNames()
{
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Clear();
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].AddValue("TR_SCREENSONG_NEWPLAYLIST");
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].AddValues(CPlaylists.PlaylistNames);
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Clear();
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].AddValues(CPlaylists.PlaylistNames);
}
private void OpenPlaylistAction()
{
//Open a playlist
if (Playlists[htPlaylists(Playlist)].ActivePlaylistID != (SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Selection))
{
Playlists[htPlaylists(Playlist)].ActivePlaylistID = SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Selection;
//Open playlist
OpenPlaylist(Playlists[htPlaylists(Playlist)].ActivePlaylistID);
}
ToggleSongOptions(ESongOptionsView.None);
}
private void OpenAndAddPlaylistAction()
{
//Open a playlist and add song
if (Playlists[htPlaylists(Playlist)].ActivePlaylistID != (SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Selection - 1))
{
//Check selected game-mode
EGameMode gm;
if (_AvailableGameModes.Count >= SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection)
gm = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
else
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
gm = GameModes.EGameMode.TR_GAMEMODE_DUET;
else
gm = GameModes.EGameMode.TR_GAMEMODE_NORMAL;
//Check if Playlist really exists
if (SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Selection - 1 < 0)
Playlists[htPlaylists(Playlist)].ActivePlaylistID = CPlaylists.NewPlaylist();
else
Playlists[htPlaylists(Playlist)].ActivePlaylistID = SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Selection - 1;
//Add song to playlist
CPlaylists.Playlists[Playlists[htPlaylists(Playlist)].ActivePlaylistID].AddSong(CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].ID, gm);
//Open playlist
OpenPlaylist(Playlists[htPlaylists(Playlist)].ActivePlaylistID);
}
//Create a new playlist and add song
else if ((SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Selection - 1) == -1)
{
//Check selected game-mode
EGameMode gm;
if (_AvailableGameModes.Count >= SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection)
gm = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
else
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
gm = GameModes.EGameMode.TR_GAMEMODE_DUET;
else
gm = GameModes.EGameMode.TR_GAMEMODE_NORMAL;
//Create new playlist
Playlists[htPlaylists(Playlist)].ActivePlaylistID = CPlaylists.NewPlaylist();
//Add song to playlist
CPlaylists.Playlists[Playlists[htPlaylists(Playlist)].ActivePlaylistID].AddSong(CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].ID, gm);
//Open playlist
OpenPlaylist(Playlists[htPlaylists(Playlist)].ActivePlaylistID);
//Add new playlist to select-slide
SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].AddValue(CPlaylists.Playlists[Playlists[htPlaylists(Playlist)].ActivePlaylistID].PlaylistName);
}
//Add song to loaded playlist
else
{
//Check selected game-mode
EGameMode gm;
if (_AvailableGameModes.Count >= SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection)
gm = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
else
if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
gm = GameModes.EGameMode.TR_GAMEMODE_DUET;
else
gm = GameModes.EGameMode.TR_GAMEMODE_NORMAL;
CPlaylists.Playlists[Playlists[htPlaylists(Playlist)].ActivePlaylistID].AddSong(CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].ID, gm);
Playlists[htPlaylists(Playlist)].UpdatePlaylist();
}
ToggleSongOptions(ESongOptionsView.Song);
}
}
}
+4 -1
View File
@@ -189,7 +189,7 @@
<Compile Include="Lib\Draw\COpenGL.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Lib\Playlist\CPlaylist.cs" />
<Compile Include="Lib\Playlist\CPlaylistFile.cs" />
<Compile Include="Lib\Song\CNotes.cs" />
<Compile Include="Lib\Song\CSong.cs" />
<Compile Include="Lib\Sound\CDirectSoundRecord.cs" />
@@ -209,11 +209,14 @@
<Compile Include="Lib\Video\IVideoDecoder.cs" />
<Compile Include="Menu\CBackground.cs" />
<Compile Include="Menu\CButton.cs" />
<Compile Include="Menu\CEqualizer.cs" />
<Compile Include="Menu\CGraphics.cs" />
<Compile Include="Menu\CNameSelection.cs" />
<Compile Include="Menu\CLyric.cs" />
<Compile Include="Menu\CMenu.cs" />
<Compile Include="Menu\CInteraction.cs" />
<Compile Include="Menu\CObjectInteractions.cs" />
<Compile Include="Menu\CPlaylist.cs" />
<Compile Include="Menu\CSelectSlide.cs" />
<Compile Include="Menu\CStatic.cs" />
<Compile Include="Menu\CText.cs" />