jkxr/JKXR-PCVR-Installer/JKXR_JKO.iss

91 lines
3.8 KiB
Text
Raw Normal View History

2023-11-26 11:20:51 +00:00
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "JKXR - Jedi Outcast"
2023-11-26 17:43:05 +00:00
#define MyAppVersion "1.0.21"
2023-11-26 11:20:51 +00:00
#define MyAppPublisher "Team Beef VR"
#define MyAppURL "https://www.patreon.com/teambeef"
#define MyAppExeName "openjo_sp.x86_64.exe"
[Setup]
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{3B2C9382-66B4-48E6-B625-F567F350283D}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={autopf}\Steam\steamapps\common\Jedi Outcast\GameData\
DisableProgramGroupPage=yes
; Uncomment the following line to run in non administrative install mode (install for current user only.)
;PrivilegesRequired=lowest
OutputDir=C:\Dev\Quest\JKXR\JKXR-PCVR-Installer
OutputBaseFilename=JKXR_JKO_Setup
Compression=lzma
SolidCompression=yes
WizardStyle=modern
AlwaysShowDirOnReadyPage=yes
AppendDefaultDirName=no
2023-11-26 17:43:05 +00:00
DisableWelcomePage=yes
2023-11-26 11:20:51 +00:00
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\{#MyAppExeName}"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\jospgamex86_64.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\OpenAL32.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\rdjosp-vanilla_x86_64.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\SDL2.dll"; DestDir: "{app}"; Flags: ignoreversion
2023-11-26 17:43:05 +00:00
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\packaged_mods_credits.txt"; DestDir: "{app}"; Flags: ignoreversion
2023-11-26 11:20:51 +00:00
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\JKO\base\*"; DestDir: "{app}\base"; Flags: ignoreversion recursesubdirs createallsubdirs
2023-11-26 17:43:05 +00:00
Source: "C:\Dev\Quest\JKXR\JKXR-PCVR-Installer\vr_splash.bmp"; Flags: dontcopy
2023-11-26 11:20:51 +00:00
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
2023-11-26 17:43:05 +00:00
[Code]
var
Page: TWizardPage;
procedure InitializeWizard();
var
BitmapImage: TBitmapImage;
BitmapFileName: String;
begin
Page := CreateCustomPage(wpWelcome, 'JKXR - Jedi Outcast Installer', 'Join our Patreon at: patreon.com/teambeef');
BitmapFileName := ExpandConstant('{tmp}\vr_splash.bmp');
ExtractTemporaryFile(ExtractFileName(BitmapFileName));
BitmapImage := TBitmapImage.Create(Page);
BitmapImage.Bitmap.LoadFromFile(BitmapFileName);
BitmapImage.Center := True;
BitmapImage.Stretch := True;
BitmapImage.Parent := Page.Surface;
with BitmapImage do begin
Width := Page.SurfaceHeight + 10;
Height := Page.SurfaceHeight + 10;
Parent := Page.Surface;
end;
end;
function NextButtonClick(CurPageID: Integer): Boolean;
begin
{ Validate certain pages before allowing the user to proceed }
if CurPageID = Page.ID then begin
SuppressibleMsgBox('If installing into the same location as an existing Jedi Outcast install, please ensure you choose the directory that contains the single player executable and the "base" folder (probably called Jedi Outcast\GameData)', mbConfirmation, MB_OK, IDOK);
end;
Result := True;
end;