stable launch 100% (yeeees)
This commit is contained in:
@ -19,28 +19,28 @@ import { spawn } from 'child_process';
|
||||
import { AuthService } from './auth-service';
|
||||
import { API_BASE_URL } from '../renderer/api';
|
||||
|
||||
const CDN = 'https://cdn.minecraft.popa-popa.ru';
|
||||
// const CDN = 'https://cdn.minecraft.popa-popa.ru';
|
||||
|
||||
const DOWNLOAD_OPTIONS = {
|
||||
// assets (objects/)
|
||||
assetsHost: `${CDN}/assets/objects`,
|
||||
// const DOWNLOAD_OPTIONS = {
|
||||
// // assets (objects/)
|
||||
// assetsHost: `${CDN}/assets/objects`,
|
||||
|
||||
// библиотеки (jar'ы)
|
||||
libraryHost(library: { path: any }) {
|
||||
return `${CDN}/libraries/${library.path}`;
|
||||
},
|
||||
// // библиотеки (jar'ы)
|
||||
// libraryHost(library: { path: any }) {
|
||||
// return `${CDN}/libraries/${library.path}`;
|
||||
// },
|
||||
|
||||
assetsIndexUrl: (version: any) =>
|
||||
`${CDN}/assets/indexes/${version.assetIndex.id}.json`,
|
||||
// assetsIndexUrl: (version: any) =>
|
||||
// `${CDN}/assets/indexes/${version.assetIndex.id}.json`,
|
||||
|
||||
// версии
|
||||
json(versionInfo: { id: any }) {
|
||||
return `${CDN}/versions/${versionInfo.id}/${versionInfo.id}.json`;
|
||||
},
|
||||
client(resolved: { id: any }) {
|
||||
return `${CDN}/versions/${resolved.id}/${resolved.id}.jar`;
|
||||
},
|
||||
};
|
||||
// // версии
|
||||
// json(versionInfo: { id: any }) {
|
||||
// return `${CDN}/versions/${versionInfo.id}/${versionInfo.id}.json`;
|
||||
// },
|
||||
// client(resolved: { id: any }) {
|
||||
// return `${CDN}/versions/${resolved.id}/${resolved.id}.jar`;
|
||||
// },
|
||||
// };
|
||||
|
||||
// Константы
|
||||
const AUTHLIB_INJECTOR_FILENAME = 'authlib-injector-1.2.5.jar';
|
||||
@ -617,7 +617,7 @@ export function initMinecraftHandlers() {
|
||||
assetsDownloadConcurrency: 2,
|
||||
librariesDownloadConcurrency: 2,
|
||||
dispatcher: agent,
|
||||
...DOWNLOAD_OPTIONS,
|
||||
// ...DOWNLOAD_OPTIONS,
|
||||
});
|
||||
|
||||
console.log('installMcTask started for', minecraftVersion.id);
|
||||
@ -716,7 +716,7 @@ export function initMinecraftHandlers() {
|
||||
// Игнорируем sha1, чтобы не падать из-за несоответствий
|
||||
},
|
||||
}),
|
||||
...DOWNLOAD_OPTIONS,
|
||||
// ...DOWNLOAD_OPTIONS,
|
||||
});
|
||||
|
||||
await depsTask.startAndWait({
|
||||
@ -785,11 +785,43 @@ export function initMinecraftHandlers() {
|
||||
},
|
||||
});
|
||||
|
||||
let stderrBuffer = '';
|
||||
|
||||
proc.stdout?.on('data', (data) => {
|
||||
console.log(`Minecraft stdout: ${data}`);
|
||||
});
|
||||
|
||||
proc.stderr?.on('data', (data) => {
|
||||
console.error(`Minecraft stderr: ${data}`);
|
||||
const text = data.toString();
|
||||
console.error(`Minecraft stderr: ${text}`);
|
||||
stderrBuffer += text;
|
||||
|
||||
// Пробрасываем сырой лог клиенту (если захочешь где-то выводить)
|
||||
event.sender.send('minecraft-log', text);
|
||||
|
||||
// Если это ошибка — сразу уведомим пользователя
|
||||
if (text.toLowerCase().includes('error')) {
|
||||
event.sender.send('minecraft-error', {
|
||||
message: text,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
proc.on('exit', (code) => {
|
||||
console.log('Minecraft exited with code', code);
|
||||
|
||||
if (code !== 0) {
|
||||
event.sender.send('installation-status', {
|
||||
step: 'error',
|
||||
message: `Minecraft завершился с ошибкой (код ${code})`,
|
||||
});
|
||||
|
||||
event.sender.send('minecraft-error', {
|
||||
message: `Minecraft завершился с ошибкой (код ${code})`,
|
||||
stderr: stderrBuffer,
|
||||
code,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
console.log('Запуск игры...');
|
||||
|
||||
Reference in New Issue
Block a user