aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--Game/Code/Classes/UIni.pas9
-rw-r--r--Game/Code/Classes/UThemes.pas71
-rw-r--r--Game/Code/Screens/UScreenOptionsAdvanced.pas7
-rw-r--r--Game/Code/Screens/UScreenSong.pas178
-rw-r--r--Game/Sounds/dismissed.mp3bin0 -> 5433 bytes
-rw-r--r--Languages/English.ini17
-rw-r--r--Languages/German.ini17
-rw-r--r--Languages/readme.txt14
-rw-r--r--Skins/Deluxe/Autum.ini1
-rw-r--r--Skins/Deluxe/Blue.ini1
-rw-r--r--Skins/Deluxe/Summer.ini1
-rw-r--r--Skins/Deluxe/Winter.ini1
-rw-r--r--Skins/Deluxe/[button]13.jpgbin0 -> 4923 bytes
-rw-r--r--Skins/Deluxe/x_[icon]stats.jpgbin1741 -> 0 bytes
-rw-r--r--Themes/Deluxe.ini452
15 files changed, 616 insertions, 153 deletions
diff --git a/Game/Code/Classes/UIni.pas b/Game/Code/Classes/UIni.pas
index f12e3832..ca7afe9a 100644
--- a/Game/Code/Classes/UIni.pas
+++ b/Game/Code/Classes/UIni.pas
@@ -63,6 +63,7 @@ type
AskbeforeDel: integer;
OnSongClick: integer;
LineBonus: integer;
+ PartyPopup: integer;
// Controller
Joypad: integer;
@@ -140,6 +141,7 @@ const
IAskbeforeDel: array[0..1] of string = ('Off', 'On');
IOnSongClick: array[0..2] of string = ('Sing', 'Select Players', 'Open Menu');
ILineBonus: array[0..2] of string = ('Off', 'At Score', 'At Notes');
+ IPartyPopup: array[0..1] of string = ('Off', 'On');
IJoypad: array[0..1] of string = ('Off', 'On');
ILPT: array[0..2] of string = ('Off', 'LCD', 'Lights');
@@ -455,6 +457,10 @@ begin
for Pet := 0 to High(ILineBonus) do
if Tekst = ILineBonus[Pet] then Ini.LineBonus := Pet;
+ // PartyPopup
+ Tekst := IniFile.ReadString('Advanced', 'PartyPopup', 'On');
+ for Pet := 0 to High(IPartyPopup) do
+ if Tekst = IPartyPopup[Pet] then Ini.PartyPopup := Pet;
// Joypad
@@ -638,6 +644,9 @@ begin
Tekst := ILineBonus[Ini.LineBonus];
IniFile.WriteString('Advanced', 'LineBonus', Tekst);
+ //Party Popup
+ Tekst := IPartyPopup[Ini.PartyPopup];
+ IniFile.WriteString('Advanced', 'PartyPopup', Tekst);
// Joypad
Tekst := IJoypad[Ini.Joypad];
diff --git a/Game/Code/Classes/UThemes.pas b/Game/Code/Classes/UThemes.pas
index b9183740..24ac0eaa 100644
--- a/Game/Code/Classes/UThemes.pas
+++ b/Game/Code/Classes/UThemes.pas
@@ -297,10 +297,38 @@ type
StaticTeam3Joker4: TThemeStatic;
StaticTeam3Joker5: TThemeStatic;
-
-
StaticKeys1 : TThemeStatic;
TextKeys1 : TThemeText;
+ StaticKeys1Party : TThemeStatic;
+ TextKeys1Party : TThemeText;
+ StaticKeys2 : TThemeStatic;
+ TextKeys2 : TThemeText;
+ StaticKeys2Party : TThemeStatic;
+ TextKeys2Party : TThemeText;
+ StaticKeys3 : TThemeStatic;
+ TextKeys3 : TThemeText;
+ StaticKeys3Party : TThemeStatic;
+ TextKeys3Party : TThemeText;
+ StaticKeys4 : TThemeStatic;
+ TextKeys4 : TThemeText;
+ StaticKeys4Party : TThemeStatic;
+ TextKeys4Party : TThemeText;
+ StaticKeys5 : TThemeStatic;
+ TextKeys5 : TThemeText;
+ StaticKeys5Party : TThemeStatic;
+ TextKeys5Party : TThemeText;
+ StaticKeys6 : TThemeStatic;
+ TextKeys6 : TThemeText;
+ StaticKeys6Party : TThemeStatic;
+ TextKeys6Party : TThemeText;
+ StaticKeys7 : TThemeStatic;
+ TextKeys7 : TThemeText;
+ StaticKeys7Party : TThemeStatic;
+ TextKeys7Party : TThemeText;
+ StaticKeys8 : TThemeStatic;
+ TextKeys8 : TThemeText;
+ StaticKeys8Party : TThemeStatic;
+ TextKeys8Party : TThemeText;
end;
@@ -473,6 +501,7 @@ type
SelectLineBonus: TThemeSelect;
SelectAskbeforeDel: TThemeSelect;
SelectOnSongClick: TThemeSelectSlide;
+ SelectPartyPopup: TThemeSelect;
ButtonExit: TThemeButton;
end;
@@ -1014,6 +1043,43 @@ begin
ThemeLoadStatic(Song.StaticKeys1, 'SongStaticKeys1');
ThemeLoadText(Song.TextKeys1, 'SongStaticKeys1Text');
+ ThemeLoadStatic(Song.StaticKeys1Party, 'SongStaticKeys1Party');
+ ThemeLoadText(Song.TextKeys1Party, 'SongStaticKeys1TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys2, 'SongStaticKeys2');
+ ThemeLoadText(Song.TextKeys2, 'SongStaticKeys2Text');
+ ThemeLoadStatic(Song.StaticKeys2Party, 'SongStaticKeys2Party');
+ ThemeLoadText(Song.TextKeys2Party, 'SongStaticKeys2TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys3, 'SongStaticKeys3');
+ ThemeLoadText(Song.TextKeys3, 'SongStaticKeys3Text');
+ ThemeLoadStatic(Song.StaticKeys3Party, 'SongStaticKeys3Party');
+ ThemeLoadText(Song.TextKeys3Party, 'SongStaticKeys3TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys4, 'SongStaticKeys4');
+ ThemeLoadText(Song.TextKeys4, 'SongStaticKeys4Text');
+ ThemeLoadStatic(Song.StaticKeys4Party, 'SongStaticKeys4Party');
+ ThemeLoadText(Song.TextKeys4Party, 'SongStaticKeys4TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys5, 'SongStaticKeys5');
+ ThemeLoadText(Song.TextKeys5, 'SongStaticKeys5Text');
+ ThemeLoadStatic(Song.StaticKeys5Party, 'SongStaticKeys5Party');
+ ThemeLoadText(Song.TextKeys5Party, 'SongStaticKeys5TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys6, 'SongStaticKeys6');
+ ThemeLoadText(Song.TextKeys6, 'SongStaticKeys6Text');
+ ThemeLoadStatic(Song.StaticKeys6Party, 'SongStaticKeys6Party');
+ ThemeLoadText(Song.TextKeys6Party, 'SongStaticKeys6TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys7, 'SongStaticKeys7');
+ ThemeLoadText(Song.TextKeys7, 'SongStaticKeys7Text');
+ ThemeLoadStatic(Song.StaticKeys7Party, 'SongStaticKeys7Party');
+ ThemeLoadText(Song.TextKeys7Party, 'SongStaticKeys7TextParty');
+
+ ThemeLoadStatic(Song.StaticKeys8, 'SongStaticKeys8');
+ ThemeLoadText(Song.TextKeys8, 'SongStaticKeys8Text');
+ ThemeLoadStatic(Song.StaticKeys8Party, 'SongStaticKeys8Party');
+ ThemeLoadText(Song.TextKeys8Party, 'SongStaticKeys8TextParty');
// Sing
ThemeLoadBasic(Sing, 'Sing');
@@ -1209,6 +1275,7 @@ begin
ThemeLoadSelect (OptionsAdvanced.SelectLineBonus, 'OptionsAdvancedSelectLineBonus');
ThemeLoadSelectSlide (OptionsAdvanced.SelectOnSongClick, 'OptionsAdvancedSelectSlideOnSongClick');
ThemeLoadSelect (OptionsAdvanced.SelectAskbeforeDel, 'OptionsAdvancedSelectAskbeforeDel');
+ ThemeLoadSelect (OptionsAdvanced.SelectPartyPopup, 'OptionsAdvancedSelectPartyPopup');
ThemeLoadButton (OptionsAdvanced.ButtonExit, 'OptionsAdvancedButtonExit');
//error and check popup
diff --git a/Game/Code/Screens/UScreenOptionsAdvanced.pas b/Game/Code/Screens/UScreenOptionsAdvanced.pas
index a28945c1..4c3356d0 100644
--- a/Game/Code/Screens/UScreenOptionsAdvanced.pas
+++ b/Game/Code/Screens/UScreenOptionsAdvanced.pas
@@ -35,7 +35,7 @@ begin
end;
SDLK_RETURN:
begin
- if SelInteraction = 6 then begin
+ if SelInteraction = 7 then begin
Ini.Save;
Music.PlayBack;
FadeTo(@ScreenOptions);
@@ -47,14 +47,14 @@ begin
InteractPrev;
SDLK_RIGHT:
begin
- if (SelInteraction >= 0) and (SelInteraction <= 5) then begin
+ if (SelInteraction >= 0) and (SelInteraction <= 6) then begin
Music.PlayOption;
InteractInc;
end;
end;
SDLK_LEFT:
begin
- if (SelInteraction >= 0) and (SelInteraction <= 5) then begin
+ if (SelInteraction >= 0) and (SelInteraction <= 6) then begin
Music.PlayOption;
InteractDec;
end;
@@ -77,6 +77,7 @@ begin
AddSelect(Theme.OptionsAdvanced.SelectLineBonus, Ini.LineBonus, ILineBonus);
AddSelectSlide(Theme.OptionsAdvanced.SelectOnSongClick, Ini.OnSongClick, IOnSongClick);
AddSelect(Theme.OptionsAdvanced.SelectAskbeforeDel, Ini.AskbeforeDel, IAskbeforeDel);
+ AddSelect(Theme.OptionsAdvanced.SelectPartyPopup, Ini.PartyPopup, IPartyPopup);
AddButton(Theme.OptionsAdvanced.ButtonExit);
if (Length(Button[0].Text)=0) then
diff --git a/Game/Code/Screens/UScreenSong.pas b/Game/Code/Screens/UScreenSong.pas
index 48c6597a..26fcba2e 100644
--- a/Game/Code/Screens/UScreenSong.pas
+++ b/Game/Code/Screens/UScreenSong.pas
@@ -52,8 +52,46 @@ type
StaticTeam3Joker3: Cardinal;
StaticTeam3Joker4: Cardinal;
StaticTeam3Joker5: Cardinal;
+
StaticKeys1: Cardinal;
TextKeys1: integer;
+ StaticKeys1Party: Cardinal;
+ TextKeys1Party: integer;
+
+ StaticKeys2: Cardinal;
+ TextKeys2: integer;
+ StaticKeys2Party: Cardinal;
+ TextKeys2Party: integer;
+
+ StaticKeys3: Cardinal;
+ TextKeys3: integer;
+ StaticKeys3Party: Cardinal;
+ TextKeys3Party: integer;
+
+ StaticKeys4: Cardinal;
+ TextKeys4: integer;
+ StaticKeys4Party: Cardinal;
+ TextKeys4Party: integer;
+
+ StaticKeys5: Cardinal;
+ TextKeys5: integer;
+ StaticKeys5Party: Cardinal;
+ TextKeys5Party: integer;
+
+ StaticKeys6: Cardinal;
+ TextKeys6: integer;
+ StaticKeys6Party: Cardinal;
+ TextKeys6Party: integer;
+
+ StaticKeys7: Cardinal;
+ TextKeys7: integer;
+ StaticKeys7Party: Cardinal;
+ TextKeys7Party: integer;
+
+ StaticKeys8: Cardinal;
+ TextKeys8: integer;
+ StaticKeys8Party: Cardinal;
+ TextKeys8Party: integer;
constructor Create; override;
procedure SetScroll;
@@ -163,6 +201,7 @@ var I, I2: Integer;
Text[TextCat].Visible := true;
Static[StaticCat].Visible := True;
end;
+
procedure TScreenSong.HideCatTL;
begin
//Hide
@@ -368,7 +407,9 @@ begin
end
else if (Mode = 1) then //PartyMode -> Show Menu
begin
- ScreenSongMenu.MenuShow(SM_Party_Main);
+ //Is this Right?
+ ScreenSong.StartSong;
+ //ScreenSongMenu.MenuShow(SM_Party_Main);
end;
end;
end;
@@ -682,8 +723,44 @@ begin
StaticTeam3Joker5 := AddStatic(Theme.Song.StaticTeam3Joker5);
StaticKeys1 := AddStatic(Theme.Song.StaticKeys1);
-
TextKeys1 := AddText(Theme.Song.TextKeys1);
+ StaticKeys1Party := AddStatic(Theme.Song.StaticKeys1Party);
+ TextKeys1Party := AddText(Theme.Song.TextKeys1Party);
+
+ StaticKeys2 := AddStatic(Theme.Song.StaticKeys2);
+ TextKeys2 := AddText(Theme.Song.TextKeys2);
+ StaticKeys2Party := AddStatic(Theme.Song.StaticKeys2Party);
+ TextKeys2Party := AddText(Theme.Song.TextKeys2Party);
+
+ StaticKeys3 := AddStatic(Theme.Song.StaticKeys3);
+ TextKeys3 := AddText(Theme.Song.TextKeys3);
+ StaticKeys3Party := AddStatic(Theme.Song.StaticKeys3Party);
+ TextKeys3Party := AddText(Theme.Song.TextKeys3Party);
+
+ StaticKeys4 := AddStatic(Theme.Song.StaticKeys4);
+ TextKeys4 := AddText(Theme.Song.TextKeys4);
+ StaticKeys4Party := AddStatic(Theme.Song.StaticKeys4Party);
+ TextKeys4Party := AddText(Theme.Song.TextKeys4Party);
+
+ StaticKeys5 := AddStatic(Theme.Song.StaticKeys5);
+ TextKeys5 := AddText(Theme.Song.TextKeys5);
+ StaticKeys5Party := AddStatic(Theme.Song.StaticKeys5Party);
+ TextKeys5Party := AddText(Theme.Song.TextKeys5Party);
+
+ StaticKeys6 := AddStatic(Theme.Song.StaticKeys6);
+ TextKeys6 := AddText(Theme.Song.TextKeys6);
+ StaticKeys6Party := AddStatic(Theme.Song.StaticKeys6Party);
+ TextKeys6Party := AddText(Theme.Song.TextKeys6Party);
+
+ StaticKeys7 := AddStatic(Theme.Song.StaticKeys7);
+ TextKeys7 := AddText(Theme.Song.TextKeys7);
+ StaticKeys7Party := AddStatic(Theme.Song.StaticKeys7Party);
+ TextKeys7Party := AddText(Theme.Song.TextKeys7Party);
+
+ StaticKeys8 := AddStatic(Theme.Song.StaticKeys8);
+ TextKeys8 := AddText(Theme.Song.TextKeys8);
+ StaticKeys8Party := AddStatic(Theme.Song.StaticKeys8Party);
+ TextKeys8Party := AddText(Theme.Song.TextKeys8Party);
// Song List
// Songs.LoadSongList; // moved to the UltraStar unit
@@ -1234,7 +1311,13 @@ begin
SelectRandomSong;
//Show Mennu direct in PartyMode
- ScreenSongMenu.MenuShow(SM_Party_Main);
+ //But only if selected in Options
+ if (Ini.PartyPopup = 1) then
+ begin
+ ScreenSongMenu.MenuShow(SM_Party_Main);
+ end;
+
+
end;
SetJoker;
@@ -1675,13 +1758,92 @@ begin
//If Party Mode
if Mode = 1 then //Use Statics for Party-Song-Selection
begin
- Static[StaticKeys1].Visible := false;
- Text[TextKeys1].Visible := false;
+ Static[StaticKeys1].Visible := False;
+ Text[TextKeys1].Visible := False;
+ Static[StaticKeys1Party].Visible := True;
+ Text[TextKeys1Party].Visible := True;
+
+ Static[StaticKeys2].Visible := False;
+ Text[TextKeys2].Visible := False;
+ Static[StaticKeys2Party].Visible := True;
+ Text[TextKeys2Party].Visible := True;
+
+ Static[StaticKeys3].Visible := False;
+ Text[TextKeys3].Visible := False;
+ Static[StaticKeys3Party].Visible := True;
+ Text[TextKeys3Party].Visible := True;
+
+ Static[StaticKeys4].Visible := False;
+ Text[TextKeys4].Visible := False;
+ Static[StaticKeys4Party].Visible := True;
+ Text[TextKeys4Party].Visible := True;
+
+ Static[StaticKeys5].Visible := False;
+ Text[TextKeys5].Visible := False;
+ Static[StaticKeys5Party].Visible := True;
+ Text[TextKeys5Party].Visible := True;
+
+ Static[StaticKeys6].Visible := False;
+ Text[TextKeys6].Visible := False;
+ Static[StaticKeys6Party].Visible := True;
+ Text[TextKeys6Party].Visible := True;
+
+ Static[StaticKeys7].Visible := False;
+ Text[TextKeys7].Visible := False;
+ Static[StaticKeys7Party].Visible := True;
+ Text[TextKeys7Party].Visible := True;
+
+ Static[StaticKeys8].Visible := False;
+ Text[TextKeys8].Visible := False;
+ Static[StaticKeys8Party].Visible := True;
+ Text[TextKeys8Party].Visible := True;
end
else //Use regular Statics for Song-Selection
- begin //Hide all
- Static[StaticKeys1].Visible := true;
- Text[TextKeys1].Visible := true;
+ begin
+ Static[StaticKeys1].Visible := True;
+ Text[TextKeys1].Visible := True;
+ Static[StaticKeys1Party].Visible := False;
+ Text[TextKeys1Party].Visible := False;
+
+ Static[StaticKeys2].Visible := True;
+ Text[TextKeys2].Visible := True;
+ Static[StaticKeys2Party].Visible := False;
+ Text[TextKeys2Party].Visible := False;
+
+ Static[StaticKeys2].Visible := True;
+ Text[TextKeys2].Visible := True;
+ Static[StaticKeys2Party].Visible := False;
+ Text[TextKeys2Party].Visible := False;
+
+ Static[StaticKeys3].Visible := True;
+ Text[TextKeys3].Visible := True;
+ Static[StaticKeys3Party].Visible := False;
+ Text[TextKeys3Party].Visible := False;
+
+ Static[StaticKeys4].Visible := True;
+ Text[TextKeys4].Visible := True;
+ Static[StaticKeys4Party].Visible := False;
+ Text[TextKeys4Party].Visible := False;
+
+ Static[StaticKeys5].Visible := True;
+ Text[TextKeys5].Visible := True;
+ Static[StaticKeys5Party].Visible := False;
+ Text[TextKeys5Party].Visible := False;
+
+ Static[StaticKeys6].Visible := True;
+ Text[TextKeys6].Visible := True;
+ Static[StaticKeys6Party].Visible := False;
+ Text[TextKeys6Party].Visible := False;
+
+ Static[StaticKeys7].Visible := True;
+ Text[TextKeys7].Visible := True;
+ Static[StaticKeys7Party].Visible := False;
+ Text[TextKeys7Party].Visible := False;
+
+ Static[StaticKeys8].Visible := True;
+ Text[TextKeys8].Visible := True;
+ Static[StaticKeys8Party].Visible := False;
+ Text[TextKeys8Party].Visible := False;
end;
end;
diff --git a/Game/Sounds/dismissed.mp3 b/Game/Sounds/dismissed.mp3
new file mode 100644
index 00000000..f478e7a3
--- /dev/null
+++ b/Game/Sounds/dismissed.mp3
Binary files differ
diff --git a/Languages/English.ini b/Languages/English.ini
index f0c5bc4d..13696195 100644
--- a/Languages/English.ini
+++ b/Languages/English.ini
@@ -89,6 +89,7 @@ SING_OPTIONS_ADVANCED_ASKBEFOREDEL=Savety Questions
SING_OPTIONS_ADVANCED_LINEBONUS=Line Bonus
SING_OPTIONS_ADVANCED_COUNT_HOW_OFTEN_SUNG=
SING_OPTIONS_ADVANCED_ONSONGCLICK=after Song Select
+SING_OPTIONS_ADVANCED_PARTYPOPUP=Auto Party-Menue
SING_LEGEND_SELECT=select
SING_LEGEND_NAVIGATE=navigate
@@ -217,6 +218,10 @@ PARTY_ROUND_DESC=next players to the mics
PARTY_ROUND_WHEREAMI=Party Next Round
PARTY_ROUND_LEGEND_CONTINUE=start round
+PARTY_SONG_WHEREAMI=Party Song-Selection
+PARTY_SONG_LEGEND_CONTINUE=sing
+PARTY_SONG_MENU=party menu
+
PARTY_SCORE_DESC=score of the last round
PARTY_SCORE_WHEREAMI=Party Points
@@ -278,10 +283,8 @@ STAT_DESC_BANDS=Most popular Bands
STAT_DESC_BANDS_REVERSED=Least popular Bands
STAT_FORMAT_BANDS=%0:s \n %1:dx Sung
-MSG_ERROR_TITLE=Error
-MSG_QUESTION_TITLE=Question
-MSG_QUIT_USDX=Really leave \n\n UltraStar?
-MSG_END_PARTY=Really end \n\n Party Mode?
-ERROR_NO_SONGS=No Songs \n\n loaded
-ERROR_NO_PLUGINS=No Plugins \n\n loaded
-ERROR_CORRUPT_SONG=Song could not be \n\n loaded. \ No newline at end of file
+MSG_QUESTION_TITLE=Chicken Out
+MSG_QUIT_USDX=Really leave\n\nUltraStar?
+MSG_END_PARTY=Really end\n\nParty Mode?
+ERROR_NO_SONGS=Error: \n No Songs \n loaded
+ERROR_NO_PLUGINS=Error: \n No Plugins \n loaded \ No newline at end of file
diff --git a/Languages/German.ini b/Languages/German.ini
index 5ec57e48..8a9b42ea 100644
--- a/Languages/German.ini
+++ b/Languages/German.ini
@@ -89,6 +89,7 @@ SING_OPTIONS_ADVANCED_ASKBEFOREDEL=Sicherheitsabfr.
SING_OPTIONS_ADVANCED_LINEBONUS=Phrasen Bonus
SING_OPTIONS_ADVANCED_COUNT_HOW_OFTEN_SUNG=Wie oft gesungen mitzählen
SING_OPTIONS_ADVANCED_ONSONGCLICK=nach Song-Wahl
+SING_OPTIONS_ADVANCED_PARTYPOPUP=Autom. Party-Menue
SING_LEGEND_SELECT=Auswählen
SING_LEGEND_NAVIGATE=Navigieren
@@ -217,6 +218,10 @@ PARTY_ROUND_DESC=Die nächsten Spieler an die Micros!
PARTY_ROUND_WHEREAMI=Party nächste Runde
PARTY_ROUND_LEGEND_CONTINUE=Runde starten
+PARTY_SONG_WHEREAMI=Party Song-Auswahl
+PARTY_SONG_LEGEND_CONTINUE=Singen
+PARTY_SONG_MENU=Party-Menü
+
PARTY_SCORE_DESC=Punkte der letzten Runde.
PARTY_SCORE_WHEREAMI=Party Punkte
@@ -278,10 +283,8 @@ STAT_DESC_BANDS=Beliebteste Bands
STAT_DESC_BANDS_REVERSED=Unbeliebteste Bands
STAT_FORMAT_BANDS=%0:s \n Gesungene Songs: %1:d
-MSG_ERROR_TITLE=Fehler
-MSG_QUESTION_TITLE=Frage
-MSG_QUIT_USDX=UltraStar \n\n wirklich\n\nverlassen?
-MSG_END_PARTY=Party Modus \n\n beenden?
-ERROR_NO_SONGS=Keine Songs \n\n vorhanden.
-ERROR_NO_PLUGINS=Keine Plugins \n\n vorhanden.
-ERROR_CORRUPT_SONG=Song konnte nicht \n\n geladen werden. \ No newline at end of file
+MSG_QUESTION_TITLE=Chicken Out
+MSG_QUIT_USDX=UltraStar\n\nwirklich\n\nverlassen?
+MSG_END_PARTY=Party Modus\n\nbeenden?
+ERROR_NO_SONGS=Fehler: \n Keine Songs \n vorhanden
+ERROR_NO_PLUGINS=Fehler: \n Keine Plugins \n vorhanden \ No newline at end of file
diff --git a/Languages/readme.txt b/Languages/readme.txt
index 37787c2f..f4f781a0 100644
--- a/Languages/readme.txt
+++ b/Languages/readme.txt
@@ -131,6 +131,8 @@ NEXT_ROUND=Next round:
PARTY_DISMISSED=Dismissed!
PARTY_SCORE_WINS=%s
PARTY_SCORE_WINS2=wins!
+PARTY_SONG_WHEREAMI=Party Song-Selection
+PARTY_SONG_LEGEND_CONTINUE=Party-Menu
#Texts that descripts Plugins or Modis
PLUGIN_HDL_NAME=Hold the Line
@@ -178,10 +180,8 @@ STAT_DESC_BANDS_REVERSED=Least popular Bands
STAT_FORMAT_BANDS=%0:s \n %1:dx Sung
#Messages for Popup Message Boxes
-MSG_ERROR_TITLE=Error
-MSG_QUESTION_TITLE=Question
-MSG_QUIT_USDX=Really leave \n\n UltraStar?
-MSG_END_PARTY=Really end \n\n Party Mode?
-ERROR_NO_SONGS=No Songs \n\n loaded
-ERROR_NO_PLUGINS=No Plugins \n\n loaded
-ERROR_CORRUPT_SONG=Song could not be \n\n loaded. \ No newline at end of file
+MSG_QUESTION_TITLE=Chicken Out
+MSG_QUIT_USDX=Really leave\n\nUltraStar?
+MSG_END_PARTY=Really end\n\nParty Mode?
+ERROR_NO_SONGS=Error: \n No Songs \n loaded
+ERROR_NO_PLUGINS=Error: \n No Plugins \n loaded \ No newline at end of file
diff --git a/Skins/Deluxe/Autum.ini b/Skins/Deluxe/Autum.ini
index d7d8c7b9..ad9dbdbe 100644
--- a/Skins/Deluxe/Autum.ini
+++ b/Skins/Deluxe/Autum.ini
@@ -122,6 +122,7 @@ ButtonAZ = [button]az.jpg
ButtonEnter = [button]enter.jpg
ButtonNavi = [button]navi.jpg
ButtonEsc = [button]esc.jpg
+Button13 = [button]13.jpg
Leiste1 = [special]bar1.jpg
Leiste2 = [special]bar2.jpg
diff --git a/Skins/Deluxe/Blue.ini b/Skins/Deluxe/Blue.ini
index d024bd8c..6c45cfcc 100644
--- a/Skins/Deluxe/Blue.ini
+++ b/Skins/Deluxe/Blue.ini
@@ -121,6 +121,7 @@ ButtonAZ = [button]az.jpg
ButtonEnter = [button]enter.jpg
ButtonNavi = [button]navi.jpg
ButtonEsc = [button]esc.jpg
+Button13 = [button]13.jpg
Leiste1 = [special]bar1.jpg
Leiste2 = [special]bar2.jpg
diff --git a/Skins/Deluxe/Summer.ini b/Skins/Deluxe/Summer.ini
index 343f015d..4e830766 100644
--- a/Skins/Deluxe/Summer.ini
+++ b/Skins/Deluxe/Summer.ini
@@ -121,6 +121,7 @@ ButtonAZ = [button]az.jpg
ButtonEnter = [button]enter.jpg
ButtonNavi = [button]navi.jpg
ButtonEsc = [button]esc.jpg
+Button13 = [button]13.jpg
Leiste1 = [special]bar1.jpg
Leiste2 = [special]bar2.jpg
diff --git a/Skins/Deluxe/Winter.ini b/Skins/Deluxe/Winter.ini
index b1999218..93f95b88 100644
--- a/Skins/Deluxe/Winter.ini
+++ b/Skins/Deluxe/Winter.ini
@@ -120,6 +120,7 @@ ButtonAZ = [button]az.jpg
ButtonEnter = [button]enter.jpg
ButtonNavi = [button]navi.jpg
ButtonEsc = [button]esc.jpg
+Button13 = [button]13.jpg
Leiste1 = [special]bar1.jpg
Leiste2 = [special]bar2.jpg
diff --git a/Skins/Deluxe/[button]13.jpg b/Skins/Deluxe/[button]13.jpg
new file mode 100644
index 00000000..c732dba9
--- /dev/null
+++ b/Skins/Deluxe/[button]13.jpg
Binary files differ
diff --git a/Skins/Deluxe/x_[icon]stats.jpg b/Skins/Deluxe/x_[icon]stats.jpg
deleted file mode 100644
index 505a6709..00000000
--- a/Skins/Deluxe/x_[icon]stats.jpg
+++ /dev/null
Binary files differ
diff --git a/Themes/Deluxe.ini b/Themes/Deluxe.ini
index 987bf070..582a4f8f 100644
--- a/Themes/Deluxe.ini
+++ b/Themes/Deluxe.ini
@@ -340,14 +340,46 @@ Space=1
Bands=5
Length=18
-[SongText1]
-X =70
-Y =6
-Color=White
-Font =0
-Size =20
-Text=SING_SONG_SELECTION
-Align=0
+[SongStatic1]
+X =0
+Y =549
+W =252
+H =28
+Tex=Leiste1
+Color =White
+Type=Plain
+Reflection=1
+ReflectionSpacing=1
+
+[SongStatic2]
+X =254
+Y =549
+W =548
+H =28
+Tex=Leiste2
+Color =White
+Type=Plain
+Reflection=1
+ReflectionSpacing=1
+
+[SongStatic3]
+X =200
+Y =120
+W =300
+H =200
+Color =LightBlue
+Tex =SongSelection1
+Type=Font Black
+
+[SongStatic4]
+X =248
+Y =320
+W =200
+H =200
+Z=0.98
+Color =LightBlue
+Tex =SongSelection2
+Type=Font Black
[SongTextCat]
X =70
@@ -358,7 +390,43 @@ Size =10
Align =0
Text=SING_CHOOSE_SONG
-[SongStatic1]
+[SongTextArtist]
+X =350
+Y =320
+W = 190
+Color=White
+Font =1
+Size =9
+Align =1
+Text=
+
+[SongTextTitle]
+X =350
+Y =380
+W = 190
+Color=White
+Font =0
+Size =9
+Align =1
+Text=
+
+[SongTextNumber]
+X =440
+Y =495
+Color=White
+Font =0
+Size =8
+Align =2
+Text=
+
+
+#Variable statics and texts for song-screen in sing- and partymode
+#Each static or text comes in 2 versions now. E.g SongStaticKeys8Text and SongStaticKeys8TextParty. (Doh, i have to alter the names)
+#There are 8 statics and 8 texts for each mode. 32 items alltogether.
+
+#Here are the ones for singmode
+
+[SongStaticKeys1]
X =40
Y =22
W =27
@@ -367,57 +435,90 @@ Color =White
Tex =SongCD
Type=Font Black
-[SongText2]
-X =238
-Y =552
-Color=Black
-Font =0
-Size =7
-Align=2
-Text=SING_SONG_SELECTION_WHEREAMI
+[SongStaticKeys2]
+X =260
+Y =553
+W =26
+H =22
+Tex=ButtonAlt
+Color =White
+Type=Plain
-[SongStatic2]
-X =248
-Y =320
-W =200
-H =200
-Z=0.98
-Color =LightBlue
-Tex =SongSelection2
-Type=Font Black
+[SongStaticKeys3]
+X =300
+Y =553
+W =26
+H =22
+Tex=ButtonAZ
+Color =White
+Type=Plain
-[SongStatic3]
-X =0
-Y =549
-W =252
-H =28
-Tex=Leiste1
+[SongStaticKeys4]
+X =425
+Y =553
+W =22
+H =22
+Tex=ButtonM
Color =White
Type=Plain
-Reflection=1
-ReflectionSpacing=1
-[SongStatic4]
-X =254
-Y =549
-W =548
-H =28
-Tex=Leiste2
+[SongStaticKeys5]
+X =515
+Y =553
+W =22
+H =22
+Tex=ButtonJ
Color =White
Type=Plain
-Reflection=1
-ReflectionSpacing=1
-[SongStatic8]
-X =260
+[SongStaticKeys6]
+X =679
Y =553
-W =26
+W =22
H =22
-Tex=ButtonAlt
+Tex=ButtonP
Color =White
Type=Plain
-[SongText5]
+#Not used in this theme
+#[SongStaticKeys7]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+#Not used in this theme
+#[SongStaticKeys8]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+[SongStaticKeys1Text]
+X =70
+Y =6
+Color=White
+Font =0
+Size =20
+Text=SING_SONG_SELECTION
+Align=0
+
+[SongStaticKeys2Text]
+X =238
+Y =552
+Color=Black
+Font =0
+Size =7
+Align=2
+Text=SING_SONG_SELECTION_WHEREAMI
+
+[SongStaticKeys3Text]
X =288
Y =556
Color=Black
@@ -426,16 +527,7 @@ Size =5
Align=0
Text=+
-[SongStatic9]
-X =300
-Y =553
-W =26
-H =22
-Tex=ButtonAZ
-Color =White
-Type=Plain
-
-[SongText6]
+[SongStaticKeys4Text]
X =330
Y =552
Color=Black
@@ -444,16 +536,7 @@ Size =7
Align=0
Text=SING_SONG_SELECTION_GOTO
-[SongStatic6]
-X =425
-Y =553
-W =22
-H =22
-Tex=ButtonM
-Color =White
-Type=Plain
-
-[SongText3]
+[SongStaticKeys5Text]
X =450
Y =552
Color=Black
@@ -462,16 +545,7 @@ Size =7
Align=0
Text=SING_SONG_SELECTION_MENU
-[SongStatic7]
-X =515
-Y =553
-W =22
-H =22
-Tex=ButtonJ
-Color =White
-Type=Plain
-
-[SongText4]
+[SongStaticKeys6Text]
X =540
Y =552
Color=Black
@@ -480,62 +554,182 @@ Size =7
Align=0
Text=SONG_JUMPTO_DESC
-[SongStaticKeys1]
-X =679
+[SongStaticKeys7Text]
+X =705
+Y =552
+Color=Black
+Font =0
+Size =7
+Align=0
+Text=SING_SONG_SELECTION_PLAYLIST
+
+#Not used in this Theme
+#[SongStaticKeys8Text]
+#X =
+#Y =
+#Color=
+#Font =0
+#Size =0
+#Align=0
+#Text=
+
+#and theese are the ones for partymode
+
+[SongStaticKeys1Party]
+X =40
+Y =22
+W =27
+H =27
+Color =White
+Tex =PartyIcon
+Type=Font Black
+
+[SongStaticKeys2Party]
+X =260
+Y =553
+W =26
+H =22
+Tex=Button13
+Color =White
+Type=Plain
+
+[SongStaticKeys3Party]
+X =400
Y =553
W =22
H =22
-Tex=ButtonP
+Tex=ButtonM
Color =White
Type=Plain
-Texts=1
-[SongStaticKeys1Text]
-X =705
+[SongStaticKeys4Party]
+X =540
+Y =553
+W =26
+H =22
+Tex=ButtonEnter
+Color =White
+Type=Plain
+
+#Not used in this theme
+#[SongStaticKeys5Party]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+#Not used in this theme
+#[SongStaticKeys6Party]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+#Not used in this theme
+#[SongStaticKeys7Party]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+#Not used in this theme
+#[SongStaticKeys8Party]
+#X =
+#Y =
+#W =
+#H =
+#Tex=
+#Color =
+#Type=
+
+[SongStaticKeys1TextParty]
+X =70
+Y =6
+ColR = 0.7
+ColG = 0.7
+ColB = 0.7
+Font = 0
+Size = 20
+Color =White
+Text=PARTY_MODE
+
+[SongStaticKeys2TextParty]
+X =238
Y =552
Color=Black
Font =0
Size =7
-Align=0
-Text=SING_SONG_SELECTION_PLAYLIST
-
-[SongStatic5]
-X =200
-Y =120
-W =300
-H =200
-Color =LightBlue
-Tex =SongSelection1
-Type=Font Black
+Align=2
+Text=PARTY_SONG_WHEREAMI
-[SongTextArtist]
-X =350
-Y =320
-W = 190
-Color=White
-Font =1
-Size =9
-Align =1
-Text=
+[SongStaticKeys3TextParty]
+X =288
+Y =552
+Color=Black
+Font =0
+Size =7
+Align=0
+Text=SONG_MENU_NAME_PARTY_JOKER
-[SongTextTitle]
-X =350
-Y =380
-W = 190
-Color=White
+[SongStaticKeys4TextParty]
+X =426
+Y =552
+Color=Black
Font =0
-Size =9
-Align =1
-Text=
+Size =7
+Align=0
+Text=PARTY_SONG_MENU
-[SongTextNumber]
-X =440
-Y =495
-Color=White
+[SongStaticKeys5TextParty]
+X =570
+Y =552
+Color=Black
Font =0
-Size =8
-Align =2
-Text=
+Size =7
+Align=0
+Text=PARTY_SONG_LEGEND_CONTINUE
+
+#Not used in this Theme
+#[SongStaticKeys6TextParty]
+#X =
+#Y =
+#Color=
+#Font =0
+#Size =0
+#Align=0
+#Text=
+
+#Not used in this Theme
+#[SongStaticKeys7TextParty]
+#X =
+#Y =
+#Color=
+#Font =0
+#Size =0
+#Align=0
+#Text=
+
+#Not used in this Theme
+#[SongStaticKeys8TextParty]
+#X =
+#Y =
+#Color=
+#Font =0
+#Size =0
+#Align=0
+#Text=
+
+#variable statics end
+
[SongStaticTeam1Joker1]
Tex =Joker
@@ -4121,11 +4315,31 @@ SBGDColor = Gray
STColor = White
STDColor = GrayDark
-[OptionsAdvancedButtonExit]
+[OptionsAdvancedSelectPartyPopup]
+Tex =MainBar
+TexSBG =MainBar
+Text =SING_OPTIONS_ADVANCED_PARTYPOPUP
X = 40
Y = 415
W = 230
H = 70
+SkipX = 50
+
+Color = ColorDark
+DColor = Gray
+TColor = White
+TDColor = White
+SBGTex =MainBar
+SBGColor = ColorDark
+SBGDColor = Gray
+STColor = White
+STDColor = GrayDark
+
+[OptionsAdvancedButtonExit]
+X = 40
+Y = 470
+W = 230
+H = 70
Tex =MainBar
Color = ColorDark
DColor = Gray