aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author0neGal <mail@0negal.com>2022-01-10 17:02:55 +0100
committerGitHub <noreply@github.com>2022-01-10 17:02:55 +0100
commit9dbf85ca6655d8b14c8f0ad090a9b30e1ec951cf (patch)
treedc3659357f9e991d24c07537309fc132750272ad
parentdc36aff8d0872b1fbfae265b97d8589c19d6ea5c (diff)
parent0ceea0f8699d02054ba86c8171ad834a8cdf4747 (diff)
downloadViper-9dbf85ca6655d8b14c8f0ad090a9b30e1ec951cf.tar.gz
Viper-9dbf85ca6655d8b14c8f0ad090a9b30e1ec951cf.zip
Merge pull request #35 from Alystrasz/fix/install-ns-on-first-launch
feat: Disable NS button when NS isn't installed
-rw-r--r--src/app/index.html2
-rw-r--r--src/app/main.css2
-rw-r--r--src/app/main.js21
-rw-r--r--src/lang/en.json1
-rw-r--r--src/lang/fr.json1
5 files changed, 23 insertions, 4 deletions
diff --git a/src/app/index.html b/src/app/index.html
index 88d5a17..d9db79b 100644
--- a/src/app/index.html
+++ b/src/app/index.html
@@ -15,7 +15,7 @@
</div>
<div class="buttons">
<button id="exit" onclick="exit()">%%gui.exit%%</button>
- <button id="update" onclick="update()">%%gui.update%%</button>
+ <button id="updateBtn" onclick="update()">%%gui.update%%</button>
<button id="setpath" onclick="setpath()">%%gui.setpath%%</button>
</div>
</div>
diff --git a/src/app/main.css b/src/app/main.css
index 56f17b2..69b10ad 100644
--- a/src/app/main.css
+++ b/src/app/main.css
@@ -110,7 +110,7 @@ button:active {
#setpath {background: #5E81AC}
#vanilla, #exit {background: #656E7F}
-#update, #installmod {background: var(--blue)}
+#updateBtn, #installmod {background: var(--blue)}
#togglemod, #toggleall {background: var(--yellow)}
#northstar, #removeall, #removemod {background: var(--red)}
button:disabled {background: var(--disabled) !important; opacity: 0.5}
diff --git a/src/app/main.js b/src/app/main.js
index 1678b86..c365cf4 100644
--- a/src/app/main.js
+++ b/src/app/main.js
@@ -3,6 +3,7 @@ const path = require("path");
const { ipcRenderer } = require("electron");
const lang = require("../lang");
+let shouldInstallNorthstar = false;
var settings = {
gamepath: "",
@@ -43,7 +44,14 @@ function setpath(value = false) {
ipcRenderer.send("setpath", value);
}
-function launch() {ipcRenderer.send("launch")}
+function launch() {
+ if (shouldInstallNorthstar) {
+ update();
+ shouldInstallNorthstar = false;
+ } else {
+ ipcRenderer.send("launch");
+ }
+}
function launchVanilla() {ipcRenderer.send("launchVanilla")}
function log(msg) {
@@ -110,7 +118,11 @@ function installmod() {
ipcRenderer.send("installmod")
}
-ipcRenderer.on("ns-updated", () => {setButtons(true)})
+ipcRenderer.on("ns-updated", () => {
+ setButtons(true);
+ northstar.disabled = false;
+ updateBtn.innerText = lang("gui.update");
+})
ipcRenderer.on("ns-updating", () => {setButtons(false)})
ipcRenderer.on("newpath", (event, newpath) => {
@@ -150,6 +162,11 @@ ipcRenderer.on("version", (event, versions) => {
for (let i = 0; i < buttons.length; i++) {
buttons[i].disabled = true;
}
+
+ // Since Northstar is not installed, we cannot launch it
+ northstar.disabled = true;
+ shouldInstallNorthstar = true;
+ updateBtn.innerText = lang("gui.installnorthstar");
}
}); ipcRenderer.send("getversion");
diff --git a/src/lang/en.json b/src/lang/en.json
index 61a8545..68d46c7 100644
--- a/src/lang/en.json
+++ b/src/lang/en.json
@@ -61,6 +61,7 @@
"gui.launch": "Launch",
"gui.launchvanilla": "Vanilla",
"gui.launchnorthstar": "Northstar",
+ "gui.installnorthstar": "Install",
"gui.selectpath": "Please select the path!",
"gui.gamepath.must": "The game path must be set to start Viper.",
diff --git a/src/lang/fr.json b/src/lang/fr.json
index 58302e9..22afa9a 100644
--- a/src/lang/fr.json
+++ b/src/lang/fr.json
@@ -61,6 +61,7 @@
"gui.launch": "Jouer",
"gui.launchvanilla": "Vanilla",
"gui.launchnorthstar": "Northstar",
+ "gui.installnorthstar": "Installer",
"gui.selectpath": "Veuillez sélectionner le dossier où se trouve le client Titanfall 2.",
"gui.gamepath.must": "Vous devez sélectionner le chemin du dossier du jeu Titanfall 2 pour pouvoir lancer Viper.",