diff options
-rw-r--r-- | Game/Code/Classes/UFiles.pas | 41 | ||||
-rw-r--r-- | Game/Code/Classes/UMain.pas | 16 | ||||
-rw-r--r-- | Game/Code/Screens/UScreenScore.pas | 119 | ||||
-rw-r--r-- | Game/Code/switches.inc | 2 | ||||
-rw-r--r-- | Installer/INSTALLER-README.txt | 7 | ||||
-rw-r--r-- | Installer/UltraStarDeluxe.nsi | 599 |
6 files changed, 630 insertions, 154 deletions
diff --git a/Game/Code/Classes/UFiles.pas b/Game/Code/Classes/UFiles.pas index 565c5ee3..9cd3bdc1 100644 --- a/Game/Code/Classes/UFiles.pas +++ b/Game/Code/Classes/UFiles.pas @@ -54,47 +54,6 @@ implementation uses TextGL,
UIni,
UMain;
-{*
-//--------------------
-// Function sets all Absolute Paths e.g. Song Path and makes sure the Directorys exist
-//--------------------
-procedure InitializePaths;
-
- // Initialize a Path Variable
- // After Setting Paths, make sure that Paths exist
- function initialize_path( out aPathVar : String; const aLocation : String ): boolean;
- var
- lWriteable: Boolean;
- begin
- aPathVar := aLocation;
-
- If DirectoryExists(aPathVar) then
- lWriteable := ForceDirectories(aPathVar)
- else
- lWriteable := false;
-
- if not Writeable then
- Log.LogError('Error: Dir ('+ aLocation +') is Readonly');
-
- result := lWriteable;
- end;
-
-begin
- GamePath := ExtractFilePath(ParamStr(0));
-
- initialize_path( LogPath , GamePath );
- initialize_path( SoundPath , GamePath + 'Sounds\' );
- initialize_path( SongPath , GamePath + 'Songs\' );
- initialize_path( ThemePath , GamePath + 'Themes\' );
- initialize_path( ScreenshotsPath , GamePath + 'Screenshots\');
- initialize_path( CoversPath , GamePath + 'Covers\' );
- initialize_path( LanguagesPath , GamePath + 'Languages\' );
- initialize_path( PluginPath , GamePath + 'Plugins\' );
- initialize_path( PlaylistPath , GamePath + 'Playlists\' );
-
- DecimalSeparator := ',';
-end;
-*}
//--------------------
// Clears Song Header values
diff --git a/Game/Code/Classes/UMain.pas b/Game/Code/Classes/UMain.pas index 9b6ea3d5..66e1d07e 100644 --- a/Game/Code/Classes/UMain.pas +++ b/Game/Code/Classes/UMain.pas @@ -748,14 +748,22 @@ procedure InitializePaths; function initialize_path( out aPathVar : String; const aLocation : String ): boolean;
var
lWriteable: Boolean;
+ lAttrib : integer;
begin
- aPathVar := aLocation;
+ lWriteable := false;
+ aPathVar := aLocation;
+
+ // Make sure the directory is needex
+ ForceDirectories(aPathVar);
If DirectoryExists(aPathVar) then
- lWriteable := ForceDirectories(aPathVar)
- else
- lWriteable := false;
+ begin
+ lAttrib := fileGetAttr('C:Temp');
+ lWriteable := ( lAttrib and faDirectory <> 0 ) AND
+ NOT ( lAttrib and faReadOnly <> 0 )
+ end;
+
if not lWriteable then
Log.LogError('Error: Dir ('+ aLocation +') is Readonly');
diff --git a/Game/Code/Screens/UScreenScore.pas b/Game/Code/Screens/UScreenScore.pas index 222879ba..0182bbd2 100644 --- a/Game/Code/Screens/UScreenScore.pas +++ b/Game/Code/Screens/UScreenScore.pas @@ -192,7 +192,8 @@ var MaxH: real; // maximum height of score bar
Wsp: real;
begin
-{ CountSkipTimeSet;
+{*
+ CountSkipTimeSet;
Animation := 0;
Fadeout := false;
@@ -224,7 +225,8 @@ begin 9010..10000: Text[3].Text := ' Superstar';
end;
- Music.PlayShuffle;}
+ Music.PlayShuffle;
+*}
// Singstar
Fadeout := false;
@@ -300,112 +302,7 @@ begin Static[StaticLevel[P]].Visible := false; //V[P];
Static[StaticLevelRound[P]].Visible := false; //V[P];
end;
-{
- if PlayersPlay <= 3 then begin // only for 1 screen mode
- for P := 0 to PlayersPlay-1 do begin
- case PlayersPlay of
- 1: PP := 1;
- 2: PP := P + 2;
- 3: PP := P + 4;
- end;
- //PP := 1;
-
- Text[TextName[PP]].Text := Ini.Name[P];
-
- //{$IFDEF TRANSLATE}
-{ case (Player[P].ScoreTotalI) of
- 0..2000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_TONE_DEAF');
- 2010..4000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_AMATEUR');
- 4010..6000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_RISING_STAR');
- 6010..8000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_LEAD_SINGER');
- 8010..9000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_HIT_ARTIST');
- 9010..9800: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_SUPERSTAR');
- 9810..10000: Text[TextScore[PP]].Text := Language.Translate('SING_SCORE_ULTRASTAR');
- end;
- (* {$ELSE}{
- case (Player[P].ScoreTotalI) of
- 0..2000: Text[TextScore[PP]].Text := 'Tone Deaf';
- 2010..4000: Text[TextScore[PP]].Text := 'Amateur';
- 4010..6000: Text[TextScore[PP]].Text := 'Rising Star';
- 6010..8000: Text[TextScore[PP]].Text := 'Lead Singer';
- 8010..9000: Text[TextScore[PP]].Text := 'Hit Artist';
- 9010..9800: Text[TextScore[PP]].Text := 'Superstar';
- 9810..10000: Text[TextScore[PP]].Text := 'Ultrastar';
- end;
-{ {$ENDIF}
-//*)
-
-{ S := IntToStr(Player[P].ScoreI);
- while (Length(S)<4) do S := '0' + S;
- Text[TextNotesScore[PP]].Text := S;
- S := IntToStr(Player[P].ScoreLineI);
- while (Length(S)<4) do S := '0' + S;
- Text[TextLineBonusScore[PP]].Text := S;
-
- S := IntToStr(Player[P].ScoreGoldenI);
- while (Length(S)<4) do S := '0' + S;
- Text[TextGoldenNotesScore[PP]].Text := S;
-
- S := IntToStr(Player[P].ScoreTotalI);
- while (Length(S)<5) do S := '0' + S;
- Text[TextTotalScore[PP]].Text := S;
-
- // Level bar length
-(*
- Lev := ((Round(Player[P].Punkty) div 10) * 10) / 10000;
- Static[StaticLevel[PP]].Texture.H := Round(Static[StaticBackLevel[PP]].Texture.H * Lev);
- Static[StaticLevel[PP]].Texture.Y := Static[StaticBackLevel[PP]].Texture.Y + Static[StaticBackLevel[PP]].Texture.H - Static[StaticLevel[PP]].Texture.H;
- Static[StaticLevelRound[PP]].Texture.Y := Static[StaticLevel[PP]].Texture.Y - Static[StaticLevelRound[PP]].Texture.H;}
-//*)
- // doesn't align too much... (to fix)
- // hint: play with wrapping textures
- // resolution: setting TexY1 and TexY2 to 0.1 and 0.9
-
-{ Lev := Player[P].ScoreTotalI / 10000;
- MaxH := Static[StaticBackLevel[PP]].Texture.H + Static[StaticBackLevelRound[PP]].Texture.H / 2;
-
- // developer note (Polish):
- // w sumie np. 120 pix
- // ten static moze miec 100 pix
- // wlacza sie od 20 pix i rosnie do 120 pix
- // wiec wysokosc = wyznaczona ilosc - 20
- // nie moze byc mniejsze od 0
- // Lev * MaxH = total number of pixels to draw
- Static[StaticLevel[PP]].Visible := true;
- Static[StaticLevel[PP]].Texture.H := Lev * MaxH - Static[StaticBackLevelRound[PP]].Texture.H / 2;
- if Static[StaticLevel[PP]].Texture.H < 0 then Static[StaticLevel[PP]].Visible := false;
-
- // Y doesn't change and depend on the back texture coordinate
- Static[StaticLevel[PP]].Texture.Y := Static[StaticBackLevel[PP]].Texture.Y + Static[StaticBackLevel[PP]].Texture.H - Static[StaticLevel[PP]].Texture.H;
-
- // we modify LevelRound texture by changing it's Y. TexY1 and TexY2 change when the height to draw is lower than 20
- if Lev * MaxH < Static[StaticBackLevelRound[PP]].Texture.H / 2 then begin
- // when it's lower than 20 => we move TexY1 and TexY2 higher to show only part of this texture
- Static[StaticLevelRound[PP]].Texture.Y := Static[StaticBackLevel[PP]].Texture.Y + Static[StaticBackLevel[PP]].Texture.H - Static[StaticBackLevelRound[PP]].Texture.H;
- // - 0.25 when points = 0
- // - 0 wnen there are more points
- // if Lev * MaxH = Static[StaticBackLevelRound[PP]].Texture.H / 2) then we do not change it
- // if Lev * MaxH = 0 then we substract 0.25
- // we substract (0.25 - 0.25 * (Lev * MaxH)/Static[StaticBackLevelRound[PP]].Texture.H / 2)
- Wsp := Lev * MaxH / (Static[StaticBackLevelRound[PP]].Texture.H / 2);
- Static[StaticLevelRound[PP]].Texture.TexY1 := Static[StaticBackLevelRound[PP]].Texture.TexY1 - 0.25 + 0.25 * Wsp;
- Static[StaticLevelRound[PP]].Texture.TexY2 := Static[StaticBackLevelRound[PP]].Texture.TexY2 - 0.25 + 0.25 * Wsp;
- end else begin
- // when it's higher or equal 20 => full texture is being shown
- Static[StaticLevelRound[PP]].Texture.TexY1 := Static[StaticBackLevelRound[PP]].Texture.TexY1;
- Static[StaticLevelRound[PP]].Texture.TexY2 := Static[StaticBackLevelRound[PP]].Texture.TexY2;
- Static[StaticLevelRound[PP]].Texture.Y := Static[StaticLevel[PP]].Texture.Y - Static[StaticBackLevelRound[PP]].Texture.H;
- end;
-
- end; // for
- end; // if
-
- LCD.HideCursor;
- LCD.Clear;
- LCD.WriteText(1, Ini.Name[0]);
- LCD.WriteText(2, 'Score: ' + Text[TextTotalScore[1]].Text);
-}
end;
procedure TScreenScore.onShowFinish;
@@ -684,6 +581,7 @@ const RaiseSmoothness : integer = 100;
var
RaiseStep : Real;
+ lTmpA : Real;
begin
// EaseOut_Step is the actual step in the raising process, like the 20iest step of EaseOut_MaxSteps
RaiseStep := EaseOut_Step;
@@ -695,7 +593,12 @@ begin // quadratic easing out - decelerating to zero velocity
// -end_position * current_time * ( current_time - 2 ) + start_postion
- Result := floor((-ScoreReached * RaiseStep * (RaiseStep - 20)) / RaiseSmoothness);
+ lTmpA := (-ScoreReached * RaiseStep * (RaiseStep - 20));
+ if ( lTmpA > 0 ) AND
+ ( RaiseSmoothness > 0 ) THEN
+ begin
+ Result := floor( lTmpA / RaiseSmoothness);
+ end;
end
else
begin
diff --git a/Game/Code/switches.inc b/Game/Code/switches.inc index 0bace1cb..a895712a 100644 --- a/Game/Code/switches.inc +++ b/Game/Code/switches.inc @@ -2,7 +2,7 @@ {$UNDEF UseSerialPort} {$UNDEF UseMIDIPort} {$ELSE} - {$DEFINE UseSerialPort} + {$UNDEF UseSerialPort} {$DEFINE UseMIDIPort} {$ENDIF} diff --git a/Installer/INSTALLER-README.txt b/Installer/INSTALLER-README.txt new file mode 100644 index 00000000..2a360e2b --- /dev/null +++ b/Installer/INSTALLER-README.txt @@ -0,0 +1,7 @@ +Build using
+
+Nullsoft Install System
+ http://nsis.sourceforge.net/Download
+
+You may also want this editor..
+ http://hmne.sourceforge.net/index.php#Download
\ No newline at end of file diff --git a/Installer/UltraStarDeluxe.nsi b/Installer/UltraStarDeluxe.nsi new file mode 100644 index 00000000..b15cb75e --- /dev/null +++ b/Installer/UltraStarDeluxe.nsi @@ -0,0 +1,599 @@ +; Script generated by the HM NIS Edit Script Wizard.
+
+; HM NIS Edit Wizard helper defines
+!define PRODUCT_NAME "UltraStar Deluxe"
+!define PRODUCT_VERSION "1.1"
+!define PRODUCT_PUBLISHER "UltraStar Deluxe Team"
+!define PRODUCT_WEB_SITE "http://www.UltraStarDeluxe.org"
+!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\UltraStar.exe"
+!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
+!define PRODUCT_UNINST_ROOT_KEY "HKLM"
+!define PRODUCT_STARTMENU_REGVAL "NSIS:StartMenuDir"
+
+SetCompressor bzip2
+
+; MUI 1.67 compatible ------
+!include "MUI.nsh"
+
+; MUI Settings
+!define MUI_ABORTWARNING
+!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico"
+!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
+
+; Welcome page
+!insertmacro MUI_PAGE_WELCOME
+; License page
+;!insertmacro MUI_PAGE_LICENSE "..\..\..\..\path\to\licence\YourSoftwareLicence.txt"
+; Directory page
+!insertmacro MUI_PAGE_DIRECTORY
+; Start menu page
+var ICONS_GROUP
+!define MUI_STARTMENUPAGE_NODISABLE
+!define MUI_STARTMENUPAGE_DEFAULTFOLDER "UltraStar Deluxe"
+!define MUI_STARTMENUPAGE_REGISTRY_ROOT "${PRODUCT_UNINST_ROOT_KEY}"
+!define MUI_STARTMENUPAGE_REGISTRY_KEY "${PRODUCT_UNINST_KEY}"
+!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME "${PRODUCT_STARTMENU_REGVAL}"
+!insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP
+; Instfiles page
+!insertmacro MUI_PAGE_INSTFILES
+; Finish page
+!define MUI_FINISHPAGE_RUN "$INSTDIR\UltraStar.exe"
+!insertmacro MUI_PAGE_FINISH
+
+; Uninstaller pages
+!insertmacro MUI_UNPAGE_INSTFILES
+
+; Language files
+!insertmacro MUI_LANGUAGE "English"
+
+; Reserve files
+!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
+
+; MUI end ------
+
+Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
+OutFile "Setup.exe"
+InstallDir "$PROGRAMFILES\UltraStar Deluxe"
+InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
+ShowInstDetails show
+ShowUnInstDetails show
+
+Section "MainSection" SEC01
+ SetOutPath "$INSTDIR"
+ SetOverwrite ifnewer
+ File "..\config.ini"
+ File "..\UltraStar.exe"
+ File "..\sqlite3.dll"
+ File "..\smpeg.dll"
+ File "..\SDL_image.dll"
+ File "..\SDL.dll"
+ File "..\libtiff-3.dll"
+ File "..\libpng12-0.dll"
+ File "..\jpeg.dll"
+ File "..\bass.dll"
+ File "..\avutil-49.dll"
+ File "..\avformat-50.dll"
+ File "..\avcodec-51.dll"
+ SetOutPath "$INSTDIR\Languages\"
+ File "..\Languages\Catalan.ini"
+ File "..\Languages\Dutch.ini"
+ File "..\Languages\English.ini"
+ File "..\Languages\French.ini"
+ File "..\Languages\German.ini"
+ File "..\Languages\Italian.ini"
+ File "..\Languages\Norwegian.ini"
+ File "..\Languages\Spanish.ini"
+ File "..\Languages\Swedish.ini"
+ File "..\Languages\readme.txt"
+
+ SetOutPath "$INSTDIR\Songs"
+ SetOutPath "$INSTDIR\Screenshots"
+ SetOutPath "$INSTDIR\Covers"
+ SetOutPath "$INSTDIR\Plugins"
+ SetOutPath "$INSTDIR\Playlists"
+
+ SetOutPath "$INSTDIR\Skins\Classic"
+ File "..\Skins\Classic\Star.ini"
+ File "..\Skins\Classic\[button]13.jpg"
+ File "..\Skins\Classic\[button]alt.jpg"
+ File "..\Skins\Classic\[button]az.jpg"
+ File "..\Skins\Classic\[button]e.jpg"
+ File "..\Skins\Classic\[button]enter.jpg"
+ File "..\Skins\Classic\[button]esc.jpg"
+ File "..\Skins\Classic\[button]j.jpg"
+ File "..\Skins\Classic\[button]m.jpg"
+ File "..\Skins\Classic\[button]navi.jpg"
+ File "..\Skins\Classic\[button]p.jpg"
+ File "..\Skins\Classic\[effect]goldenNoteStar.jpg"
+ File "..\Skins\Classic\[effect]perfectNoteStar.jpg"
+ File "..\Skins\Classic\[helper]rectangle.jpg"
+ File "..\Skins\Classic\[icon]error.jpg"
+ File "..\Skins\Classic\[icon]question.jpg"
+ File "..\Skins\Classic\[icon]Star.jpg"
+ File "..\Skins\Classic\[icon]stats.jpg"
+ File "..\Skins\Classic\[icon]video.jpg"
+ File "..\Skins\Classic\[mainbutton]Exit.jpg"
+ File "..\Skins\Classic\[mainbutton]Multi.jpg"
+ File "..\Skins\Classic\[mainbutton]Options.jpg"
+ File "..\Skins\Classic\[mainbutton]Solo.jpg"
+ File "..\Skins\Classic\[mainbutton]Stats.jpg"
+ File "..\Skins\Classic\[main]Bar.jpg"
+ File "..\Skins\Classic\[main]Bar1.jpg"
+ File "..\Skins\Classic\[main]Button.jpg"
+ File "..\Skins\Classic\[main]Button2.jpg"
+ File "..\Skins\Classic\[main]Button3.jpg"
+ File "..\Skins\Classic\[main]ButtonEditor.jpg"
+ File "..\Skins\Classic\[main]Logo.jpg"
+ File "..\Skins\Classic\[main]songCover.jpg"
+ File "..\Skins\Classic\[main]square.jpg"
+ File "..\Skins\Classic\[menu]jumpToBg.jpg"
+ File "..\Skins\Classic\[menu]PopUpBg.JPG"
+ File "..\Skins\Classic\[menu]PopUpFg.JPG"
+ File "..\Skins\Classic\[menu]songMenuBg.jpg"
+ File "..\Skins\Classic\[menu]songMenuBorder.jpg"
+ File "..\Skins\Classic\[menu]songMenuButtonBG.jpg"
+ File "..\Skins\Classic\[menu]songMenuSelectBG.jpg"
+ File "..\Skins\Classic\[party]Joker.jpg"
+ File "..\Skins\Classic\[party]playerButton.jpg"
+ File "..\Skins\Classic\[party]playerTeamButton.jpg"
+ File "..\Skins\Classic\[party]pointer.bmp"
+ File "..\Skins\Classic\[party]roundBG1.jpg"
+ File "..\Skins\Classic\[party]roundBG2.jpg"
+ File "..\Skins\Classic\[party]roundBG3.jpg"
+ File "..\Skins\Classic\[party]roundBG4.jpg"
+ File "..\Skins\Classic\[party]roundTeamButton.jpg"
+ File "..\Skins\Classic\[party]scoreBG1.jpg"
+ File "..\Skins\Classic\[party]scoreBG2.jpg"
+ File "..\Skins\Classic\[party]scoreDecoration.jpg"
+ File "..\Skins\Classic\[party]teamPoints.jpg"
+ File "..\Skins\Classic\[party]winDecoration.jpg"
+ File "..\Skins\Classic\[party]winTeamButton1.jpg"
+ File "..\Skins\Classic\[party]winTeamButton2.jpg"
+ File "..\Skins\Classic\[party]winTeamButton3.jpg"
+ File "..\Skins\Classic\[score]box.jpg"
+ File "..\Skins\Classic\[score]level.jpg"
+ File "..\Skins\Classic\[score]levelround.jpg"
+ File "..\Skins\Classic\[score]line.jpg"
+ File "..\Skins\Classic\[sing]lineBonusPopUp.jpg"
+ File "..\Skins\Classic\[sing]LyricsBall.bmp"
+ File "..\Skins\Classic\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Classic\[sing]notesBgLeft.bmp"
+ File "..\Skins\Classic\[sing]notesBgMid.bmp"
+ File "..\Skins\Classic\[sing]notesBgRight.bmp"
+ File "..\Skins\Classic\[sing]notesLeft.bmp"
+ File "..\Skins\Classic\[sing]notesMid.bmp"
+ File "..\Skins\Classic\[sing]notesRight.bmp"
+ File "..\Skins\Classic\[sing]p.jpg"
+ File "..\Skins\Classic\[sing]scoreBg.jpg"
+ File "..\Skins\Classic\[sing]singBarBack.jpg"
+ File "..\Skins\Classic\[sing]singBarBar.jpg"
+ File "..\Skins\Classic\[sing]singBarFront.jpg"
+ File "..\Skins\Classic\[sing]textBar.jpg"
+ File "..\Skins\Classic\[song]BGFade.jpg"
+ File "..\Skins\Classic\[song]EqualizerBG.jpg"
+ File "..\Skins\Classic\[song]selection.jpg"
+ File "..\Skins\Classic\[stat]detailBG1.jpg"
+ File "..\Skins\Classic\[stat]mainBG1.jpg"
+ File "..\Skins\Classic\[stat]mainBG2.jpg"
+ File "..\Skins\Classic\[stat]mainBG3.jpg"
+ SetOutPath "$INSTDIR\Skins\Deluxe"
+ File "..\Skins\Deluxe\Autumn.ini"
+ File "..\Skins\Deluxe\Blue.ini"
+ File "..\Skins\Deluxe\Summer.ini"
+ File "..\Skins\Deluxe\Thumbs.db"
+ File "..\Skins\Deluxe\Winter.ini"
+ File "..\Skins\Deluxe\[bg-load]autumn.jpg"
+ File "..\Skins\Deluxe\[bg-load]blue.jpg"
+ File "..\Skins\Deluxe\[bg-load]summer.jpg"
+ File "..\Skins\Deluxe\[bg-load]winter.jpg"
+ File "..\Skins\Deluxe\[bg-main]autumn.jpg"
+ File "..\Skins\Deluxe\[bg-main]blue.jpg"
+ File "..\Skins\Deluxe\[bg-main]summer.jpg"
+ File "..\Skins\Deluxe\[bg-main]winter.jpg"
+ File "..\Skins\Deluxe\[button]13.png"
+ File "..\Skins\Deluxe\[button]alt.png"
+ File "..\Skins\Deluxe\[button]az.png"
+ File "..\Skins\Deluxe\[button]enter.png"
+ File "..\Skins\Deluxe\[button]esc.png"
+ File "..\Skins\Deluxe\[button]j.png"
+ File "..\Skins\Deluxe\[button]m.png"
+ File "..\Skins\Deluxe\[button]navi.png"
+ File "..\Skins\Deluxe\[button]p.png"
+ File "..\Skins\Deluxe\[effect]goldenNoteStar.jpg"
+ File "..\Skins\Deluxe\[effect]perfectNoteStar.jpg"
+ File "..\Skins\Deluxe\[helper]buttonFade.jpg"
+ File "..\Skins\Deluxe\[helper]rectangle.jpg"
+ File "..\Skins\Deluxe\[icon]cd.jpg"
+ File "..\Skins\Deluxe\[icon]error.jpg"
+ File "..\Skins\Deluxe\[icon]main.jpg"
+ File "..\Skins\Deluxe\[icon]options.jpg"
+ File "..\Skins\Deluxe\[icon]party.jpg"
+ File "..\Skins\Deluxe\[icon]question.jpg"
+ File "..\Skins\Deluxe\[icon]score.jpg"
+ File "..\Skins\Deluxe\[icon]search.jpg"
+ File "..\Skins\Deluxe\[icon]songmenu.jpg"
+ File "..\Skins\Deluxe\[icon]stats.jpg"
+ File "..\Skins\Deluxe\[icon]video.jpg"
+ File "..\Skins\Deluxe\[main]button.jpg"
+ File "..\Skins\Deluxe\[main]buttonf.jpg"
+ File "..\Skins\Deluxe\[main]mainBar.jpg"
+ File "..\Skins\Deluxe\[main]playerNumberBox.jpg"
+ File "..\Skins\Deluxe\[main]selectbg.jpg"
+ File "..\Skins\Deluxe\[main]songCover.jpg"
+ File "..\Skins\Deluxe\[main]songSelection1.jpg"
+ File "..\Skins\Deluxe\[main]songSelection2.jpg"
+ File "..\Skins\Deluxe\[menu]jumpToBg.jpg"
+ File "..\Skins\Deluxe\[menu]PopUpBg.JPG"
+ File "..\Skins\Deluxe\[menu]PopUpFg.JPG"
+ File "..\Skins\Deluxe\[menu]songMenuBg.jpg"
+ File "..\Skins\Deluxe\[menu]songMenuSelectBg.jpg"
+ File "..\Skins\Deluxe\[party]Joker.jpg"
+ File "..\Skins\Deluxe\[party]playerButton.jpg"
+ File "..\Skins\Deluxe\[party]playerTeamButton.jpg"
+ File "..\Skins\Deluxe\[party]pointer.bmp"
+ File "..\Skins\Deluxe\[party]roundBG1.jpg"
+ File "..\Skins\Deluxe\[party]roundBG2.jpg"
+ File "..\Skins\Deluxe\[party]roundBG3.jpg"
+ File "..\Skins\Deluxe\[party]roundBG4.jpg"
+ File "..\Skins\Deluxe\[party]roundTeamButton.jpg"
+ File "..\Skins\Deluxe\[party]scoreBG1.jpg"
+ File "..\Skins\Deluxe\[party]scoreBG2.jpg"
+ File "..\Skins\Deluxe\[party]scoreDecoration.jpg"
+ File "..\Skins\Deluxe\[party]teamPoints.jpg"
+ File "..\Skins\Deluxe\[party]winDecoration.jpg"
+ File "..\Skins\Deluxe\[party]winTeamButton1.jpg"
+ File "..\Skins\Deluxe\[party]winTeamButton2.jpg"
+ File "..\Skins\Deluxe\[party]winTeamButton3.jpg"
+ File "..\Skins\Deluxe\[score]box.jpg"
+ File "..\Skins\Deluxe\[score]endcap.jpg"
+ File "..\Skins\Deluxe\[score]level.jpg"
+ File "..\Skins\Deluxe\[score]levelRound.jpg"
+ File "..\Skins\Deluxe\[score]Line.jpg"
+ File "..\Skins\Deluxe\[sing.player1]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player1]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing.player2]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player2]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing.player3]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player3]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing.player4]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player4]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing.player5]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player5]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing.player6]lyric_active.png"
+ File "..\Skins\Deluxe\[sing.player6]lyric_inactive.png"
+ File "..\Skins\Deluxe\[sing]lineBonusPopUp.jpg"
+ File "..\Skins\Deluxe\[sing]lineBonusPopUp.png"
+ File "..\Skins\Deluxe\[sing]LyricsBall.bmp"
+ File "..\Skins\Deluxe\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Deluxe\[sing]notesBgLeft.png"
+ File "..\Skins\Deluxe\[sing]notesBgMid.png"
+ File "..\Skins\Deluxe\[sing]notesBgRight.png"
+ File "..\Skins\Deluxe\[sing]notesLeft.png"
+ File "..\Skins\Deluxe\[sing]notesMid.png"
+ File "..\Skins\Deluxe\[sing]notesPlainLeft.png"
+ File "..\Skins\Deluxe\[sing]notesPlainMid.png"
+ File "..\Skins\Deluxe\[sing]notesPlainRight.png"
+ File "..\Skins\Deluxe\[sing]notesRight.png"
+ File "..\Skins\Deluxe\[sing]p.png"
+ File "..\Skins\Deluxe\[sing]scoreBg.jpg"
+ File "..\Skins\Deluxe\[sing]scoreBg.png"
+ File "..\Skins\Deluxe\[sing]singBarBack.png"
+ File "..\Skins\Deluxe\[sing]singBarBar.jpg"
+ File "..\Skins\Deluxe\[sing]singBarBar.png"
+ File "..\Skins\Deluxe\[sing]singBarFront.png"
+ File "..\Skins\Deluxe\[sing]textBar.png"
+ File "..\Skins\Deluxe\[sing]timeBar.jpg"
+ File "..\Skins\Deluxe\[sing]timeBarBG.png"
+ File "..\Skins\Deluxe\[special]bar1.png"
+ File "..\Skins\Deluxe\[special]bar2.png"
+ File "..\Skins\Deluxe\[stat]detailBG1.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG1.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG2.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG3.jpg"
+ SetOutPath "$INSTDIR\Sounds"
+ File "..\Sounds\Common back.mp3"
+ File "..\Sounds\Common start.mp3"
+ File "..\Sounds\credits-outro-tune.mp3"
+ File "..\Sounds\dismissed.mp3"
+ File "..\Sounds\menu swoosh.mp3"
+ File "..\Sounds\option change col.mp3"
+ File "..\Sounds\rimshot022b.mp3"
+ File "..\Sounds\select music change music 50.mp3"
+ File "..\Sounds\select music change music.mp3"
+ File "..\Sounds\wome-credits-tune.mp3"
+ SetOutPath "$INSTDIR\Themes"
+ File "..\Themes\Classic.ini"
+ File "..\Themes\Deluxe.ini"
+
+; Shortcuts
+ !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
+ CreateDirectory "$SMPROGRAMS\$ICONS_GROUP"
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\UltraStar Deluxe.lnk" "$INSTDIR\UltraStar.exe"
+ CreateShortCut "$DESKTOP\UltraStar Deluxe.lnk" "$INSTDIR\UltraStar.exe"
+ !insertmacro MUI_STARTMENU_WRITE_END
+SectionEnd
+
+Section -AdditionalIcons
+ !insertmacro MUI_STARTMENU_WRITE_BEGIN Application
+ WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}"
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url"
+ CreateShortCut "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk" "$INSTDIR\uninst.exe"
+ !insertmacro MUI_STARTMENU_WRITE_END
+SectionEnd
+
+Section -Post
+ WriteUninstaller "$INSTDIR\uninst.exe"
+ WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\UltraStar.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\UltraStar.exe"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
+ WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"
+SectionEnd
+
+
+Function un.onUninstSuccess
+ HideWindow
+ MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer."
+FunctionEnd
+
+Function un.onInit
+ MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2
+ Abort
+FunctionEnd
+
+Section Uninstall
+ !insertmacro MUI_STARTMENU_GETFOLDER "Application" $ICONS_GROUP
+ Delete "$INSTDIR\${PRODUCT_NAME}.url"
+ Delete "$INSTDIR\uninst.exe"
+ Delete "$INSTDIR\Deluxe.ini"
+ Delete "$INSTDIR\Classic.ini"
+ Delete "$INSTDIR\wome-credits-tune.mp3"
+ Delete "$INSTDIR\select music change music.mp3"
+ Delete "$INSTDIR\select music change music 50.mp3"
+ Delete "$INSTDIR\rimshot022b.mp3"
+ Delete "$INSTDIR\option change col.mp3"
+ Delete "$INSTDIR\menu swoosh.mp3"
+ Delete "$INSTDIR\dismissed.mp3"
+ Delete "$INSTDIR\credits-outro-tune.mp3"
+ Delete "$INSTDIR\Common start.mp3"
+ Delete "$INSTDIR\Common back.mp3"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG3.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[special]bar2.png"
+ Delete "$INSTDIR\DeluxSkins\e\[special]bar1.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]timeBarBG.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]timeBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]textBar.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarFront.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarBar.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarBack.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]scoreBg.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]p.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesRight.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesPlainRight.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesPlainMid.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesPlainLeft.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesMid.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesLeft.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgRight.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgMid.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgLeft.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]lineBonusPopUp.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player6]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player6]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player5]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player5]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player4]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player4]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player3]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player3]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player2]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player2]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player1]lyric_inactive.png"
+ Delete "$INSTDIR\Skins\Deluxe\[sing.player1]lyric_active.png"
+ Delete "$INSTDIR\Skins\Deluxe\[score]Line.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]levelRound.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]endcap.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winDecoration.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]songMenuSelectBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songSelection2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songSelection1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]selectbg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]playerNumberBox.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]mainBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]buttonf.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]button.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]songmenu.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]search.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]score.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]party.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]options.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]main.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]cd.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[helper]buttonFade.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]p.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]navi.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]m.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]j.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]esc.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]enter.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]az.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]alt.png"
+ Delete "$INSTDIR\Skins\Deluxe\[button]13.png"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]winter.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]summer.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]blue.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]autumn.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]winter.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]summer.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]blue.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]autumn.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\Winter.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Thumbs.db"
+ Delete "$INSTDIR\Skins\Deluxe\Summer.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Blue.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Autumn.ini"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]selection.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]EqualizerBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]BGFade.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]line.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]levelround.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winDecoration.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Classic\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuSelectBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuButtonBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuBorder.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Classic\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Classic\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]square.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Logo.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]ButtonEditor.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Bar1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Bar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Stats.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Solo.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Options.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Multi.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Exit.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]Star.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Classic\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Classic\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]e.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Classic\Star.ini"
+ Delete "$INSTDIR\avcodec-51.dll"
+ Delete "$INSTDIR\avformat-50.dll"
+ Delete "$INSTDIR\avutil-49.dll"
+ Delete "$INSTDIR\bass.dll"
+ Delete "$INSTDIR\jpeg.dll"
+ Delete "$INSTDIR\libpng12-0.dll"
+ Delete "$INSTDIR\libtiff-3.dll"
+ Delete "$INSTDIR\SDL.dll"
+ Delete "$INSTDIR\SDL_image.dll"
+ Delete "$INSTDIR\smpeg.dll"
+ Delete "$INSTDIR\sqlite3.dll"
+ Delete "$INSTDIR\UltraStar.exe"
+ Delete "$INSTDIR\config.ini"
+
+ Delete "$INSTDIR\Languages\Catalan.ini"
+ Delete "$INSTDIR\Languages\Dutch.ini"
+ Delete "$INSTDIR\Languages\English.ini"
+ Delete "$INSTDIR\Languages\French.ini"
+ Delete "$INSTDIR\Languages\German.ini"
+ Delete "$INSTDIR\Languages\Italian.ini"
+ Delete "$INSTDIR\Languages\Norwegian.ini"
+ Delete "$INSTDIR\Languages\Spanish.ini"
+ Delete "$INSTDIR\Languages\Swedish.ini"
+ Delete "$INSTDIR\Languages\readme.txt"
+
+
+
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Website.lnk"
+ Delete "$DESKTOP\UltraStar Deluxe.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\UltraStar Deluxe.lnk"
+
+ RMDir "$SMPROGRAMS\$ICONS_GROUP"
+ RMDir "$INSTDIR\Deluxe"
+ RMDir "$INSTDIR\Classic"
+ RMDir "$INSTDIR"
+
+ DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
+ DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
+ SetAutoClose true
+SectionEnd
+
|