mirror of
https://github.com/tobspr/shapez.io.git
synced 2026-03-02 03:39:21 +00:00
Support for building wegame specific version
This commit is contained in:
@@ -105,6 +105,10 @@ export class SteamAchievementProvider extends AchievementProviderInterface {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
if (G_WEGAME_VERSION) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
this.ipc = getIPCRenderer();
|
||||
|
||||
return this.ipc.invoke("steam:is-initialized").then(initialized => {
|
||||
@@ -125,6 +129,10 @@ export class SteamAchievementProvider extends AchievementProviderInterface {
|
||||
activate(key) {
|
||||
let promise;
|
||||
|
||||
if (G_WEGAME_VERSION) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
if (!this.initialized) {
|
||||
promise = Promise.resolve();
|
||||
} else {
|
||||
|
||||
@@ -7,6 +7,24 @@ const logger = createLogger("electron-storage");
|
||||
export class StorageImplElectron extends StorageInterface {
|
||||
constructor(app) {
|
||||
super(app);
|
||||
|
||||
/** @type {Object.<number, {resolve:Function, reject: Function}>} */
|
||||
this.jobs = {};
|
||||
this.jobId = 0;
|
||||
|
||||
getIPCRenderer().on("fs-response", (event, arg) => {
|
||||
const id = arg.id;
|
||||
if (!this.jobs[id]) {
|
||||
logger.warn("Got unhandled FS response, job not known:", id);
|
||||
return;
|
||||
}
|
||||
const { resolve, reject } = this.jobs[id];
|
||||
if (arg.result.success) {
|
||||
resolve(arg.result.data);
|
||||
} else {
|
||||
reject(arg.result.error);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
initialize() {
|
||||
@@ -15,53 +33,43 @@ export class StorageImplElectron extends StorageInterface {
|
||||
|
||||
writeFileAsync(filename, contents) {
|
||||
return new Promise((resolve, reject) => {
|
||||
getIPCRenderer()
|
||||
.invoke("fs-job", {
|
||||
type: "write",
|
||||
filename,
|
||||
contents,
|
||||
})
|
||||
.then(result => {
|
||||
if (result.success) {
|
||||
resolve(result.data);
|
||||
} else {
|
||||
reject(result.error);
|
||||
}
|
||||
});
|
||||
// ipcMain
|
||||
const jobId = ++this.jobId;
|
||||
this.jobs[jobId] = { resolve, reject };
|
||||
|
||||
getIPCRenderer().send("fs-job", {
|
||||
type: "write",
|
||||
filename,
|
||||
contents,
|
||||
id: jobId,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
readFileAsync(filename) {
|
||||
return new Promise((resolve, reject) => {
|
||||
getIPCRenderer()
|
||||
.invoke("fs-job", {
|
||||
type: "read",
|
||||
filename,
|
||||
})
|
||||
.then(result => {
|
||||
if (result.success) {
|
||||
resolve(result.data);
|
||||
} else {
|
||||
reject(result.error);
|
||||
}
|
||||
});
|
||||
// ipcMain
|
||||
const jobId = ++this.jobId;
|
||||
this.jobs[jobId] = { resolve, reject };
|
||||
|
||||
getIPCRenderer().send("fs-job", {
|
||||
type: "read",
|
||||
filename,
|
||||
id: jobId,
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
deleteFileAsync(filename) {
|
||||
return new Promise((resolve, reject) => {
|
||||
getIPCRenderer()
|
||||
.invoke("fs-job", {
|
||||
type: "delete",
|
||||
filename,
|
||||
})
|
||||
.then(result => {
|
||||
if (result.success) {
|
||||
resolve(result.data);
|
||||
} else {
|
||||
reject(result.error);
|
||||
}
|
||||
});
|
||||
// ipcMain
|
||||
const jobId = ++this.jobId;
|
||||
this.jobs[jobId] = { resolve, reject };
|
||||
getIPCRenderer().send("fs-job", {
|
||||
type: "delete",
|
||||
filename,
|
||||
id: jobId,
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,6 +73,10 @@ export class PlatformWrapperImplElectron extends PlatformWrapperImplBrowser {
|
||||
initializeDlcStatus() {
|
||||
const renderer = getIPCRenderer();
|
||||
|
||||
if (G_WEGAME_VERSION) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
logger.log("Checking DLC ownership ...");
|
||||
// @todo: Don't hardcode the app id
|
||||
return renderer.invoke("steam:check-app-ownership", 1625400).then(
|
||||
|
||||
@@ -87,7 +87,7 @@ export class MainMenuState extends GameState {
|
||||
|
||||
<div class="mainContainer">
|
||||
${
|
||||
isSupportedBrowser()
|
||||
G_IS_STANDALONE || isSupportedBrowser()
|
||||
? ""
|
||||
: `<div class="browserWarning">${T.mainMenu.browserWarning}</div>`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user