launch mechanics working
This commit is contained in:
parent
72958950b7
commit
5c87704b10
7
app.js
7
app.js
|
@ -29,6 +29,13 @@ const run = () => {
|
||||||
app.on('window-all-closed', () => {
|
app.on('window-all-closed', () => {
|
||||||
app.quit()
|
app.quit()
|
||||||
})
|
})
|
||||||
|
ipcMain.handle('launch', async () => {
|
||||||
|
const result = await osuUtil.startOsuWithDevServer(tempOsuPath, "ez-pp.farm", async () => {
|
||||||
|
await doUpdateCheck(mainWindow);
|
||||||
|
});
|
||||||
|
console.log(result);
|
||||||
|
return result;
|
||||||
|
})
|
||||||
ipcMain.on('do-update-check', async () => {
|
ipcMain.on('do-update-check', async () => {
|
||||||
await doUpdateCheck(mainWindow);
|
await doUpdateCheck(mainWindow);
|
||||||
})
|
})
|
||||||
|
|
18
executeUtil.js
Normal file
18
executeUtil.js
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
const childProcess = require('child_process');
|
||||||
|
module.exports = {
|
||||||
|
runFile: (folder, file, args, onExit) => {
|
||||||
|
childProcess.execFile(file, args, {
|
||||||
|
cwd: folder
|
||||||
|
}, (_err, _stdout, _stderr) => {
|
||||||
|
onExit();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
runFileDetached: (folder, file, args) => {
|
||||||
|
const subprocess = childProcess.spawn(file + " " + args, {
|
||||||
|
cwd: folder,
|
||||||
|
detached: true,
|
||||||
|
stdio: 'ignore'
|
||||||
|
})
|
||||||
|
subprocess.unref()
|
||||||
|
}
|
||||||
|
}
|
11
osuUtil.js
11
osuUtil.js
|
@ -3,6 +3,7 @@ const fu = require('./fileUtil');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const crypto = require('crypto');
|
const crypto = require('crypto');
|
||||||
const axios = require('axios').default;
|
const axios = require('axios').default;
|
||||||
|
const executeUtil = require('./executeUtil');
|
||||||
const { EventEmitter } = require('events');
|
const { EventEmitter } = require('events');
|
||||||
const { DownloaderHelper } = require('node-downloader-helper');
|
const { DownloaderHelper } = require('node-downloader-helper');
|
||||||
|
|
||||||
|
@ -139,4 +140,12 @@ async function downloadUpdateFiles(osuPath, filesToUpdate) {
|
||||||
return eventEmitter;
|
return eventEmitter;
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = { isValidOsuFolder, getLatestConfig, getUpdateFiles, filesThatNeedUpdate, downloadUpdateFiles }
|
async function startWithDevServer(osuPath, serverDomain, onExit) {
|
||||||
|
const osuExe = path.join(osuPath, "osu!.exe");
|
||||||
|
console.log(osuExe);
|
||||||
|
if (!await fu.existsAsync(osuExe)) return false;
|
||||||
|
executeUtil.runFile(osuPath, osuExe, ["-devserver", serverDomain], onExit);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = { isValidOsuFolder, getLatestConfig, getUpdateFiles, filesThatNeedUpdate, downloadUpdateFiles, startOsuWithDevServer: startWithDevServer }
|
|
@ -20,7 +20,22 @@ window.addEventListener('DOMContentLoaded', () => {
|
||||||
$("#launch-btn").on('click', async () => {
|
$("#launch-btn").on('click', async () => {
|
||||||
switch (currentState) {
|
switch (currentState) {
|
||||||
case "up-to-date":
|
case "up-to-date":
|
||||||
//TODO: launch client
|
$("#launch-btn").attr('disabled', true);
|
||||||
|
$('#launch-btn').html('Launching...');
|
||||||
|
const result = await ipcRenderer.invoke("launch");
|
||||||
|
if (!result) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Uh oh!',
|
||||||
|
text: "Something went wrong while launching!",
|
||||||
|
icon: 'error',
|
||||||
|
confirmButtonText: 'Okay'
|
||||||
|
});
|
||||||
|
$("#launch-btn").attr('disabled', false);
|
||||||
|
$('#launch-btn').html('Launch');
|
||||||
|
} else {
|
||||||
|
$("#launch-btn").attr('disabled', true);
|
||||||
|
$('#launch-btn').html('Running...');
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case "update-available":
|
case "update-available":
|
||||||
$("#launch-btn").attr('disabled', true);
|
$("#launch-btn").attr('disabled', true);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user