aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/app/js/browser.js27
-rw-r--r--src/cli.js6
-rw-r--r--src/lang/de.json1
-rw-r--r--src/lang/en.json1
-rw-r--r--src/lang/es.json3
-rw-r--r--src/lang/fr.json1
-rw-r--r--src/lang/zh.json1
-rw-r--r--src/modules/findgame.js2
8 files changed, 28 insertions, 14 deletions
diff --git a/src/app/js/browser.js b/src/app/js/browser.js
index 7dc84d9..bd9506f 100644
--- a/src/app/js/browser.js
+++ b/src/app/js/browser.js
@@ -1,5 +1,5 @@
const Fuse = require("fuse.js");
-const ipcRenderer = require("electron").ipcRenderer;
+const { ipcRenderer, shell } = require("electron");
const lang = require("../../lang");
@@ -414,13 +414,24 @@ browser.mod_el = (properties) => {
let installicon = "downloads";
let installstr = lang("gui.browser.install");
- let normalized_mods = [];
+ let normalized_title = mods.normalize(properties.title)
+ let installcallback = () => {
+ browser.install(properties);
+ }
- for (let i = 0; i < mods.list().all; i++) {
- normalized_mods.push(mods.normalize(mods_list[i].name));
+ let nondefault_install = {
+ "vanillaplus": "https://github.com/Zayveeo5e/NP.VanillaPlus/blob/main/README.md"
}
- if (properties.pkg.local_version) {
+ if (normalized_title in nondefault_install) {
+ installicon = "open";
+ installstr = lang("gui.browser.guide");
+
+ installcallback = () => {
+ shell.openExternal(nondefault_install[normalized_title])
+ }
+ }
+ else if (properties.pkg.local_version) {
installicon = "redo";
installstr = lang("gui.browser.reinstall");
@@ -432,7 +443,7 @@ browser.mod_el = (properties) => {
let entry = document.createElement("div");
entry.classList.add("el");
- entry.id = `mod-${mods.normalize(properties.title)}`;
+ entry.id = `mod-${normalized_title}`;
entry.innerHTML = `
<div class="image">
@@ -459,9 +470,7 @@ browser.mod_el = (properties) => {
</div>
`
- entry.querySelector("button.install").addEventListener("click", () => {
- browser.install(properties);
- })
+ entry.querySelector("button.install").addEventListener("click", installcallback)
browserEntries.appendChild(entry);
}
diff --git a/src/cli.js b/src/cli.js
index c3d957e..c9fe05a 100644
--- a/src/cli.js
+++ b/src/cli.js
@@ -115,9 +115,9 @@ async function init() {
}
// Mod related args, --installmod, --removemod, --togglemod
- if (cli.hasSwitch("installmod") && gamepathExists()) {ipcMain.emit("installmod")}
- if (cli.hasSwitch("removemod") && gamepathExists()) {ipcMain.emit("removemod", "", cli.getSwitchValue("removemod"))}
- if (cli.hasSwitch("togglemod") && gamepathExists()) {ipcMain.emit("togglemod", "", cli.getSwitchValue("togglemod"))}
+ if (cli.hasSwitch("installmod") && gamepathExists()) {ipcMain.emit("install-mod")}
+ if (cli.hasSwitch("removemod") && gamepathExists()) {ipcMain.emit("remove-mod", "", cli.getSwitchValue("removemod"))}
+ if (cli.hasSwitch("togglemod") && gamepathExists()) {ipcMain.emit("toggle-mod", "", cli.getSwitchValue("togglemod"))}
// Prints out the list of mods
if (cli.hasSwitch("mods") && gamepathExists()) {ipcMain.emit("getmods")}
diff --git a/src/lang/de.json b/src/lang/de.json
index 9e68986..0eb17dc 100644
--- a/src/lang/de.json
+++ b/src/lang/de.json
@@ -72,6 +72,7 @@
"server": "Server-seitig",
"skins": "Skins"
},
+ "guide": "Anleitung",
"info": "Info",
"install": "Installieren",
"load_more": "Lade mehr...",
diff --git a/src/lang/en.json b/src/lang/en.json
index c705517..f968f73 100644
--- a/src/lang/en.json
+++ b/src/lang/en.json
@@ -119,6 +119,7 @@
"load_more": "Load more...",
"end_of_list": "All packages have been loaded.",
"no_results": "No results...",
+ "guide": "Guide",
"filter": {
"mods": "Mods",
diff --git a/src/lang/es.json b/src/lang/es.json
index 3da6d89..ebde5f9 100644
--- a/src/lang/es.json
+++ b/src/lang/es.json
@@ -72,6 +72,7 @@
"server": "Del lado del servidor",
"skins": "Skins"
},
+ "guide": "Guía",
"info": "Información",
"install": "Instalar",
"load_more": "Cargar más...",
@@ -286,4 +287,4 @@
"release": "Notas de la versión"
}
}
-}
+} \ No newline at end of file
diff --git a/src/lang/fr.json b/src/lang/fr.json
index 52d9703..492ba76 100644
--- a/src/lang/fr.json
+++ b/src/lang/fr.json
@@ -72,6 +72,7 @@
"server": "Côté serveur",
"skins": "Skins"
},
+ "guide": "Guide",
"info": "Info",
"install": "Installer",
"load_more": "Charger plus de mods...",
diff --git a/src/lang/zh.json b/src/lang/zh.json
index ae086d4..2976eed 100644
--- a/src/lang/zh.json
+++ b/src/lang/zh.json
@@ -72,6 +72,7 @@
"server": "服务器端",
"skins": "皮肤"
},
+ "guide": "安装指南",
"info": "详情",
"install": "安装",
"load_more": "加载更多...",
diff --git a/src/modules/findgame.js b/src/modules/findgame.js
index f8d0126..d53397b 100644
--- a/src/modules/findgame.js
+++ b/src/modules/findgame.js
@@ -31,7 +31,7 @@ module.exports = async () => {
data = vdf.parse(data); // parse read_data
// verify VDF was parsed correctly
- if (! data || typeof data !== "object") {
+ if (! data || typeof data !== "object" || ! data.libraryfolders) {
return;
}