aboutsummaryrefslogtreecommitdiffstats
path: root/Installer
diff options
context:
space:
mode:
Diffstat (limited to 'Installer')
-rw-r--r--Installer/clanguage/English.nsh94
-rw-r--r--Installer/clanguage/German.nsh94
-rw-r--r--Installer/gdf/UltraStar Deluxe.gdf.xmlbin0 -> 3494 bytes
-rw-r--r--Installer/gdf/UltraStar Deluxe.rc34
-rw-r--r--Installer/gdf/boxart.pngbin0 -> 79264 bytes
-rw-r--r--Installer/gdf/gameicon.icobin0 -> 22486 bytes
-rw-r--r--Installer/gdf/gameux.h250
-rw-r--r--Installer/settings/GameExplorer.nsh198
-rw-r--r--Installer/settings/files_in.nsh263
-rw-r--r--Installer/settings/files_un.nsh332
-rw-r--r--Installer/settings/functions.nsh78
-rw-r--r--Installer/settings/io.ini19
-rw-r--r--Installer/settings/langstrings.nsh69
-rw-r--r--Installer/settings/optional/in_orange.nsh102
-rw-r--r--Installer/settings/optional/in_streetlight.nsh100
-rw-r--r--Installer/settings/optional/in_vistar.nsh102
-rw-r--r--Installer/settings/optional/opt_uninstall.nsh292
-rw-r--r--Installer/settings/settings-1031.ini131
-rw-r--r--Installer/settings/settings-1033.ini131
-rw-r--r--Installer/settings/variables.nsh67
20 files changed, 2356 insertions, 0 deletions
diff --git a/Installer/clanguage/English.nsh b/Installer/clanguage/English.nsh
new file mode 100644
index 00000000..795abfde
--- /dev/null
+++ b/Installer/clanguage/English.nsh
@@ -0,0 +1,94 @@
+;NSIS Modern User Interface - Language File
+;Compatible with Modern UI 1.68
+
+;Language: English (1033)
+;By Joost Verburg
+
+;--------------------------------
+
+!insertmacro MUI_LANGUAGEFILE_BEGIN "English"
+
+ !define MUI_LANGNAME "English" ;Use only ASCII characters (if this is not possible, use the English name)
+
+ !define MUI_TEXT_WELCOME_INFO_TITLE "Welcome to the $(^NameDA) Setup Wizard"
+ !define MUI_TEXT_WELCOME_INFO_TEXT "This wizard will guide you through the installation of $(^NameDA).\r\n\r\nIt is recommended that you close all other applications before starting Setup. This will make it possible to update relevant system files without having to reboot your computer.\r\n\r\n$_CLICK"
+
+ !define MUI_TEXT_LICENSE_TITLE "License Agreement"
+ !define MUI_TEXT_LICENSE_SUBTITLE "Please review the license terms before installing $(^NameDA)."
+ !define MUI_INNERTEXT_LICENSE_TOP "Press Page Down to see the rest of the agreement."
+ !define MUI_INNERTEXT_LICENSE_BOTTOM "If you accept the terms of the agreement, click I Agree to continue. You must accept the agreement to install $(^NameDA)."
+ !define MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX "If you accept the terms of the agreement, click the check box below. You must accept the agreement to install $(^NameDA). $_CLICK"
+ !define MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "If you accept the terms of the agreement, select the first option below. You must accept the agreement to install $(^NameDA). $_CLICK"
+
+ !define MUI_TEXT_COMPONENTS_TITLE "Choose Components"
+ !define MUI_TEXT_COMPONENTS_SUBTITLE "Choose which features of $(^NameDA) you want to install."
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE "Description"
+ !ifndef NSIS_CONFIG_COMPONENTPAGE_ALTERNATIVE
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Position your mouse over a component to see its description."
+ !else
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Select a component to see its description."
+ !endif
+
+ !define MUI_TEXT_DIRECTORY_TITLE "Choose Install Location"
+ !define MUI_TEXT_DIRECTORY_SUBTITLE "Choose the folder in which to install $(^NameDA)."
+
+ !define MUI_TEXT_INSTALLING_TITLE "Installing"
+ !define MUI_TEXT_INSTALLING_SUBTITLE "Please wait while $(^NameDA) is being installed."
+
+ !define MUI_TEXT_FINISH_TITLE "Installation Complete"
+ !define MUI_TEXT_FINISH_SUBTITLE "Setup was completed successfully."
+
+ !define MUI_TEXT_ABORT_TITLE "Installation Aborted"
+ !define MUI_TEXT_ABORT_SUBTITLE "Setup was not completed successfully."
+
+ !define MUI_BUTTONTEXT_FINISH "&Finish"
+ !define MUI_TEXT_FINISH_INFO_TITLE "Completing the $(^NameDA) Setup Wizard"
+ !define MUI_TEXT_FINISH_INFO_TEXT "$(^NameDA) has been installed on your computer.\r\n\r\nClick Finish to close this wizard."
+ !define MUI_TEXT_FINISH_INFO_REBOOT "Your computer must be restarted in order to complete the installation of $(^NameDA). Do you want to reboot now?"
+ !define MUI_TEXT_FINISH_REBOOTNOW "Reboot now"
+ !define MUI_TEXT_FINISH_REBOOTLATER "I want to manually reboot later"
+ !define MUI_TEXT_FINISH_RUN "&Run $(^NameDA)"
+ !define MUI_TEXT_FINISH_SHOWREADME "&Show Readme"
+
+ !define MUI_TEXT_STARTMENU_TITLE "Choose Start Menu Folder"
+ !define MUI_TEXT_STARTMENU_SUBTITLE "Choose a Start Menu folder for the $(^NameDA) shortcuts."
+ !define MUI_INNERTEXT_STARTMENU_TOP "Select the Start Menu folder in which you would like to create the program's shortcuts. You can also enter a name to create a new folder."
+ !define MUI_INNERTEXT_STARTMENU_CHECKBOX "Do not create shortcuts"
+
+ !define MUI_TEXT_ABORTWARNING "Are you sure you want to quit $(^Name) Setup?"
+
+
+ !define MUI_UNTEXT_WELCOME_INFO_TITLE "Welcome to the $(^NameDA) Uninstall Wizard"
+ !define MUI_UNTEXT_WELCOME_INFO_TEXT "This wizard will guide you through the uninstallation of $(^NameDA).\r\n\r\nBefore starting the uninstallation, make sure $(^NameDA) is not running.\r\n\r\n$_CLICK"
+
+ !define MUI_UNTEXT_CONFIRM_TITLE "Uninstall $(^NameDA)"
+ !define MUI_UNTEXT_CONFIRM_SUBTITLE "Remove $(^NameDA) from your computer."
+
+ !define MUI_UNTEXT_LICENSE_TITLE "License Agreement"
+ !define MUI_UNTEXT_LICENSE_SUBTITLE "Please review the license terms before uninstalling $(^NameDA)."
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM "If you accept the terms of the agreement, click I Agree to continue. You must accept the agreement to uninstall $(^NameDA)."
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM_CHECKBOX "If you accept the terms of the agreement, click the check box below. You must accept the agreement to uninstall $(^NameDA). $_CLICK"
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "If you accept the terms of the agreement, select the first option below. You must accept the agreement to uninstall $(^NameDA). $_CLICK"
+
+ !define MUI_UNTEXT_COMPONENTS_TITLE "Choose Components"
+ !define MUI_UNTEXT_COMPONENTS_SUBTITLE "Choose which features of $(^NameDA) you want to uninstall."
+
+ !define MUI_UNTEXT_DIRECTORY_TITLE "Choose Uninstall Location"
+ !define MUI_UNTEXT_DIRECTORY_SUBTITLE "Choose the folder from which to uninstall $(^NameDA)."
+
+ !define MUI_UNTEXT_UNINSTALLING_TITLE "Uninstalling"
+ !define MUI_UNTEXT_UNINSTALLING_SUBTITLE "Please wait while $(^NameDA) is being uninstalled."
+
+ !define MUI_UNTEXT_FINISH_TITLE "Uninstallation Complete"
+ !define MUI_UNTEXT_FINISH_SUBTITLE "Uninstall was completed successfully."
+
+ !define MUI_UNTEXT_ABORT_TITLE "Uninstallation Aborted"
+ !define MUI_UNTEXT_ABORT_SUBTITLE "Uninstall was not completed successfully."
+
+ !define MUI_UNTEXT_FINISH_INFO_TITLE "Completing the $(^NameDA) Uninstall Wizard"
+ !define MUI_UNTEXT_FINISH_INFO_TEXT "$(^NameDA) has been uninstalled from your computer.\r\n\r\nClick Finish to close this wizard."
+ !define MUI_UNTEXT_FINISH_INFO_REBOOT "Your computer must be restarted in order to complete the uninstallation of $(^NameDA). Do you want to reboot now?"
+
+ !define MUI_UNTEXT_ABORTWARNING "Are you sure you want to quit $(^Name) Uninstall?"
+
+!insertmacro MUI_LANGUAGEFILE_END \ No newline at end of file
diff --git a/Installer/clanguage/German.nsh b/Installer/clanguage/German.nsh
new file mode 100644
index 00000000..54c271b8
--- /dev/null
+++ b/Installer/clanguage/German.nsh
@@ -0,0 +1,94 @@
+;NSIS Modern User Interface - Language File
+;Compatible with Modern UI 1.68
+
+;Language: German (1031)
+;By L.King, changes by K. Windszus & R. Bisswanger & M. Simmack & D. Weiß
+
+;--------------------------------
+
+!insertmacro MUI_LANGUAGEFILE_BEGIN "German"
+
+ !define MUI_LANGNAME "Deutsch" ;Use only ASCII characters (if this is not possible, use the English name)
+
+ !define MUI_TEXT_WELCOME_INFO_TITLE "Willkommen beim Installations-\r\nAssistenten für $(^NameDA)"
+ !define MUI_TEXT_WELCOME_INFO_TEXT "Dieser Assistent wird Sie durch die Installation von $(^NameDA) begleiten.\r\n\r\nEs wird empfohlen, vor der Installation alle anderen Programme zu schließen, damit bestimmte Systemdateien ohne Neustart ersetzt werden können.\r\n\r\n$_CLICK"
+
+ !define MUI_TEXT_LICENSE_TITLE "Lizenzabkommen"
+ !define MUI_TEXT_LICENSE_SUBTITLE "Bitte lesen Sie die Lizenzbedingungen durch, bevor Sie mit der Installation fortfahren."
+ !define MUI_INNERTEXT_LICENSE_TOP "Drücken Sie die Bild-nach-unten Taste, um den Rest des Abkommens zu sehen."
+ !define MUI_INNERTEXT_LICENSE_BOTTOM "Falls Sie alle Bedingungen des Abkommens akzeptieren, klicken Sie auf Annehmen. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) installieren zu können."
+ !define MUI_INNERTEXT_LICENSE_BOTTOM_CHECKBOX "Falls Sie alle Bedingungen des Abkommens akzeptieren, aktivieren Sie das Kästchen. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) installieren zu können. $_CLICK"
+ !define MUI_INNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "Falls Sie alle Bedingungen des Abkommens akzeptieren, wählen Sie unten die entsprechende Option. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) installieren zu können. $_CLICK"
+
+ !define MUI_TEXT_COMPONENTS_TITLE "Komponenten auswählen"
+ !define MUI_TEXT_COMPONENTS_SUBTITLE "Wählen Sie die Komponenten aus, die Sie installieren möchten."
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE "Beschreibung"
+ !ifndef NSIS_CONFIG_COMPONENTPAGE_ALTERNATIVE
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Bewegen Sie den Mauszeiger über eine Komponente, um ihre Beschreibung zu sehen."
+ !else
+ !define MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO "Selektieren Sie eine Komponente, um ihre Beschreibung zu sehen."
+ !endif
+
+ !define MUI_TEXT_DIRECTORY_TITLE "Zielverzeichnis auswählen"
+ !define MUI_TEXT_DIRECTORY_SUBTITLE "Wählen Sie das Verzeichnis aus, in das $(^NameDA) installiert werden soll."
+
+ !define MUI_TEXT_INSTALLING_TITLE "Installiere..."
+ !define MUI_TEXT_INSTALLING_SUBTITLE "Bitte warten Sie, während $(^NameDA) installiert wird."
+
+ !define MUI_TEXT_FINISH_TITLE "Die Installation ist vollständig"
+ !define MUI_TEXT_FINISH_SUBTITLE "Die Installation wurde erfolgreich abgeschlossen."
+
+ !define MUI_TEXT_ABORT_TITLE "Abbruch der Installation"
+ !define MUI_TEXT_ABORT_SUBTITLE "Die Installation wurde nicht vollständig abgeschlossen."
+
+ !define MUI_BUTTONTEXT_FINISH "&Fertig stellen"
+ !define MUI_TEXT_FINISH_INFO_TITLE "Die Installation von $(^NameDA) wird abgeschlossen"
+ !define MUI_TEXT_FINISH_INFO_TEXT "$(^NameDA) wurde auf Ihrem Computer installiert.\r\n\r\nKlicken Sie auf Fertig stellen, um den Installations-Assistenten zu schließen."
+ !define MUI_TEXT_FINISH_INFO_REBOOT "Windows muss neu gestartet werden, um die Installation von $(^NameDA) zu vervollständigen. Möchten Sie Windows jetzt neu starten?"
+ !define MUI_TEXT_FINISH_REBOOTNOW "Jetzt neu starten"
+ !define MUI_TEXT_FINISH_REBOOTLATER "Windows später selbst neu starten"
+ !define MUI_TEXT_FINISH_RUN "$(^NameDA) ausführen"
+ !define MUI_TEXT_FINISH_SHOWREADME "Liesmich anzeigen"
+
+ !define MUI_TEXT_STARTMENU_TITLE "Startmenü-Ordner bestimmen"
+ !define MUI_TEXT_STARTMENU_SUBTITLE "Bestimmen Sie einen Startmenü-Ordner für die Programmverknüpfungen."
+ !define MUI_INNERTEXT_STARTMENU_TOP "Wählen Sie den Startmenü-Ordner für die Programmverknüpfungen aus. Falls Sie einen neuen Ordner erstellen möchten, geben Sie dessen Namen ein."
+ !define MUI_INNERTEXT_STARTMENU_CHECKBOX "Keine Verknüpfungen erstellen"
+
+ !define MUI_TEXT_ABORTWARNING "Sind Sie sicher, dass Sie die Installation von $(^Name) abbrechen wollen?"
+
+
+ !define MUI_UNTEXT_WELCOME_INFO_TITLE "Deinstallations-Assistent von $(^NameDA)"
+ !define MUI_UNTEXT_WELCOME_INFO_TEXT "Dieser Assistent wird Sie durch die Deinstallation von $(^NameDA) begleiten.\r\n\r\nBitte beenden Sie $(^NameDA), bevor Sie mit der Deinstallation fortfahren.\r\n\r\n$_CLICK"
+
+ !define MUI_UNTEXT_CONFIRM_TITLE "Deinstallation von $(^NameDA)"
+ !define MUI_UNTEXT_CONFIRM_SUBTITLE "$(^NameDA) wird von Ihrem Computer entfernt."
+
+ !define MUI_UNTEXT_LICENSE_TITLE "Lizenzabkommen"
+ !define MUI_UNTEXT_LICENSE_SUBTITLE "Bitte lesen Sie die Lizenzbedingungen durch, bevor Sie mit der Deinstallation von $(^NameDA) fortfahren."
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM "Falls Sie alle Bedingungen des Abkommens akzeptieren, klicken Sie auf Annehmen. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) deinstallieren zu können."
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM_CHECKBOX "Falls Sie alle Bedingungen des Abkommens akzeptieren, aktivieren Sie das Kästchen. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) deinstallieren zu können. $_CLICK"
+ !define MUI_UNINNERTEXT_LICENSE_BOTTOM_RADIOBUTTONS "Falls Sie alle Bedingungen des Abkommens akzeptieren, wählen Sie unten die entsprechende Option. Sie müssen die Lizenzvereinbarungen anerkennen, um $(^NameDA) deinstallieren zu können. $_CLICK"
+
+ !define MUI_UNTEXT_COMPONENTS_TITLE "Komponenten auswählen"
+ !define MUI_UNTEXT_COMPONENTS_SUBTITLE "Wählen Sie die Komponenten aus, die Sie entfernen möchten."
+
+ !define MUI_UNTEXT_DIRECTORY_TITLE "Verzeichnis für Deinstallation auswählen"
+ !define MUI_UNTEXT_DIRECTORY_SUBTITLE "Wählen Sie das Verzeichnis aus, aus dem $(^NameDA) entfernt werden soll."
+
+ !define MUI_UNTEXT_UNINSTALLING_TITLE "Deinstalliere..."
+ !define MUI_UNTEXT_UNINSTALLING_SUBTITLE "Bitte warten Sie, während $(^NameDA) entfernt wird."
+
+ !define MUI_UNTEXT_FINISH_TITLE "Die Deinstallation ist vollständig"
+ !define MUI_UNTEXT_FINISH_SUBTITLE "Die Deinstallation wurde erfolgreich abgeschlossen."
+
+ !define MUI_UNTEXT_ABORT_TITLE "Abbruch der Deinstallation"
+ !define MUI_UNTEXT_ABORT_SUBTITLE "Die Deinstallation wurde nicht vollständig abgeschlossen."
+
+ !define MUI_UNTEXT_FINISH_INFO_TITLE "Die Deinstallation von $(^NameDA) wird abgeschlossen"
+ !define MUI_UNTEXT_FINISH_INFO_TEXT "$(^NameDA) ist von ihrem Computer entfernt worden.\r\n\r\nKlicken Sie auf Fertig stellen, um den Assistenten zu schließen."
+ !define MUI_UNTEXT_FINISH_INFO_REBOOT "Windows muss neu gestartet werden, um die Deinstallation von $(^NameDA) zu vervollständigen. Möchten Sie Windows jetzt neu starten?"
+
+ !define MUI_UNTEXT_ABORTWARNING "Sind Sie sicher, dass Sie die Deinstallation von $(^Name) abbrechen möchten?"
+
+!insertmacro MUI_LANGUAGEFILE_END \ No newline at end of file
diff --git a/Installer/gdf/UltraStar Deluxe.gdf.xml b/Installer/gdf/UltraStar Deluxe.gdf.xml
new file mode 100644
index 00000000..a231a4d5
--- /dev/null
+++ b/Installer/gdf/UltraStar Deluxe.gdf.xml
Binary files differ
diff --git a/Installer/gdf/UltraStar Deluxe.rc b/Installer/gdf/UltraStar Deluxe.rc
new file mode 100644
index 00000000..0e8089b5
--- /dev/null
+++ b/Installer/gdf/UltraStar Deluxe.rc
@@ -0,0 +1,34 @@
+/////////////////////////////////////////////////////////////////////////////
+// Resource File for : UltraStar Deluxe
+#include "UltraStar Deluxe.h"
+
+#define _INC_CRTDEFS
+
+
+/////////////////////////////////////////////////////////////////////////////
+// This resource files requires the Platform SDK to be compiled.
+#include <gameux.h>
+
+
+#define APSTUDIO_READONLY_SYMBOLS
+
+#include <afxres.h>
+
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// Neutral Resources
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
+#ifdef _WIN32
+
+LANGUAGE LANG_NEUTRAL, SUBLANG_DEFAULT
+#pragma code_page(DEFAULT)
+#endif //_WIN32
+
+ID_GDF_XML DATA "UltraStar Deluxe.gdf.xml"
+ID_GDF_THUMBNAIL DATA "boxart.png"
+ID_ICON ICON "gameicon.ico"
+
+#endif
+// Neutral resources
+/////////////////////////////////////////////////////////////////////////////
diff --git a/Installer/gdf/boxart.png b/Installer/gdf/boxart.png
new file mode 100644
index 00000000..29a82960
--- /dev/null
+++ b/Installer/gdf/boxart.png
Binary files differ
diff --git a/Installer/gdf/gameicon.ico b/Installer/gdf/gameicon.ico
new file mode 100644
index 00000000..f3214d1a
--- /dev/null
+++ b/Installer/gdf/gameicon.ico
Binary files differ
diff --git a/Installer/gdf/gameux.h b/Installer/gdf/gameux.h
new file mode 100644
index 00000000..fa5b20a2
--- /dev/null
+++ b/Installer/gdf/gameux.h
@@ -0,0 +1,250 @@
+
+
+/* this ALWAYS GENERATED file contains the definitions for the interfaces */
+
+
+ /* File created by MIDL compiler version 7.00.0486 */
+/* Compiler settings for gameux.idl:
+ Oicf, W1, Zp8, env=Win32 (32b run)
+ protocol : dce , ms_ext, c_ext, robust
+ error checks: allocation ref bounds_check enum stub_data
+ VC __declspec() decoration level:
+ __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+ DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
+//@@MIDL_FILE_HEADING( )
+
+#pragma warning( disable: 4049 ) /* more than 64k source lines */
+
+
+/* verify that the <rpcndr.h> version is high enough to compile this file*/
+#ifndef __REQUIRED_RPCNDR_H_VERSION__
+#define __REQUIRED_RPCNDR_H_VERSION__ 475
+#endif
+
+/* verify that the <rpcsal.h> version is high enough to compile this file*/
+#ifndef __REQUIRED_RPCSAL_H_VERSION__
+#define __REQUIRED_RPCSAL_H_VERSION__ 100
+#endif
+
+#include "rpc.h"
+#include "rpcndr.h"
+
+#ifndef __RPCNDR_H_VERSION__
+#error this stub requires an updated version of <rpcndr.h>
+#endif // __RPCNDR_H_VERSION__
+
+#ifndef COM_NO_WINDOWS_H
+#include "windows.h"
+#include "ole2.h"
+#endif /*COM_NO_WINDOWS_H*/
+
+#ifndef __gameux_h__
+#define __gameux_h__
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#pragma once
+#endif
+
+/* Forward Declarations */
+
+#ifndef __IGameExplorer_FWD_DEFINED__
+#define __IGameExplorer_FWD_DEFINED__
+typedef interface IGameExplorer IGameExplorer;
+#endif /* __IGameExplorer_FWD_DEFINED__ */
+
+
+#ifndef __GameExplorer_FWD_DEFINED__
+#define __GameExplorer_FWD_DEFINED__
+
+#ifdef __cplusplus
+typedef class GameExplorer GameExplorer;
+#else
+typedef struct GameExplorer GameExplorer;
+#endif /* __cplusplus */
+
+#endif /* __GameExplorer_FWD_DEFINED__ */
+
+
+/* header files for imported files */
+#include "oaidl.h"
+#include "ocidl.h"
+#include "shobjidl.h"
+
+#ifdef __cplusplus
+extern "C"{
+#endif
+
+
+/* interface __MIDL_itf_gameux_0000_0000 */
+/* [local] */
+
+#define ID_GDF_XML __GDF_XML
+#define ID_GDF_THUMBNAIL __GDF_THUMBNAIL
+#define ID_ICON_ICO __ICON_ICO
+#define ID_GDF_XML_STR L"__GDF_XML"
+#define ID_GDF_THUMBNAIL_STR L"__GDF_THUMBNAIL"
+typedef /* [v1_enum] */
+enum GAME_INSTALL_SCOPE
+ { GIS_NOT_INSTALLED = 1,
+ GIS_CURRENT_USER = 2,
+ GIS_ALL_USERS = 3
+ } GAME_INSTALL_SCOPE;
+
+
+
+extern RPC_IF_HANDLE __MIDL_itf_gameux_0000_0000_v0_0_c_ifspec;
+extern RPC_IF_HANDLE __MIDL_itf_gameux_0000_0000_v0_0_s_ifspec;
+
+#ifndef __IGameExplorer_INTERFACE_DEFINED__
+#define __IGameExplorer_INTERFACE_DEFINED__
+
+/* interface IGameExplorer */
+/* [unique][helpstring][uuid][object] */
+
+
+EXTERN_C const IID IID_IGameExplorer;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+
+ MIDL_INTERFACE("E7B2FB72-D728-49B3-A5F2-18EBF5F1349E")
+ IGameExplorer : public IUnknown
+ {
+ public:
+ virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddGame(
+ /* [in] */ __RPC__in BSTR bstrGDFBinaryPath,
+ /* [in] */ __RPC__in BSTR bstrGameInstallDirectory,
+ /* [in] */ GAME_INSTALL_SCOPE installScope,
+ /* [out][in] */ __RPC__inout GUID *pguidInstanceID) = 0;
+
+ virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveGame(
+ /* [in] */ GUID guidInstanceID) = 0;
+
+ virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UpdateGame(
+ /* [in] */ GUID guidInstanceID) = 0;
+
+ virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE VerifyAccess(
+ /* [in] */ __RPC__in BSTR bstrGDFBinaryPath,
+ /* [out] */ __RPC__out BOOL *pfHasAccess) = 0;
+
+ };
+
+#else /* C style interface */
+
+ typedef struct IGameExplorerVtbl
+ {
+ BEGIN_INTERFACE
+
+ HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
+ IGameExplorer * This,
+ /* [in] */ __RPC__in REFIID riid,
+ /* [iid_is][out] */
+ __RPC__deref_out void **ppvObject);
+
+ ULONG ( STDMETHODCALLTYPE *AddRef )(
+ IGameExplorer * This);
+
+ ULONG ( STDMETHODCALLTYPE *Release )(
+ IGameExplorer * This);
+
+ /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddGame )(
+ IGameExplorer * This,
+ /* [in] */ __RPC__in BSTR bstrGDFBinaryPath,
+ /* [in] */ __RPC__in BSTR bstrGameInstallDirectory,
+ /* [in] */ GAME_INSTALL_SCOPE installScope,
+ /* [out][in] */ __RPC__inout GUID *pguidInstanceID);
+
+ /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveGame )(
+ IGameExplorer * This,
+ /* [in] */ GUID guidInstanceID);
+
+ /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UpdateGame )(
+ IGameExplorer * This,
+ /* [in] */ GUID guidInstanceID);
+
+ /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *VerifyAccess )(
+ IGameExplorer * This,
+ /* [in] */ __RPC__in BSTR bstrGDFBinaryPath,
+ /* [out] */ __RPC__out BOOL *pfHasAccess);
+
+ END_INTERFACE
+ } IGameExplorerVtbl;
+
+ interface IGameExplorer
+ {
+ CONST_VTBL struct IGameExplorerVtbl *lpVtbl;
+ };
+
+
+
+#ifdef COBJMACROS
+
+
+#define IGameExplorer_QueryInterface(This,riid,ppvObject) \
+ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
+
+#define IGameExplorer_AddRef(This) \
+ ( (This)->lpVtbl -> AddRef(This) )
+
+#define IGameExplorer_Release(This) \
+ ( (This)->lpVtbl -> Release(This) )
+
+
+#define IGameExplorer_AddGame(This,bstrGDFBinaryPath,bstrGameInstallDirectory,installScope,pguidInstanceID) \
+ ( (This)->lpVtbl -> AddGame(This,bstrGDFBinaryPath,bstrGameInstallDirectory,installScope,pguidInstanceID) )
+
+#define IGameExplorer_RemoveGame(This,guidInstanceID) \
+ ( (This)->lpVtbl -> RemoveGame(This,guidInstanceID) )
+
+#define IGameExplorer_UpdateGame(This,guidInstanceID) \
+ ( (This)->lpVtbl -> UpdateGame(This,guidInstanceID) )
+
+#define IGameExplorer_VerifyAccess(This,bstrGDFBinaryPath,pfHasAccess) \
+ ( (This)->lpVtbl -> VerifyAccess(This,bstrGDFBinaryPath,pfHasAccess) )
+
+#endif /* COBJMACROS */
+
+
+#endif /* C style interface */
+
+
+
+
+#endif /* __IGameExplorer_INTERFACE_DEFINED__ */
+
+
+
+#ifndef __gameuxLib_LIBRARY_DEFINED__
+#define __gameuxLib_LIBRARY_DEFINED__
+
+/* library gameuxLib */
+/* [helpstring][version][uuid] */
+
+
+EXTERN_C const IID LIBID_gameuxLib;
+
+EXTERN_C const CLSID CLSID_GameExplorer;
+
+#ifdef __cplusplus
+
+class DECLSPEC_UUID("9A5EA990-3034-4D6F-9128-01F3C61022BC")
+GameExplorer;
+#endif
+#endif /* __gameuxLib_LIBRARY_DEFINED__ */
+
+/* Additional Prototypes for ALL interfaces */
+
+unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
+unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
+unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
+void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
+
+/* end of Additional Prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
diff --git a/Installer/settings/GameExplorer.nsh b/Installer/settings/GameExplorer.nsh
new file mode 100644
index 00000000..d5056661
--- /dev/null
+++ b/Installer/settings/GameExplorer.nsh
@@ -0,0 +1,198 @@
+# user interface
+
+!define GameExplorer_GenerateGUID '!insertmacro GameExplorer_GenerateGUID'
+!define GameExplorer_AddGame '!insertmacro GameExplorer_AddGame'
+!define GameExplorer_UpdateGame '!insertmacro GameExplorer_UpdateGame'
+!define GameExplorer_RemoveGame '!insertmacro GameExplorer_RemoveGame'
+
+# internal stuff
+
+!define CLSCTX_INPROC_SERVER 1
+!define IID_IGameExplorer {E7B2FB72-D728-49B3-A5F2-18EBF5F1349E}
+!define CLSID_GameExplorer {9A5EA990-3034-4D6F-9128-01F3C61022BC}
+
+!define GIS_CURRENT_USER 2
+!define GIS_ALL_USERS 3
+
+!define IGameExplorer_QueryInterface 0
+!define IGameExplorer_AddRef 1
+!define IGameExplorer_Release 2
+!define IGameExplorer_AddGame 3
+!define IGameExplorer_RemoveGame 4
+!define IGameExplorer_UpdateGame 5
+!define IGameExplorer_VerifyAccess 6
+
+# includes
+
+!include LogicLib.nsh
+
+# the actual code
+
+!macro GameExplorer_GenerateGUID
+
+ System::Call 'ole32::CoCreateGuid(g .s)'
+
+!macroend
+
+!macro GameExplorer_AddGame CONTEXT GDF INSTDIR EXE GUID
+
+ !define __GAME_EXPLORER_UNIQUE "${__LINE__}${__FILE__}"
+
+ Push $0
+ Push $1
+
+ Push $R0
+ Push $R1
+ Push $R2
+ Push $R3
+
+ Push "${EXE}"
+ Push "${GUID}"
+ Push "${INSTDIR}"
+ Push "${GDF}"
+
+ Pop $R0 # == ${GDF}
+ Pop $R1 # == ${INSTDIR}
+ Pop $R2 # == ${GUID}
+ Pop $R3 # == ${EXE}
+
+ ClearErrors
+
+ System::Call "ole32::CoCreateInstance( \
+ g '${CLSID_GameExplorer}', i 0, \
+ i ${CLSCTX_INPROC_SERVER}, \
+ g '${IID_IGameExplorer}', *i .r1) i .r0"
+
+ ${If} $0 != 0 # S_OK
+
+ SetErrors
+ Goto "done_${__GAME_EXPLORER_UNIQUE}"
+
+ ${EndIf}
+
+ !if ${CONTEXT} == all
+
+ System::Call "$1->${IGameExplorer_AddGame}(w R0, w R1, i ${GIS_ALL_USERS}, g R2) i .r0"
+
+ !else if ${CONTEXT} == user
+
+ System::Call "$1->${IGameExplorer_AddGame}(w R1, w R0, i ${GIS_CURRENT_USER}, g R2) i .r0"
+
+ !else
+
+ !error "Invalid CONTEXT passed to GameExplorer_AddGame! Must be `user` or `all`."
+
+ !endif
+
+ ${If} $0 != 0 # S_OK
+
+ SetErrors
+
+ ${Else}
+
+ # Create play task
+
+ !if ${CONTEXT} == all
+
+ SetShellVarContext all
+
+ !else if if ${CONTEXT} == user
+
+ SetShellVarContext user
+
+ !endif
+
+ CreateDirectory $APPDATA\Microsoft\Windows\GameExplorer\$R2\PlayTasks\0
+ CreateShortcut $APPDATA\Microsoft\Windows\GameExplorer\$R2\PlayTasks\0\Play.lnk $R3
+
+ ${EndIf}
+
+ System::Call "$1->${IGameExplorer_Release}()"
+
+ "done_${__GAME_EXPLORER_UNIQUE}:"
+
+ Pop $R3
+ Pop $R2
+ Pop $R1
+ Pop $R0
+
+ Pop $1
+ Pop $0
+
+ !undef __GAME_EXPLORER_UNIQUE
+
+!macroend
+
+!macro _GameExplorer_GUID_Function Function GUID
+
+ !define __GAME_EXPLORER_UNIQUE "${__LINE__}${__FILE__}"
+
+ Push $0
+ Push $1
+ Push $2
+ Push $3
+ Push $4
+ Push $5
+
+ Push $R0
+
+ Push "${GUID}"
+
+ Pop $R0 # == ${GUID}
+
+ System::Alloc 16
+ Exch $R0
+ System::Call "ole32::CLSIDFromString(w s, i R0)"
+ System::Call "*$R0(i .r2, i .r3, i .r4, i .r5)"
+ System::Free $R0
+
+ ClearErrors
+
+ System::Call "ole32::CoCreateInstance( \
+ g '${CLSID_GameExplorer}', i 0, \
+ i ${CLSCTX_INPROC_SERVER}, \
+ g '${IID_IGameExplorer}', *i .r1) i .r0"
+
+ ${If} $0 != 0 # S_OK
+
+ SetErrors
+ Goto "done_${__GAME_EXPLORER_UNIQUE}"
+
+ ${EndIf}
+
+ System::Call "$1->${Function}(i r2, i r3, i r4, i r5) i .r0"
+
+ ${If} $0 != 0 # S_OK
+
+ SetErrors
+
+ ${EndIf}
+
+ System::Call "$1->${IGameExplorer_Release}()"
+
+ "done_${__GAME_EXPLORER_UNIQUE}:"
+
+ Pop $R0
+
+ Pop $5
+ Pop $4
+ Pop $3
+ Pop $2
+ Pop $1
+ Pop $0
+
+ !undef __GAME_EXPLORER_UNIQUE
+
+!macroend
+
+!macro GameExplorer_UpdateGame GUID
+
+ !insertmacro _GameExplorer_GUID_Function ${IGameExplorer_UpdateGame} "${GUID}"
+
+!macroend
+
+!macro GameExplorer_RemoveGame GUID
+
+ !insertmacro _GameExplorer_GUID_Function ${IGameExplorer_RemoveGame} "${GUID}"
+
+!macroend \ No newline at end of file
diff --git a/Installer/settings/files_in.nsh b/Installer/settings/files_in.nsh
new file mode 100644
index 00000000..de9acb75
--- /dev/null
+++ b/Installer/settings/files_in.nsh
@@ -0,0 +1,263 @@
+; This list contains the files that will be installed
+
+; Create required directories:
+
+ CreateDirectory "$INSTDIR\Covers"
+ CreateDirectory "$INSTDIR\Languages"
+ CreateDirectory "$INSTDIR\Plugins"
+ CreateDirectory "$INSTDIR\Skins"
+ CreateDirectory "$INSTDIR\Skins\Classic"
+ CreateDirectory "$INSTDIR\Skins\Deluxe"
+ CreateDirectory "$INSTDIR\Songs"
+ CreateDirectory "$INSTDIR\Sounds"
+ CreateDirectory "$INSTDIR\Themes"
+
+; Extract files to the directories:
+
+ SetOutPath "$INSTDIR"
+ File "..\InstallerDependencies\dll\bass.dll"
+ File "..\InstallerDependencies\dll\SDL.dll"
+ File "..\InstallerDependencies\dll\smpeg.dll"
+ File "..\InstallerDependencies\dll\sqlite3.dll"
+
+ File "..\InstallerDependencies\documents\Changelog.german.txt"
+ File "..\InstallerDependencies\documents\Changelog.txt"
+ File "..\InstallerDependencies\documents\documentation.pdf"
+ File "..\InstallerDependencies\documents\License.txt"
+ File "..\InstallerDependencies\documents\ReadMe.txt"
+
+ File "..\ScoreConverter.exe"
+ File "..\${exe}.exe"
+
+${If} ${AtLeastWinVista}
+
+ SetOutPath "$WINDIR"
+ File "..\InstallerDependencies\plugins\gdf.dll"
+
+${EndIf}
+
+ SetOutPath "$INSTDIR\Covers\"
+ File "..\Covers\Covers.ini"
+ File "..\Covers\NoCover.jpg"
+
+ SetOutPath "$INSTDIR\Languages\"
+
+ File "..\Languages\readme.txt"
+
+ 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\Portuguese.ini"
+ File "..\Languages\Serbian.ini"
+ File "..\Languages\Spanish.ini"
+ File "..\Languages\Swedish.ini"
+
+ SetOutPath "$INSTDIR\Plugins\"
+ File "..\Plugins\Blind.dll"
+ File "..\Plugins\Duell.dll"
+ File "..\Plugins\Hold_The_Line.dll"
+ File "..\Plugins\Until5000.dll"
+
+ SetOutPath "$INSTDIR\Skins\Classic\"
+ 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\[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\[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\[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"
+ File "..\Skins\Classic\Star.ini"
+
+ SetOutPath "$INSTDIR\Skins\Deluxe\"
+ File "..\Skins\Deluxe\[bg-load]blue.jpg"
+ File "..\Skins\Deluxe\[bg-load]fall.jpg"
+ File "..\Skins\Deluxe\[bg-load]summer.jpg"
+ File "..\Skins\Deluxe\[bg-load]winter.jpg"
+ File "..\Skins\Deluxe\[bg-main]blue.jpg"
+ File "..\Skins\Deluxe\[bg-main]fall.jpg"
+ File "..\Skins\Deluxe\[bg-main]summer.jpg"
+ File "..\Skins\Deluxe\[bg-main]winter.jpg"
+ File "..\Skins\Deluxe\[button]13.jpg"
+ File "..\Skins\Deluxe\[button]alt.jpg"
+ File "..\Skins\Deluxe\[button]az.jpg"
+ File "..\Skins\Deluxe\[button]enter.jpg"
+ File "..\Skins\Deluxe\[button]esc.jpg"
+ File "..\Skins\Deluxe\[button]j.jpg"
+ File "..\Skins\Deluxe\[button]m.jpg"
+ File "..\Skins\Deluxe\[button]navi.jpg"
+ File "..\Skins\Deluxe\[button]p.jpg"
+ 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]winDecoration1.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]lineBonusPopUp.jpg"
+ File "..\Skins\Deluxe\[sing]LyricsBall.bmp"
+ File "..\Skins\Deluxe\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Deluxe\[sing]notesBgLeft.bmp"
+ File "..\Skins\Deluxe\[sing]notesBgMid.bmp"
+ File "..\Skins\Deluxe\[sing]notesBgRight.bmp"
+ File "..\Skins\Deluxe\[sing]notesLeft.bmp"
+ File "..\Skins\Deluxe\[sing]notesMid.bmp"
+ File "..\Skins\Deluxe\[sing]notesRight.bmp"
+ File "..\Skins\Deluxe\[sing]p.jpg"
+ File "..\Skins\Deluxe\[sing]scoreBg.jpg"
+ File "..\Skins\Deluxe\[sing]singBarBack.jpg"
+ File "..\Skins\Deluxe\[sing]singBarBar.jpg"
+ File "..\Skins\Deluxe\[sing]singBarFront.jpg"
+ File "..\Skins\Deluxe\[sing]textBar.jpg"
+ File "..\Skins\Deluxe\[sing]timeBar.jpg"
+ File "..\Skins\Deluxe\[sing]timeBar1.jpg"
+ File "..\Skins\Deluxe\[sing]timeBarBG.jpg"
+ File "..\Skins\Deluxe\[special]bar1.jpg"
+ File "..\Skins\Deluxe\[special]bar2.jpg"
+ File "..\Skins\Deluxe\[stat]detailBG1.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG1.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG2.jpg"
+ File "..\Skins\Deluxe\[stat]mainBG3.jpg"
+ File "..\Skins\Deluxe\Blue.ini"
+ File "..\Skins\Deluxe\Fall.ini"
+ File "..\Skins\Deluxe\Summer.ini"
+ File "..\Skins\Deluxe\Winter.ini"
+
+ 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"
+
+ SetOutPath "$INSTDIR" \ No newline at end of file
diff --git a/Installer/settings/files_un.nsh b/Installer/settings/files_un.nsh
new file mode 100644
index 00000000..2bdc0819
--- /dev/null
+++ b/Installer/settings/files_un.nsh
@@ -0,0 +1,332 @@
+; This list contains the files that will be uninstalled
+
+; Delete provided Game Exe and provided Tools
+ Delete "$INSTDIR\ScoreConverter.exe"
+ Delete "$INSTDIR\${exe}.exe"
+
+; Delete other provided/created stuff
+ Delete "$INSTDIR\bass.dll"
+ Delete "$INSTDIR\Changelog.german.txt"
+ Delete "$INSTDIR\Changelog.txt"
+ Delete "$INSTDIR\documentation.pdf"
+ Delete "$INSTDIR\License.txt"
+ Delete "$INSTDIR\ReadMe.txt"
+ Delete "$INSTDIR\SDL.dll"
+ Delete "$INSTDIR\smpeg.dll"
+ Delete "$INSTDIR\sqlite3.dll"
+ Delete "$INSTDIR\config.ini"
+ Delete "$INSTDIR\Error.log"
+ Delete "$INSTDIR\covers.cache"
+ Delete "$INSTDIR\Uninstall.exe"
+
+${If} ${AtLeastWinVista}
+
+; Delete gdf.dll
+ Delete "$WINDIR\gdf.dll"
+
+${EndIf}
+
+; Delete provided Covers
+ Delete "$INSTDIR\Covers\Covers.ini"
+ Delete "$INSTDIR\Covers\NoCover.jpg"
+
+; Delete provided languages
+ 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\readme.txt"
+ Delete "$INSTDIR\Languages\Serbian.ini"
+ Delete "$INSTDIR\Languages\Spanish.ini"
+ Delete "$INSTDIR\Languages\Swedish.ini"
+ Delete "$INSTDIR\Languages\Portuguese.ini"
+
+; Delete provided plugins
+ Delete "$INSTDIR\Plugins\Blind.dll"
+ Delete "$INSTDIR\Plugins\Duell.dll"
+ Delete "$INSTDIR\Plugins\Hold_The_Line.dll"
+ Delete "$INSTDIR\Plugins\Until5000.dll"
+
+; Delete provided Classic Skin
+ Delete "$INSTDIR\Skins\Classic\Star.ini"
+ Delete "$INSTDIR\Skins\Classic\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]e.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Classic\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Classic\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]Star.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Classic\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Exit.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Multi.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Options.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Solo.jpg"
+ Delete "$INSTDIR\Skins\Classic\[mainbutton]Stats.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Bar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Bar1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Button3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]ButtonEditor.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]Logo.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Classic\[main]square.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Classic\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuBorder.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuButtonBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[menu]songMenuSelectBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winDecoration.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]levelround.jpg"
+ Delete "$INSTDIR\Skins\Classic\[score]line.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Classic\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Classic\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]BGFade.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]EqualizerBG.jpg"
+ Delete "$INSTDIR\Skins\Classic\[song]selection.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Classic\[stat]mainBG3.jpg"
+
+; Delete provided Deluxe Skin
+ Delete "$INSTDIR\Skins\Deluxe\Blue.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Fall.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Summer.ini"
+ Delete "$INSTDIR\Skins\Deluxe\Winter.ini"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]blue.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]fall.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]summer.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-load]winter.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]blue.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]fall.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]summer.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[bg-main]winter.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[helper]buttonFade.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]cd.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]main.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]options.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]party.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]score.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]search.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]songmenu.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]button.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]buttonf.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]mainBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]playerNumberBox.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]selectbg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songSelection1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[main]songSelection2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[menu]songMenuSelectBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winDecoration1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]endcap.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]levelRound.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[score]Line.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]timeBar.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]timeBar1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[sing]timeBarBG.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[special]bar1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[special]bar2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Deluxe\[stat]mainBG3.jpg"
+
+; Delete provided sounds
+ Delete "$INSTDIR\Sounds\Common back.mp3"
+ Delete "$INSTDIR\Sounds\Common start.mp3"
+ Delete "$INSTDIR\Sounds\credits-outro-tune.mp3"
+ Delete "$INSTDIR\Sounds\dismissed.mp3"
+ Delete "$INSTDIR\Sounds\menu swoosh.mp3"
+ Delete "$INSTDIR\Sounds\option change col.mp3"
+ Delete "$INSTDIR\Sounds\rimshot022b.mp3"
+ Delete "$INSTDIR\Sounds\select music change music 50.mp3"
+ Delete "$INSTDIR\Sounds\select music change music.mp3"
+ Delete "$INSTDIR\Sounds\wome-credits-tune.mp3"
+
+; Delete provided Themes
+ Delete "$INSTDIR\Themes\Classic.ini"
+ Delete "$INSTDIR\Themes\Deluxe.ini"
+
+; Delete provided Songs
+ Delete "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]\Dead Smiling Pirates - I 18 [BG].jpg"
+ Delete "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]\Dead Smiling Pirates - I 18 [CO].jpg"
+ Delete "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]\Dead Smiling Pirates - I 18.ogg"
+ Delete "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]\Dead Smiling Pirates - I 18.txt"
+ Delete "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]\License.txt"
+
+ Delete "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]\Steven Dunston - Northern Star [BG].jpg"
+ Delete "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]\Steven Dunston - Northern Star [CO].jpg"
+ Delete "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]\Steven Dunston - Northern Star.mp3"
+ Delete "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]\Steven Dunston - Northern Star v1.4.txt"
+ Delete "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]\License.txt"
+
+; Delete only empty directories:
+
+StrCpy $0 "$INSTDIR\Covers"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Languages"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Plugins"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Skins\Classic"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Skins\Deluxe"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Skins"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Songs\Dead Smiling Pirates - I 18 [DEMO]"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Songs\Steven Dunston - Northern Star [DEMO]"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Songs"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Sounds"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Themes"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Screenshots"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR\Playlists"
+Call un.DeleteIfEmpty
+
+StrCpy $0 "$INSTDIR"
+Call un.DeleteIfEmpty
+
+
+
+; Delete created Icons in startmenu
+
+ SetShellVarContext all
+
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Uninstall.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Deinstallieren.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Website.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Internetseite.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\UltraStar Deluxe spielen.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Play UltraStar Deluxe.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Readme.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Lies mich.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\Lizenz.lnk"
+ Delete "$SMPROGRAMS\$ICONS_GROUP\License.lnk"
+
+; Delete created Icon on Desktop
+
+Delete "$Desktop\Play UltraStar Deluxe.lnk"
+Delete "$Desktop\UltraStar Deluxe spielen.lnk"
+
+StrCpy $0 "$SMPROGRAMS\$ICONS_GROUP"
+Call un.DeleteIfEmpty
+
diff --git a/Installer/settings/functions.nsh b/Installer/settings/functions.nsh
new file mode 100644
index 00000000..a62b9137
--- /dev/null
+++ b/Installer/settings/functions.nsh
@@ -0,0 +1,78 @@
+!define exe2 "USdx" ; Current name of start exe
+; Creates Desktop Shortcut(s) if
+; checked on Finish Page
+
+Function CreateDesktopShortCuts
+
+SetOutPath "$INSTDIR"
+
+CreateShortcut "$Desktop\$(sm_shortcut).lnk" "$INSTDIR\${exe2}.exe"
+
+FunctionEnd
+
+; Deletes only empty dirs which are
+; at the top of the stack.
+
+Function un.DeleteIfEmpty
+ FindFirst $R0 $R1 "$0\*.*"
+ strcmp $R1 "." 0 NoDelete
+ FindNext $R0 $R1
+ strcmp $R1 ".." 0 NoDelete
+ ClearErrors
+ FindNext $R0 $R1
+ IfErrors 0 NoDelete
+ FindClose $R0
+ Sleep 1000
+ RMDir "$0"
+ NoDelete:
+ FindClose $R0
+FunctionEnd
+
+; This is used to write a
+; string to config.ini
+
+Function WriteToConfig
+ Exch $0
+ Exch
+ Exch $1
+
+ FileOpen $0 $0 a
+ FileSeek $0 0 END
+ FileWrite $0 $1
+ FileClose $0
+
+ Pop $1
+ Pop $0
+FunctionEnd
+
+!macro WriteToConfig String File
+ Push "${String}"
+ Push "${File}"
+ Call WriteToConfig
+!macroend
+!define WriteToConfig "!insertmacro WriteToConfig"
+
+; Finds and kills UltraStar Deluxe process
+;
+
+!define nsProcess::FindProcess `!insertmacro nsProcess::FindProcess`
+
+!macro nsProcess::FindProcess _FILE _ERR
+ nsProcess::_FindProcess /NOUNLOAD `${_FILE}`
+ Pop ${_ERR}
+!macroend
+
+
+!define nsProcess::KillProcess `!insertmacro nsProcess::KillProcess`
+
+!macro nsProcess::KillProcess _FILE _ERR
+ nsProcess::_KillProcess /NOUNLOAD `${_FILE}`
+ Pop ${_ERR}
+!macroend
+
+
+!define nsProcess::Unload `!insertmacro nsProcess::Unload`
+
+!macro nsProcess::Unload
+ nsProcess::_Unload
+!macroend \ No newline at end of file
diff --git a/Installer/settings/io.ini b/Installer/settings/io.ini
new file mode 100644
index 00000000..55dc5a69
--- /dev/null
+++ b/Installer/settings/io.ini
@@ -0,0 +1,19 @@
+[Settings]
+Rect=1044
+NumFields=3
+[Field 1]
+Type=bitmap
+Left=0
+Right=109
+Top=0
+Bottom=193
+Flags=RESIZETOFIT
+[Field 2]
+Type=label
+Left=120
+Right=315
+Top=10
+[Field 3]
+Type=label
+Left=120
+Right=315 \ No newline at end of file
diff --git a/Installer/settings/langstrings.nsh b/Installer/settings/langstrings.nsh
new file mode 100644
index 00000000..b44ee7c5
--- /dev/null
+++ b/Installer/settings/langstrings.nsh
@@ -0,0 +1,69 @@
+; Language Strings which are used in the main program
+
+LangString str_continue ${LANG_GERMAN} "Dies wird UltraStar Deluxe installieren. Fortsetzen?"
+LangString str_continue ${LANG_ENGLISH} "This will install UltraStar Deluxe. Continue?"
+
+LangString str_abort ${LANG_ENGLISH} "Are you sure to abort Installation?"
+LangString str_abort ${LANG_GERMAN} "Wollen Sie die Installation wirklich abbrechen?"
+
+LangString uninst_begin ${LANG_ENGLISH} "This will uninstall UltraStar Deluxe completely (with Songs!). Continue ?"
+LangString uninst_begin ${LANG_GERMAN} "Dies wird UltraStar Deluxe vollständig deinstallieren (inkl. Songs!). Fortfahren?"
+
+LangString MUI_UNTEXT_FINISH_INFO_TEXT ${LANG_ENGLISH} "We hope you enjoyed UltraStar Deluxe. Please leave us a comment why you uninstalled UltraStar Deluxe in our forum:\n\n${forum}\n\nWe would also be pleased to recieve your feedback on UltraStar Deluxe there."
+LangString MUI_UNTEXT_FINISH_INFO_TEXT ${LANG_GERMAN} "Wir hoffen du hast UltraStar Deluxe genossen. Bitte hinterlasse uns einen Kommentar im Forum, warum du UltraStar Deluxe deinstalliert hast:\n\n${forum}\n\nWir würden uns dort ebenso über eine Rückmeldung für UltraStar Deluxe freuen."
+
+LangString MUI_UNTEXT_FINISH_INFO_TITLE ${LANG_ENGLISH} "The uninstallation finished successfully!"
+LangString MUI_UNTEXT_FINISH_INFO_TITLE ${LANG_GERMAN} "Die Deinstallation wurde erfolgreich abgeschlossen."
+
+LangString MUI_UNTEXT_FINISH_INFO_REBOOT ${LANG_ENGLISH} "Not supported for good reason."
+LangString MUI_UNTEXT_FINISH_INFO_REBOOT ${LANG_GERMAN} "Aus gutem Grund nicht unterstüzt."
+
+LangString str_header ${LANG_ENGLISH} "Custom options for Installation"
+LangString str_header ${LANG_GERMAN} "Eigene Optionen zur Installation"
+
+LangString str_header_subtitle ${LANG_ENGLISH} ""
+LangString str_header_subtitle ${LANG_GERMAN} ""
+
+LangString sm_shortcut ${LANG_GERMAN} "UltraStar Deluxe spielen" ; Name for start Icon in startmenu
+LangString sm_shortcut ${LANG_ENGLISH} "Play UltraStar Deluxe"
+
+LangString sc_desktop ${LANG_GERMAN} "Verknüpfung auf dem Desktop erstellen?" ; Finish Page: Readme = Create Desktop Shortcut
+LangString sc_desktop ${LANG_ENGLISH} "Create Desktop Shortcut?"
+
+LangString sc_play ${LANG_GERMAN} "Spielen" ; Shortcut name play or spielen (used for MCE)
+LangString sc_play ${LANG_ENGLISH} "Play"
+
+LangString sm_uninstall ${LANG_GERMAN} "Deinstallieren" ; Name for uninstall icon in startmenu
+LangString sm_uninstall ${LANG_ENGLISH} "Uninstall"
+
+LangString sm_website ${LANG_GERMAN} "Internetseite" ; Name for website icon in startmenu
+LangString sm_website ${LANG_ENGLISH} "Website"
+
+LangString sm_license ${LANG_GERMAN} "Lizenz" ; Name for license.txt icon in startmenu
+LangString sm_license ${LANG_ENGLISH} "License"
+
+LangString sm_readme ${LANG_GERMAN} "Lies mich" ; Name for readme.txt icon in startmenu
+LangString sm_readme ${LANG_ENGLISH} "Readme"
+
+LangString Settings_TITLE ${LANG_ENGLISH} " "
+LangString Settings_TITLE ${LANG_GERMAN} " "
+LangString Settings_SUBTITLE ${LANG_ENGLISH} "Specify your favorite settings for UltraStar Deluxe"
+LangString Settings_SUBTITLE ${LANG_GERMAN} "Lege deine favorisierten Einstellungen für UltraStar Deluxe fest."
+
+LangString wp_title ${LANG_GERMAN} "Willkommen zur Installationsroutine von UltraStar Deluxe" ; Title String in Welcome Page
+LangString wp_title ${LANG_ENGLISH} "Welcome to the UltraStar Deluxe Setup Wizard"
+
+LangString wp_text ${LANG_GERMAN} "Dieser Assistent wird Sie durch die Installation von UltraStar Deluxe begleiten. UltraStar Deluxe ist ein kostenloses quelloffenes Karaokespiel, welches Singstar ähnelt. Diese Installationsroutine enthält den Bonus Song 'Dead Smiling Pirates - I 18' aus der CreativeCommons Datenbank, der optional heruntergeladen werden kann (benötigt aktive Internetverbindung).\n\r\n\rDas UltraStar Deluxe Team wünscht viel Spaß.\n\rProjekthomepage: http://www.ultrastardeluxe.org\n\rSupport Forum: http://forum.ultrastardeluxe.org"
+LangString wp_text ${LANG_ENGLISH} "This wizard will guide you through the Installation of UltraStar Deluxe. UltraStar Deluxe is a free open source Karaoke game, which can be compared with Singstar. These Installation Wizard includes the bonus track 'Dead Smiling Pirates - I 18' from the CreativeCommons database and which can be downloaded seperatly (requires active internet connection).\n\r\n\rThe UltraStar Deluxe Team wishes you fun.\n\rProject website: http://www.ultrastardeluxe.org\n\rSupport Forum: http://forum.ultrastardeluxe.org"
+
+LangString fp_showreadme ${LANG_GERMAN} "Dokumentation ansehen (PDF)" ; "Show Readme" String in Finish Page
+LangString fp_showreadme ${LANG_ENGLISH} "See documentation (PDF)"
+
+LangString fp_text ${LANG_GERMAN} "UltraStar wurde erfolgreich auf Ihrem System installiert.\n\rBesuchen Sie unsere Projektwebseite um die neusten Updates und News zu erhalten."
+LangString fp_text ${LANG_ENGLISH} "UltraStar was installed successfully on you system.\n\rVisit out project website to get latest news and updates."
+
+LangString fp_link ${LANG_GERMAN} "Projektwebseite" ; Link to developers website - String in Finish Page
+LangString fp_link ${LANG_ENGLISH} "Project website"
+
+LangString uncp_text ${LANG_GERMAN} "Willkommen beim Deinstallations-Assistent für UltraStar Deluxe"
+LangString uncp_text ${LANG_ENGLISH} "Welcome to the UltraStar Deluxe Uninstall Wizard" \ No newline at end of file
diff --git a/Installer/settings/optional/in_orange.nsh b/Installer/settings/optional/in_orange.nsh
new file mode 100644
index 00000000..53eb09a8
--- /dev/null
+++ b/Installer/settings/optional/in_orange.nsh
@@ -0,0 +1,102 @@
+ CreateDirectory "$INSTDIR\Skins\Orange"
+
+ SetOutPath "$INSTDIR\Skins\Orange"
+
+ File "..\Skins\Orange\[bg-load].jpg"
+ File "..\Skins\Orange\[button]13.jpg"
+ File "..\Skins\Orange\[button]alt.jpg"
+ File "..\Skins\Orange\[button]az.jpg"
+ File "..\Skins\Orange\[button]enter.jpg"
+ File "..\Skins\Orange\[button]esc.jpg"
+ File "..\Skins\Orange\[button]j.jpg"
+ File "..\Skins\Orange\[button]m.jpg"
+ File "..\Skins\Orange\[button]navi.jpg"
+ File "..\Skins\Orange\[button]p.jpg"
+ File "..\Skins\Orange\[effect]goldenNoteStar.jpg"
+ File "..\Skins\Orange\[effect]perfectNoteStar.jpg"
+ File "..\Skins\Orange\[helper]buttonFade.jpg"
+ File "..\Skins\Orange\[helper]rectangle.jpg"
+ File "..\Skins\Orange\[icon]cd.jpg"
+ File "..\Skins\Orange\[icon]error.jpg"
+ File "..\Skins\Orange\[icon]main.jpg"
+ File "..\Skins\Orange\[icon]options.jpg"
+ File "..\Skins\Orange\[icon]party.jpg"
+ File "..\Skins\Orange\[icon]question.jpg"
+ File "..\Skins\Orange\[icon]score.jpg"
+ File "..\Skins\Orange\[icon]search.jpg"
+ File "..\Skins\Orange\[icon]songmenu.jpg"
+ File "..\Skins\Orange\[icon]stats.jpg"
+ File "..\Skins\Orange\[icon]video.jpg"
+ File "..\Skins\Orange\[main]button.jpg"
+ File "..\Skins\Orange\[main]button2.jpg"
+ File "..\Skins\Orange\[main]button3.jpg"
+ File "..\Skins\Orange\[main]buttonf.jpg"
+ File "..\Skins\Orange\[main]button-m-1.jpg"
+ File "..\Skins\Orange\[main]button-m-2.jpg"
+ File "..\Skins\Orange\[main]button-m-3.jpg"
+ File "..\Skins\Orange\[main]button-m-4.jpg"
+ File "..\Skins\Orange\[main]mainBar.jpg"
+ File "..\Skins\Orange\[main]playerNumberBox.jpg"
+ File "..\Skins\Orange\[main]selectbg.jpg"
+ File "..\Skins\Orange\[main]songCover.jpg"
+ File "..\Skins\Orange\[main]songSelection1.jpg"
+ File "..\Skins\Orange\[main]songSelection2.jpg"
+ File "..\Skins\Orange\[menu]jumpToBg.jpg"
+ File "..\Skins\Orange\[menu]PopUpBg.JPG"
+ File "..\Skins\Orange\[menu]PopUpFg.JPG"
+ File "..\Skins\Orange\[menu]songMenuBg.jpg"
+ File "..\Skins\Orange\[menu]songMenuSelectBg.jpg"
+ File "..\Skins\Orange\[party]Joker.jpg"
+ File "..\Skins\Orange\[party]playerButton.jpg"
+ File "..\Skins\Orange\[party]playerTeamButton.jpg"
+ File "..\Skins\Orange\[party]pointer.bmp"
+ File "..\Skins\Orange\[party]roundBG1.jpg"
+ File "..\Skins\Orange\[party]roundBG2.jpg"
+ File "..\Skins\Orange\[party]roundBG3.jpg"
+ File "..\Skins\Orange\[party]roundBG4.jpg"
+ File "..\Skins\Orange\[party]roundTeamButton.jpg"
+ File "..\Skins\Orange\[party]scoreBG1.jpg"
+ File "..\Skins\Orange\[party]scoreBG2.jpg"
+ File "..\Skins\Orange\[party]scoreDecoration.jpg"
+ File "..\Skins\Orange\[party]teamPoints.jpg"
+ File "..\Skins\Orange\[party]winDecoration1.jpg"
+ File "..\Skins\Orange\[party]winTeamButton1.jpg"
+ File "..\Skins\Orange\[party]winTeamButton2.jpg"
+ File "..\Skins\Orange\[party]winTeamButton3.jpg"
+ File "..\Skins\Orange\[score]box.jpg"
+ File "..\Skins\Orange\[score]endcap.jpg"
+ File "..\Skins\Orange\[score]level.jpg"
+ File "..\Skins\Orange\[score]levelRound.jpg"
+ File "..\Skins\Orange\[score]Line.jpg"
+ File "..\Skins\Orange\[sing]lineBonusPopUp.jpg"
+ File "..\Skins\Orange\[sing]LyricsBall.bmp"
+ File "..\Skins\Orange\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Orange\[sing]notesBgLeft.bmp"
+ File "..\Skins\Orange\[sing]notesBgMid.bmp"
+ File "..\Skins\Orange\[sing]notesBgRight.bmp"
+ File "..\Skins\Orange\[sing]notesLeft.bmp"
+ File "..\Skins\Orange\[sing]notesMid.bmp"
+ File "..\Skins\Orange\[sing]notesRight.bmp"
+ File "..\Skins\Orange\[sing]p.jpg"
+ File "..\Skins\Orange\[sing]scoreBg.jpg"
+ File "..\Skins\Orange\[sing]singBarBack.jpg"
+ File "..\Skins\Orange\[sing]singBarBar.jpg"
+ File "..\Skins\Orange\[sing]singBarFront.jpg"
+ File "..\Skins\Orange\[sing]textBar.jpg"
+ File "..\Skins\Orange\[sing]timeBar.jpg"
+ File "..\Skins\Orange\[sing]timeBarBG.jpg"
+ File "..\Skins\Orange\[special]bar1.jpg"
+ File "..\Skins\Orange\[special]bar2.jpg"
+ File "..\Skins\Orange\[stat]detailBG1.jpg"
+ File "..\Skins\Orange\[stat]mainBG1.jpg"
+ File "..\Skins\Orange\[stat]mainBG2.jpg"
+ File "..\Skins\Orange\[stat]mainBG3.jpg"
+ File "..\Skins\Orange\bg-main.jpg"
+ File "..\Skins\Orange\bg-song.jpg"
+ File "..\Skins\Orange\Orange.ini"
+
+ SetOutPath "$INSTDIR\Themes"
+
+ File "..\Themes\Orange.ini"
+
+ SetOutPath "$INSTDIR"
diff --git a/Installer/settings/optional/in_streetlight.nsh b/Installer/settings/optional/in_streetlight.nsh
new file mode 100644
index 00000000..1d8d147f
--- /dev/null
+++ b/Installer/settings/optional/in_streetlight.nsh
@@ -0,0 +1,100 @@
+
+ CreateDirectory "$INSTDIR\Skins\Streetlight"
+
+ SetOutPath "$INSTDIR\Skins\Streetlight"
+
+ File "..\Skins\Streetlight\[bg-load].jpg"
+ File "..\Skins\Streetlight\[button]13.jpg"
+ File "..\Skins\Streetlight\[button]alt.jpg"
+ File "..\Skins\Streetlight\[button]az.jpg"
+ File "..\Skins\Streetlight\[button]enter.jpg"
+ File "..\Skins\Streetlight\[button]esc.jpg"
+ File "..\Skins\Streetlight\[button]j.jpg"
+ File "..\Skins\Streetlight\[button]m.jpg"
+ File "..\Skins\Streetlight\[button]navi.jpg"
+ File "..\Skins\Streetlight\[button]p.jpg"
+ File "..\Skins\Streetlight\[effect]goldenNoteStar.jpg"
+ File "..\Skins\Streetlight\[effect]perfectNoteStar.jpg"
+ File "..\Skins\Streetlight\[helper]buttonFade.jpg"
+ File "..\Skins\Streetlight\[helper]rectangle.jpg"
+ File "..\Skins\Streetlight\[icon]cd.jpg"
+ File "..\Skins\Streetlight\[icon]error.jpg"
+ File "..\Skins\Streetlight\[icon]main.jpg"
+ File "..\Skins\Streetlight\[icon]options.jpg"
+ File "..\Skins\Streetlight\[icon]party.jpg"
+ File "..\Skins\Streetlight\[icon]question.jpg"
+ File "..\Skins\Streetlight\[icon]score.jpg"
+ File "..\Skins\Streetlight\[icon]search.jpg"
+ File "..\Skins\Streetlight\[icon]songmenu.jpg"
+ File "..\Skins\Streetlight\[icon]stats.jpg"
+ File "..\Skins\Streetlight\[icon]video.jpg"
+ File "..\Skins\Streetlight\[main]button.jpg"
+ File "..\Skins\Streetlight\[main]button2.jpg"
+ File "..\Skins\Streetlight\[main]buttonf.jpg"
+ File "..\Skins\Streetlight\[main]mainBar.jpg"
+ File "..\Skins\Streetlight\[main]playerNumberBox.jpg"
+ File "..\Skins\Streetlight\[main]selectbg.jpg"
+ File "..\Skins\Streetlight\[main]songCover.jpg"
+ File "..\Skins\Streetlight\[main]songSelection1.jpg"
+ File "..\Skins\Streetlight\[main]songSelection2.jpg"
+ File "..\Skins\Streetlight\[menu]jumpToBg.jpg"
+ File "..\Skins\Streetlight\[menu]PopUpBg.JPG"
+ File "..\Skins\Streetlight\[menu]PopUpFg.JPG"
+ File "..\Skins\Streetlight\[menu]songMenuBg.jpg"
+ File "..\Skins\Streetlight\[menu]songMenuSelectBg.jpg"
+ File "..\Skins\Streetlight\[party]Joker.jpg"
+ File "..\Skins\Streetlight\[party]playerButton.jpg"
+ File "..\Skins\Streetlight\[party]playerTeamButton.jpg"
+ File "..\Skins\Streetlight\[party]pointer.bmp"
+ File "..\Skins\Streetlight\[party]roundBG1.jpg"
+ File "..\Skins\Streetlight\[party]roundBG2.jpg"
+ File "..\Skins\Streetlight\[party]roundBG3.jpg"
+ File "..\Skins\Streetlight\[party]roundBG4.jpg"
+ File "..\Skins\Streetlight\[party]roundTeamButton.jpg"
+ File "..\Skins\Streetlight\[party]scoreBG1.jpg"
+ File "..\Skins\Streetlight\[party]scoreBG2.jpg"
+ File "..\Skins\Streetlight\[party]scoreDecoration.jpg"
+ File "..\Skins\Streetlight\[party]teamPoints.jpg"
+ File "..\Skins\Streetlight\[party]winDecoration1.jpg"
+ File "..\Skins\Streetlight\[party]winTeamButton1.jpg"
+ File "..\Skins\Streetlight\[party]winTeamButton2.jpg"
+ File "..\Skins\Streetlight\[party]winTeamButton3.jpg"
+ File "..\Skins\Streetlight\[score]box.jpg"
+ File "..\Skins\Streetlight\[score]endcap.jpg"
+ File "..\Skins\Streetlight\[score]level.jpg"
+ File "..\Skins\Streetlight\[score]levelRound.jpg"
+ File "..\Skins\Streetlight\[score]Line.jpg"
+ File "..\Skins\Streetlight\[sing]lineBonusPopUp.jpg"
+ File "..\Skins\Streetlight\[sing]LyricsBall.bmp"
+ File "..\Skins\Streetlight\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Streetlight\[sing]notesBgLeft.bmp"
+ File "..\Skins\Streetlight\[sing]notesBgMid.bmp"
+ File "..\Skins\Streetlight\[sing]notesBgRight.bmp"
+ File "..\Skins\Streetlight\[sing]notesLeft.bmp"
+ File "..\Skins\Streetlight\[sing]notesMid.bmp"
+ File "..\Skins\Streetlight\[sing]notesRight.bmp"
+ File "..\Skins\Streetlight\[sing]p.jpg"
+ File "..\Skins\Streetlight\[sing]scoreBg.jpg"
+ File "..\Skins\Streetlight\[sing]singBarBack.jpg"
+ File "..\Skins\Streetlight\[sing]singBarBar.jpg"
+ File "..\Skins\Streetlight\[sing]singBarFront.jpg"
+ File "..\Skins\Streetlight\[sing]textBar.jpg"
+ File "..\Skins\Streetlight\[sing]timeBar.jpg"
+ File "..\Skins\Streetlight\[sing]timeBarBG.jpg"
+ File "..\Skins\Streetlight\[special]bar1.jpg"
+ File "..\Skins\Streetlight\[special]bar2.jpg"
+ File "..\Skins\Streetlight\[stat]detailBG1.jpg"
+ File "..\Skins\Streetlight\[stat]mainBG1.jpg"
+ File "..\Skins\Streetlight\[stat]mainBG2.jpg"
+ File "..\Skins\Streetlight\[stat]mainBG3.jpg"
+ File "..\Skins\Streetlight\bg-main.jpg"
+ File "..\Skins\Streetlight\bg-song.jpg"
+ File "..\Skins\Streetlight\Streetlight lite.ini"
+ File "..\Skins\Streetlight\Streetlight.ini"
+
+ SetOutPath "$INSTDIR\Themes"
+
+ File "..\Themes\Streetlight lite.ini"
+ File "..\Themes\Streetlight.ini"
+
+ SetOutPath "$INSTDIR" \ No newline at end of file
diff --git a/Installer/settings/optional/in_vistar.nsh b/Installer/settings/optional/in_vistar.nsh
new file mode 100644
index 00000000..47f9f371
--- /dev/null
+++ b/Installer/settings/optional/in_vistar.nsh
@@ -0,0 +1,102 @@
+
+ CreateDirectory "$INSTDIR\Skins\Vistar"
+
+ SetOutPath "$INSTDIR\Skins\Vistar"
+
+ File "..\Skins\Vistar\[button]13.jpg"
+ File "..\Skins\Vistar\[button]alt.jpg"
+ File "..\Skins\Vistar\[button]az.jpg"
+ File "..\Skins\Vistar\[button]enter.jpg"
+ File "..\Skins\Vistar\[button]esc.jpg"
+ File "..\Skins\Vistar\[button]j.jpg"
+ File "..\Skins\Vistar\[button]m.jpg"
+ File "..\Skins\Vistar\[button]navi.jpg"
+ File "..\Skins\Vistar\[button]p.jpg"
+ File "..\Skins\Vistar\[effect]goldenNoteStar.jpg"
+ File "..\Skins\Vistar\[effect]perfectNoteStar.jpg"
+ File "..\Skins\Vistar\[helper]rectangle.jpg"
+ File "..\Skins\Vistar\[icon]cd.jpg"
+ File "..\Skins\Vistar\[icon]error.jpg"
+ File "..\Skins\Vistar\[icon]main.jpg"
+ File "..\Skins\Vistar\[icon]options.jpg"
+ File "..\Skins\Vistar\[icon]party.jpg"
+ File "..\Skins\Vistar\[icon]question.jpg"
+ File "..\Skins\Vistar\[icon]score.jpg"
+ File "..\Skins\Vistar\[icon]search.jpg"
+ File "..\Skins\Vistar\[icon]songmenu.jpg"
+ File "..\Skins\Vistar\[icon]stats.jpg"
+ File "..\Skins\Vistar\[icon]video.jpg"
+ File "..\Skins\Vistar\[main]button.jpg"
+ File "..\Skins\Vistar\[main]buttonf.jpg"
+ File "..\Skins\Vistar\[main]mainBar.jpg"
+ File "..\Skins\Vistar\[main]playerNumberBox.jpg"
+ File "..\Skins\Vistar\[main]selectbg.jpg"
+ File "..\Skins\Vistar\[main]songCover.jpg"
+ File "..\Skins\Vistar\[main]songSelection2.jpg"
+ File "..\Skins\Vistar\[mainbutton]Exit.jpg"
+ File "..\Skins\Vistar\[mainbutton]Multi.jpg"
+ File "..\Skins\Vistar\[mainbutton]Options.jpg"
+ File "..\Skins\Vistar\[mainbutton]Solo.jpg"
+ File "..\Skins\Vistar\[mainbutton]Stats.jpg"
+ File "..\Skins\Vistar\[menu]jumpToBg.jpg"
+ File "..\Skins\Vistar\[menu]PopUpBg.JPG"
+ File "..\Skins\Vistar\[menu]PopUpFg.JPG"
+ File "..\Skins\Vistar\[menu]songMenuBg.jpg"
+ File "..\Skins\Vistar\[menu]songMenuSelectBg.jpg"
+ File "..\Skins\Vistar\[party]Joker.jpg"
+ File "..\Skins\Vistar\[party]playerButton.jpg"
+ File "..\Skins\Vistar\[party]playerTeamButton.jpg"
+ File "..\Skins\Vistar\[party]pointer.bmp"
+ File "..\Skins\Vistar\[party]roundBG1.jpg"
+ File "..\Skins\Vistar\[party]roundBG2.jpg"
+ File "..\Skins\Vistar\[party]roundBG3.jpg"
+ File "..\Skins\Vistar\[party]roundBG4.jpg"
+ File "..\Skins\Vistar\[party]roundTeamButton.jpg"
+ File "..\Skins\Vistar\[party]scoreBG1.jpg"
+ File "..\Skins\Vistar\[party]scoreBG2.jpg"
+ File "..\Skins\Vistar\[party]scoreDecoration.jpg"
+ File "..\Skins\Vistar\[party]teamPoints.jpg"
+ File "..\Skins\Vistar\[party]winDecoration1.jpg"
+ File "..\Skins\Vistar\[party]winTeamButton1.jpg"
+ File "..\Skins\Vistar\[party]winTeamButton2.jpg"
+ File "..\Skins\Vistar\[party]winTeamButton3.jpg"
+ File "..\Skins\Vistar\[score]box.jpg"
+ File "..\Skins\Vistar\[score]endcap.jpg"
+ File "..\Skins\Vistar\[score]level.jpg"
+ File "..\Skins\Vistar\[score]levelRound.jpg"
+ File "..\Skins\Vistar\[score]Line.jpg"
+ File "..\Skins\Vistar\[sing]lineBonusPopUp.jpg"
+ File "..\Skins\Vistar\[sing]LyricsBall.bmp"
+ File "..\Skins\Vistar\[sing]lyricsHelpBar.bmp"
+ File "..\Skins\Vistar\[sing]notesBgLeft.bmp"
+ File "..\Skins\Vistar\[sing]notesBgMid.bmp"
+ File "..\Skins\Vistar\[sing]notesBgRight.bmp"
+ File "..\Skins\Vistar\[sing]notesLeft.bmp"
+ File "..\Skins\Vistar\[sing]notesMid.bmp"
+ File "..\Skins\Vistar\[sing]notesRight.bmp"
+ File "..\Skins\Vistar\[sing]p.jpg"
+ File "..\Skins\Vistar\[sing]scoreBg.jpg"
+ File "..\Skins\Vistar\[sing]singBarBack.jpg"
+ File "..\Skins\Vistar\[sing]singBarBar.jpg"
+ File "..\Skins\Vistar\[sing]singBarFront.jpg"
+ File "..\Skins\Vistar\[sing]textBar.jpg"
+ File "..\Skins\Vistar\[sing]timeBar.jpg"
+ File "..\Skins\Vistar\[sing]timeBar1.jpg"
+ File "..\Skins\Vistar\[sing]timeBarBG.jpg"
+ File "..\Skins\Vistar\[stat]detailBG1.jpg"
+ File "..\Skins\Vistar\[stat]mainBG1.jpg"
+ File "..\Skins\Vistar\[stat]mainBG2.jpg"
+ File "..\Skins\Vistar\[stat]mainBG3.jpg"
+ File "..\Skins\Vistar\bg-lite.jpg"
+ File "..\Skins\Vistar\bg-load.jpg"
+ File "..\Skins\Vistar\bg-main.jpg"
+ File "..\Skins\Vistar\bg-score.jpg"
+ File "..\Skins\Vistar\bg-song.jpg"
+ File "..\Skins\Vistar\main-buttons.jpg"
+ File "..\Skins\Vistar\Vistar.ini"
+
+ SetOutPath "$INSTDIR\Themes"
+
+ File "..\Themes\Vistar.ini"
+
+ SetOutPath "$INSTDIR" \ No newline at end of file
diff --git a/Installer/settings/optional/opt_uninstall.nsh b/Installer/settings/optional/opt_uninstall.nsh
new file mode 100644
index 00000000..cb0de81b
--- /dev/null
+++ b/Installer/settings/optional/opt_uninstall.nsh
@@ -0,0 +1,292 @@
+; Uninstall all optional Themes
+
+ Delete "$INSTDIR\Skins\Orange\[bg-load].jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Orange\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Orange\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[helper]buttonFade.jpg"
+ Delete "$INSTDIR\Skins\Orange\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]cd.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]main.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]options.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]party.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]score.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]search.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]songmenu.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Orange\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button3.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]buttonf.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button-m-1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button-m-2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button-m-3.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]button-m-4.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]mainBar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]playerNumberBox.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]selectbg.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]songSelection1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[main]songSelection2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Orange\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Orange\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Orange\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Orange\[menu]songMenuSelectBg.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Orange\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]winDecoration1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Orange\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Orange\[score]endcap.jpg"
+ Delete "$INSTDIR\Skins\Orange\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Orange\[score]levelRound.jpg"
+ Delete "$INSTDIR\Skins\Orange\[score]Line.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Orange\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]timeBar.jpg"
+ Delete "$INSTDIR\Skins\Orange\[sing]timeBarBG.jpg"
+ Delete "$INSTDIR\Skins\Orange\[special]bar1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[special]bar2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Orange\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Orange\[stat]mainBG3.jpg"
+ Delete "$INSTDIR\Skins\Orange\bg-main.jpg"
+ Delete "$INSTDIR\Skins\Orange\bg-song.jpg"
+ Delete "$INSTDIR\Skins\Orange\Orange.ini"
+
+ Delete "$INSTDIR\Themes\Orange.ini"
+
+
+ Delete "$INSTDIR\Skins\Streetlight\[bg-load].jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[helper]buttonFade.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]cd.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]main.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]options.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]party.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]score.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]search.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]songmenu.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]button.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]button2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]buttonf.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]mainBar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]playerNumberBox.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]selectbg.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]songSelection1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[main]songSelection2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Streetlight\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Streetlight\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[menu]songMenuSelectBg.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]winDecoration1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[score]endcap.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[score]levelRound.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[score]Line.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]timeBar.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[sing]timeBarBG.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[special]bar1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[special]bar2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\[stat]mainBG3.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\bg-main.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\bg-song.jpg"
+ Delete "$INSTDIR\Skins\Streetlight\Streetlight lite.ini"
+ Delete "$INSTDIR\Skins\Streetlight\Streetlight.ini"
+
+ Delete "$INSTDIR\Themes\Streetlight lite.ini"
+ Delete "$INSTDIR\Themes\Streetlight.ini"
+
+ Delete "$INSTDIR\Skins\Vistar\[button]13.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]alt.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]az.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]enter.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]esc.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]j.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]m.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]navi.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[button]p.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[effect]goldenNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[effect]perfectNoteStar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[helper]rectangle.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]cd.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]error.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]main.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]options.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]party.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]question.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]score.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]search.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]songmenu.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]stats.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[icon]video.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]button.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]buttonf.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]mainBar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]playerNumberBox.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]selectbg.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]songCover.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[main]songSelection2.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[mainbutton]Exit.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[mainbutton]Multi.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[mainbutton]Options.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[mainbutton]Solo.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[mainbutton]Stats.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[menu]jumpToBg.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[menu]PopUpBg.JPG"
+ Delete "$INSTDIR\Skins\Vistar\[menu]PopUpFg.JPG"
+ Delete "$INSTDIR\Skins\Vistar\[menu]songMenuBg.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[menu]songMenuSelectBg.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]Joker.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]playerButton.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]playerTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]pointer.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[party]roundBG1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]roundBG2.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]roundBG3.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]roundBG4.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]roundTeamButton.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]scoreBG1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]scoreBG2.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]scoreDecoration.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]teamPoints.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]winDecoration1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]winTeamButton1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]winTeamButton2.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[party]winTeamButton3.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[score]box.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[score]endcap.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[score]level.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[score]levelRound.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[score]Line.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]lineBonusPopUp.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]LyricsBall.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]lyricsHelpBar.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesBgLeft.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesBgMid.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesBgRight.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesLeft.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesMid.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]notesRight.bmp"
+ Delete "$INSTDIR\Skins\Vistar\[sing]p.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]scoreBg.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]singBarBack.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]singBarBar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]singBarFront.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]textBar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]timeBar.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]timeBar1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[sing]timeBarBG.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[stat]detailBG1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[stat]mainBG1.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[stat]mainBG2.jpg"
+ Delete "$INSTDIR\Skins\Vistar\[stat]mainBG3.jpg"
+ Delete "$INSTDIR\Skins\Vistar\bg-lite.jpg"
+ Delete "$INSTDIR\Skins\Vistar\bg-load.jpg"
+ Delete "$INSTDIR\Skins\Vistar\bg-main.jpg"
+ Delete "$INSTDIR\Skins\Vistar\bg-score.jpg"
+ Delete "$INSTDIR\Skins\Vistar\bg-song.jpg"
+ Delete "$INSTDIR\Skins\Vistar\main-buttons.jpg"
+ Delete "$INSTDIR\Skins\Vistar\Vistar.ini"
+
+ Delete "$INSTDIR\Themes\Vistar.ini"
+
+ StrCpy $0 "$INSTDIR\Skins\Orange"
+ Call un.DeleteIfEmpty
+
+ StrCpy $0 "$INSTDIR\Skins\Streetlight"
+ Call un.DeleteIfEmpty
+
+ StrCpy $0 "$INSTDIR\Skins\Vistar"
+ Call un.DeleteIfEmpty \ No newline at end of file
diff --git a/Installer/settings/settings-1031.ini b/Installer/settings/settings-1031.ini
new file mode 100644
index 00000000..369e9a32
--- /dev/null
+++ b/Installer/settings/settings-1031.ini
@@ -0,0 +1,131 @@
+[Settings]
+NumFields=16
+
+[Field 1]
+Type=Label
+Text="Vollbild Modus:"
+Left=0
+Right=53
+Top=27
+Bottom=35
+
+[Field 2]
+Type=Label
+Text="Sprache:"
+Left=0
+Right=53
+Top=51
+Bottom=59
+
+[Field 3]
+Type=Label
+Text="Auflösung:"
+Left=0
+Right=53
+Top=73
+Bottom=81
+
+[Field 4]
+Type=Label
+Text="Ordnerstruktur:"
+Left=0
+Right=53
+Top=97
+Bottom=105
+
+[Field 5]
+Type=Label
+Text="Animationen/Effekte:"
+Left=0
+Right=70
+Top=124
+Bottom=132
+
+[Field 6]
+Type=Droplist
+ListItems=On|Off
+Left=71
+Right=161
+Top=25
+Bottom=38
+
+[Field 7]
+Type=Droplist
+ListItems=Catalan|Dutch|English|French|German|Italian|Norwegian|Portuguese|Serbian|Spanish|Swedish
+Left=71
+Right=161
+Top=48
+Bottom=62
+
+[Field 8]
+Type=Droplist
+ListItems=320x200|640x480|800x600|1024x768|1280x1024|1440x900|1680x1050|1920x1200
+Left=71
+Right=161
+Top=72
+Bottom=86
+
+[Field 9]
+Type=Droplist
+ListItems=On|Off
+Left=71
+Right=161
+Top=96
+Bottom=110
+
+[Field 10]
+Type=Droplist
+ListItems=On|Off
+Left=71
+Right=161
+Top=121
+Bottom=136
+
+[Field 11]
+Type=Label
+Text="Wähle aus, ob das Spiel im Fenster oder \r\nals Vollbild gestartet werden soll."
+Left=170
+Right=315
+Top=24
+Bottom=44
+
+[Field 12]
+Type=Label
+Text="Hier können einige Einstellungen für UltraStar Deluxe vorgenommen werden.\r\nAlle Einstellungen können später im Spielmenü geändert werden."
+Left=0
+Right=315
+Top=3
+Bottom=20
+
+[Field 13]
+Type=Label
+Text="Wähle deine favorisierte Sprache, in der UltraStar Deluxe angezeigt werden soll."
+Left=170
+Right=315
+Top=46
+Bottom=68
+
+[Field 14]
+Type=Label
+Text="Wähle deine, dem Monitor angepasste, bevorzugte Auflösung."
+Left=170
+Right=315
+Top=70
+Bottom=96
+
+[Field 15]
+Type=Label
+Text="Wähle aus, ob UltraStar Deluxe eine Ordnerstruktur zum Anzeigen der Lieder verwenden soll."
+Left=170
+Right=315
+Top=92
+Bottom=116
+
+[Field 16]
+Type=Label
+Text="Wähle, ob Spezialeffekte und \r\nAnimationen benutzt werden sollen."
+Left=170
+Right=315
+Top=121
+Bottom=137
+
diff --git a/Installer/settings/settings-1033.ini b/Installer/settings/settings-1033.ini
new file mode 100644
index 00000000..afb8e435
--- /dev/null
+++ b/Installer/settings/settings-1033.ini
@@ -0,0 +1,131 @@
+[Settings]
+NumFields=16
+
+[Field 1]
+Type=Label
+Text="Fullscreen Mode:"
+Left=0
+Right=50
+Top=27
+Bottom=35
+
+[Field 2]
+Type=Label
+Text="Language:"
+Left=0
+Right=50
+Top=51
+Bottom=59
+
+[Field 3]
+Type=Label
+Text="Resolution:"
+Left=0
+Right=50
+Top=73
+Bottom=81
+
+[Field 4]
+Type=Label
+Text="Tabs:"
+Left=0
+Right=50
+Top=100
+Bottom=108
+
+[Field 5]
+Type=Label
+Text="Animations/Effects:"
+Left=0
+Right=67
+Top=124
+Bottom=132
+
+[Field 6]
+Type=Droplist
+ListItems=On|Off
+Left=70
+Right=160
+Top=24
+Bottom=36
+
+[Field 7]
+Type=Droplist
+ListItems=Catalan|Dutch|English|French|German|Italian|Norwegian|Portuguese|Serbian|Spanish|Swedish
+Left=70
+Right=160
+Top=48
+Bottom=60
+
+[Field 8]
+Type=Droplist
+ListItems=320x200|640x480|800x600|1024x768|1280x1024|1440x900|1680x1050|1920x1200
+Left=70
+Right=160
+Top=72
+Bottom=86
+
+[Field 9]
+Type=Droplist
+ListItems=On|Off
+Left=70
+Right=160
+Top=99
+Bottom=113
+
+[Field 10]
+Type=Droplist
+ListItems=On|Off
+Left=70
+Right=160
+Top=123
+Bottom=137
+
+[Field 11]
+Type=Label
+Text="Choose if you want to run UltraStar Deluxe in a window or fullscreen."
+Left=170
+Right=305
+Top=25
+Bottom=46
+
+[Field 12]
+Type=Label
+Text="Choose your favorite language, in that UltraStar Deluxe should be displayed."
+Left=170
+Right=305
+Top=48
+Bottom=70
+
+[Field 13]
+Type=Label
+Text="Choose your favorite screen resolution for UltraStar Deluxe adjusted to your display device."
+Left=170
+Right=305
+Top=72
+Bottom=97
+
+[Field 14]
+Type=Label
+Text="Choose whether you would like to view folders in UltraStar Deluxe or not."
+Left=170
+Right=305
+Top=99
+Bottom=122
+
+[Field 15]
+Type=Label
+Text="Here you can define some settings for UltraStar Deluxe. The settings can\r\nalso be changed in the GUI later."
+Left=0
+Right=289
+Top=3
+Bottom=20
+
+[Field 16]
+Type=Label
+Text="Choose if special effects or animations should be used by UltraStar Deluxe. Recommended: On"
+Left=170
+Right=305
+Top=123
+Bottom=139
+
diff --git a/Installer/settings/variables.nsh b/Installer/settings/variables.nsh
new file mode 100644
index 00000000..1bb3a7b6
--- /dev/null
+++ b/Installer/settings/variables.nsh
@@ -0,0 +1,67 @@
+; These are the common used variables
+; for the USdx Installation Wizard
+
+!define version "1.01" ; Current version of UltraStar Deluxe
+!define p_name "UltraStar Deluxe" ; Just the name of the program
+!define publisher "USDX Team" ; Publisher
+!define homepage "http://www.ultrastardeluxe.org/" ; Project Homepage
+!define forum "http://forum.ultrastardeluxe.org/" ; Forum Homepage
+
+!define exe "USdx" ; Current name of start exe (must also be defined in functions.nsh)
+
+!define demosong "http://ultrastardeluxe.xtremeweb-hosting.net/installer/songs/song.zip" ; URL from where the demo song "I18" will be downloaded
+!define demosong2 "http://ultrastardeluxe.xtremeweb-hosting.net/installer/songs/song2.zip" ; URL from where the demo song "Northern Star" will be downloaded
+
+; Theme URLs:
+
+!define dl_orange "http://ultrastardeluxe.xtremeweb-hosting.net/installer/themes/orange.zip"
+!define dl_vistar "http://ultrastardeluxe.xtremeweb-hosting.net/installer/themes/vistar.zip"
+!define dl_streetlight "http://ultrastardeluxe.xtremeweb-hosting.net/installer/themes/streetlight.zip"
+
+; Other Language Strings (except Section Language Strings)
+; can be found at .\langstrings.nsh
+
+!define eng_sec1_desc "These are the basic files needed by UltraStar Deluxe" ; English Description of Base components
+!define ger_sec1_desc "Dies sind die von UltraStar Deluxe benötigten Grunddateien" ; German Description of Base components
+
+!define eng_sec3_desc "You can choose which optional themes should also be installed." ; English Description of "Optional Themes"-Section
+!define ger_sec3_desc "Hier können optionale Motive zum Installieren gewählt werden." ; German Description of "Optional Themes"-Section
+
+!define eng_g2Section1_desc "Downloads the demo song 'Dead Smiling Pirates - I 18'. Requires: Active Internet connection!" ; English Description of the Example Song "I 18"
+!define ger_g2Section1_desc "Lädt das freie Beispiellied 'Dead Smiling Pirates - I 18' herunter. Benötigt: Aktive Internetverbindung!" ; German Description of the Example Song "I 18"
+
+!define eng_g2Section2_desc "Downloads the demo song 'Steven Dunston - Northern Star'. Requires: Active Internet connection!" ; English Description of the Example Song "Northern Star"
+!define ger_g2Section2_desc "Lädt das freie Beispiellied 'Steven Dunston - Northern Star' herunter. Benötigt: Aktive Internetverbindung!" ; German Description of the Example Song "Northern Star"
+
+!define eng_sec1 "Base components" ; English Name of the component section1
+!define ger_sec1 "Basiskomponenten" ; German Name of the component section1
+
+!define eng_sec2 "Demo Songs" ; English Name of the component section2
+!define ger_sec2 "Beispiellieder" ; German Name of the component section2
+
+!define eng_sec3 "Optional Themes" ; English Name of the component section group1
+!define ger_sec3 "Optionale Motive" ; German Name of the component section group1
+
+; Group Section Descriptions:
+
+!define eng_g1Sec1_desc "This will download the optional theme 'Orange' by Skar."
+!define ger_g1Sec1_desc "Dies lädt das optionale Motiv 'Orange' von Skar herunter."
+
+!define eng_g1Sec2_desc "This will download the optional theme 'Streetlight' by Skar."
+!define ger_g1Sec2_desc "Dies lädt das optionale Motiv 'Streetlight' von Skar herunter."
+
+!define eng_g1Sec3_desc "This will download the optional theme 'Vistar' by Skar."
+!define ger_g1Sec3_desc "Dies lädt das optionale Motiv 'Vistar' von Skar herunter."
+
+; Skin:
+
+!define gdf_path "$WINDIR\gdf.dll" ; Path to gdf.dll for Vista Game Explorer
+!define bmp_header "..\InstallerDependencies\images\header.bmp" ; Bitmap of the Installation Header (Size: 150x57 px)
+!define bmp_side "..\InstallerDependencies\images\left.bmp" ; Bitmap on the left side of Welcome & Finish Page (Size: 164x314 px)
+!define mui_ini ".\settings\io.ini" ; Installation Options for Welcome & Finish Page
+!define license_bgcolor "FFFFFF" ; RGB Background Color for Licence agreement
+!define bmp_check "..\InstallerDependencies\images\modern.bmp" ; Bitmap of Checks at Components Selection Page
+!define directory_bgcolor "FFFFFF" ; RGB Background Color for Directory textbox
+!define smp_bgcolor "FFFFFF" ; RGB Background of Startmenu List and Textbox
+;!define dets_bgcolor "FFFFFF" ; Background Color of Details Screen while files are being extracted
+!define file_license "..\InstallerDependencies\documents\License.txt" ; Choose the file with the license agreement \ No newline at end of file