diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
index 1d5af33..6f7f380 100644
--- a/src-tauri/tauri.conf.json
+++ b/src-tauri/tauri.conf.json
@@ -8,7 +8,7 @@
},
"package": {
"productName": "ETB Rocket",
- "version": "0.9.65"
+ "version": "0.9.7"
},
"tauri": {
"allowlist": {
@@ -18,7 +18,7 @@
},
"fs": {
"all": true,
- "scope": ["**", "**/*", "/**/*","$RESOURCE/*"]
+ "scope": ["**", "**/*", "/**/*","$RESOURCE/*", "$APP/*", "$APP/*/*", "$APP/*/*/*"]
},
"shell": {
"open": true
diff --git a/src/lib/components/modcard.svelte b/src/lib/components/modcard.svelte
index b326251..953849d 100644
--- a/src/lib/components/modcard.svelte
+++ b/src/lib/components/modcard.svelte
@@ -52,7 +52,7 @@
console.log("HTTP Client loaded!")
const steam_game_loc = $steamPath+"/steamapps/common/EscapeTheBackrooms"
- const basePath = steam_game_loc + "/EscapeTheBackrooms/Content/Paks/"
+ const basePathError = steam_game_loc + "/EscapeTheBackrooms/Content/Paks/"
if (nexus) {
loading = "Loading";
@@ -88,16 +88,17 @@
console.log("File downloaded!")
loading = "Foldering";
- invoke("expand_scope", { folderPath: basePath })
- try {await createDir(basePath+folder)} catch {console.log("No directory was created!")}
+ try {await createDir("", { dir: BaseDirectory.App })} catch {console.log("No BASE directory was created!")}
+ try {await createDir("mods", { dir: BaseDirectory.App })} catch {console.log("No MODS directory was created!")}
+ try {await createDir("mods/"+folder, { dir: BaseDirectory.App })} catch {console.log("No MODLOADER directory was created!")}
loading = "Writing";
console.log("Writing binary file")
- await writeBinaryFile(basePath+folder+"/"+url.split('#')[0].split('?')[0].split('/').pop(), new Uint8Array(file.data));
+ await writeBinaryFile("mods/"+folder+"/"+url.split('#')[0].split('?')[0].split('/').pop(), new Uint8Array(file.data), { dir: BaseDirectory.App });
loading = "Cleaning";
- console.log("Mod File Saved to "+basePath+folder+"/"+url.split('#')[0].split('?')[0].split('/').pop())
+ console.log("Mod File Saved to "+folder+"/"+url.split('#')[0].split('?')[0].split('/').pop())
if (!reinstalling) {
let dc = get(downloaded)
diff --git a/src/lib/components/nxmcard.svelte b/src/lib/components/nxmcard.svelte
index 1a23733..d3d5cab 100644
--- a/src/lib/components/nxmcard.svelte
+++ b/src/lib/components/nxmcard.svelte
@@ -66,7 +66,7 @@
} else {
foundLoader = true
is_interpose = false;
- loader = "Cant ";
+ loader = "Unknown";
}
loading = "Cleaning up";
@@ -76,6 +76,8 @@
try {
await installMod()
} catch (err) {
+ console.log("Error installing mod:")
+ console.error(err)
alert(err)
}
}
@@ -180,25 +182,21 @@
console.log(entries[zipdataname])
- // Comment to whoever will look at the code:
- // Its a mess i know. But, it somehow work. It seems that it dosent if you look at the files but at the same time
- // for some wierd magic, it works. I dont know why. I dont know how. But it works. So, i will leave it as is.
- // If you think you have a better solution go to the Pull Request and make a PR. I will be happy to merge it.
-
//@ts-ignore
let modfile = await entries[zipdataname].arrayBuffer()
loading = "Foldering";
- invoke("expand_scope", { folderPath: basePath })
- try {await createDir(basePath+folder)} catch {console.log("No directory was created!")}
+ try {await createDir("", { dir: BaseDirectory.App })} catch {console.log("No BASE directory was created!")}
+ try {await createDir("mods", { dir: BaseDirectory.App })} catch {console.log("No MODS directory was created!")}
+ try {await createDir("mods/"+folder, { dir: BaseDirectory.App })} catch {console.log("No MODLOADER directory was created!")}
loading = "Writing";
- await writeBinaryFile(basePath+folder+"/"+zipdataname.split("/").at(-1), modfile);
+ await writeBinaryFile("mods/"+folder+"/"+zipdataname.split("/").at(-1), modfile, { dir: BaseDirectory.App });
loading = "Cleaning";
- console.log("Mod File Saved to "+basePath+folder+"/"+zipdataname)
+ console.log("Mod File Saved to mods/"+folder+"/"+zipdataname)
let dc: any[string] = get(downloaded)
diff --git a/src/routes/mods/+page.svelte b/src/routes/mods/+page.svelte
index 2342af0..065ec01 100644
--- a/src/routes/mods/+page.svelte
+++ b/src/routes/mods/+page.svelte
@@ -9,14 +9,18 @@
let loadingModsPhase = 0;
function limitStringTo240WordsAndRemoveBr(inputString) {
- let stringWithoutBr = inputString.replace(/
/gi, ' ');
- let wordsArray = stringWithoutBr.split(/\s+/);
+ try {
+ let stringWithoutBr = inputString.replace(/
/gi, ' ');
+ let wordsArray = stringWithoutBr.split(/\s+/);
- if (wordsArray.length > 240) {
- wordsArray = wordsArray.slice(0, 240);
+ if (wordsArray.length > 240) {
+ wordsArray = wordsArray.slice(0, 240);
+ }
+ return wordsArray.join(' ');
+ } catch {
+ // Limit to 400 chars
+ return false;
}
-
- return wordsArray.join(' ');
}
async function NexusGetOthers() {
@@ -83,11 +87,14 @@
if (isModAlreadyScanned(element)) {return;}
+ let description = limitStringTo240WordsAndRemoveBr(element.summary);
+ if (description === false) {return;}
+
modz.push({
cover: element.picture_url,
modVersion: element.version,
nexus: true,
- description: limitStringTo240WordsAndRemoveBr(element.summary),
+ description: description,
author: element.author,
name: element.name,
mod_id: element.mod_id
@@ -98,12 +105,14 @@
if (element.name === "Interpose Map Loader" || element.name === "Interpose Mod Loader" || element.contains_adult_content === true) {return;}
if (isModAlreadyScanned(element)) {return;}
+ let description = limitStringTo240WordsAndRemoveBr(element.summary);
+ if (description === false) {return;}
modz.push({
cover: element.picture_url,
modVersion: element.version,
nexus: true,
- description: limitStringTo240WordsAndRemoveBr(element.summary),
+ description: description,
author: element.author,
name: element.name,
mod_id: element.mod_id
@@ -113,12 +122,14 @@
if (element.name === "Interpose Map Loader" || element.name === "Interpose Mod Loader" || element.contains_adult_content === true) {return;}
if (isModAlreadyScanned(element)) {return;}
+ let description = limitStringTo240WordsAndRemoveBr(element.summary);
+ if (description === false) {return;}
modz.push({
cover: element.picture_url,
modVersion: element.version,
nexus: true,
- description: limitStringTo240WordsAndRemoveBr(element.summary),
+ description: description,
author: element.author,
name: element.name,
mod_id: element.mod_id