mirror of
https://git.sanhost.net/sanasol/hytale-f2p.git
synced 2026-02-26 06:41:47 -03:00
Add files via upload
This commit is contained in:
@@ -30,6 +30,24 @@ export function setupInstallation() {
|
|||||||
if (installPlayerName) {
|
if (installPlayerName) {
|
||||||
installPlayerName.addEventListener('change', savePlayerName);
|
installPlayerName.addEventListener('change', savePlayerName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (window.electronAPI && window.electronAPI.onProgressUpdate) {
|
||||||
|
window.electronAPI.onProgressUpdate((data) => {
|
||||||
|
if (window.LauncherUI) {
|
||||||
|
window.LauncherUI.showProgress();
|
||||||
|
window.LauncherUI.updateProgress(data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (window.electronAPI && window.electronAPI.onProgressComplete) {
|
||||||
|
window.electronAPI.onProgressComplete(() => {
|
||||||
|
if (window.LauncherUI) {
|
||||||
|
window.LauncherUI.hideProgress();
|
||||||
|
}
|
||||||
|
resetInstallButton();
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function installGame() {
|
export async function installGame() {
|
||||||
|
|||||||
@@ -31,6 +31,15 @@ export function setupLauncher() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (window.electronAPI && window.electronAPI.onProgressComplete) {
|
||||||
|
window.electronAPI.onProgressComplete(() => {
|
||||||
|
if (window.LauncherUI) {
|
||||||
|
window.LauncherUI.hideProgress();
|
||||||
|
}
|
||||||
|
resetPlayButton();
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function launch() {
|
export async function launch() {
|
||||||
|
|||||||
@@ -1,9 +1,42 @@
|
|||||||
import './ui.js';
|
import './ui.js';
|
||||||
import './install.js';
|
import './install.js';
|
||||||
import './launcher.js';
|
import './launcher.js';
|
||||||
import './news.js';
|
import './news.js';
|
||||||
import './mods.js';
|
import './mods.js';
|
||||||
import './players.js';
|
import './players.js';
|
||||||
import './chat.js';
|
import './chat.js';
|
||||||
import './settings.js';
|
import './settings.js';
|
||||||
|
|
||||||
|
// Discord notification functions
|
||||||
|
window.closeDiscordNotification = function() {
|
||||||
|
const notification = document.getElementById('discordNotification');
|
||||||
|
if (notification) {
|
||||||
|
notification.classList.add('hidden');
|
||||||
|
setTimeout(() => {
|
||||||
|
notification.style.display = 'none';
|
||||||
|
}, 300);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// Show notification after a delay
|
||||||
|
document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
const notification = document.getElementById('discordNotification');
|
||||||
|
if (notification) {
|
||||||
|
// Check if user has previously dismissed the notification
|
||||||
|
const dismissed = localStorage.getItem('discordNotificationDismissed');
|
||||||
|
if (!dismissed) {
|
||||||
|
setTimeout(() => {
|
||||||
|
notification.style.display = 'flex';
|
||||||
|
}, 3000); // Show after 3 seconds
|
||||||
|
} else {
|
||||||
|
notification.style.display = 'none';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// Remember when user closes notification
|
||||||
|
const originalClose = window.closeDiscordNotification;
|
||||||
|
window.closeDiscordNotification = function() {
|
||||||
|
localStorage.setItem('discordNotificationDismissed', 'true');
|
||||||
|
originalClose();
|
||||||
|
};
|
||||||
@@ -119,6 +119,15 @@ async function loadAllSettings() {
|
|||||||
await loadPlayerName();
|
await loadPlayerName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function openGameLocation() {
|
||||||
|
try {
|
||||||
|
if (window.electronAPI && window.electronAPI.openGameLocation) {
|
||||||
|
await window.electronAPI.openGameLocation();
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error opening game location:', error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function getCurrentJavaPath() {
|
export function getCurrentJavaPath() {
|
||||||
if (customJavaCheck && customJavaCheck.checked && customJavaPath) {
|
if (customJavaCheck && customJavaCheck.checked && customJavaPath) {
|
||||||
@@ -135,6 +144,9 @@ export function getCurrentPlayerName() {
|
|||||||
return 'Player';
|
return 'Player';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Make openGameLocation globally available
|
||||||
|
window.openGameLocation = openGameLocation;
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', initSettings);
|
document.addEventListener('DOMContentLoaded', initSettings);
|
||||||
|
|
||||||
window.SettingsAPI = {
|
window.SettingsAPI = {
|
||||||
|
|||||||
29
GUI/js/ui.js
29
GUI/js/ui.js
@@ -196,8 +196,26 @@ function setupFirstLaunchHandlers() {
|
|||||||
updateProgress(data);
|
updateProgress(data);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
let lockButtonTimeout = null;
|
||||||
|
|
||||||
window.electronAPI.onLockPlayButton((locked) => {
|
window.electronAPI.onLockPlayButton((locked) => {
|
||||||
lockPlayButton(locked);
|
lockPlayButton(locked);
|
||||||
|
|
||||||
|
if (locked) {
|
||||||
|
if (lockButtonTimeout) {
|
||||||
|
clearTimeout(lockButtonTimeout);
|
||||||
|
}
|
||||||
|
lockButtonTimeout = setTimeout(() => {
|
||||||
|
console.warn('Play button has been locked for too long, forcing unlock');
|
||||||
|
lockPlayButton(false);
|
||||||
|
lockButtonTimeout = null;
|
||||||
|
}, 20000);
|
||||||
|
} else {
|
||||||
|
if (lockButtonTimeout) {
|
||||||
|
clearTimeout(lockButtonTimeout);
|
||||||
|
lockButtonTimeout = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -448,6 +466,17 @@ function setupUI() {
|
|||||||
|
|
||||||
lockPlayButton(true);
|
lockPlayButton(true);
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
const playButton = document.getElementById('homePlayBtn');
|
||||||
|
if (playButton && playButton.getAttribute('data-locked') === 'true') {
|
||||||
|
const spanElement = playButton.querySelector('span');
|
||||||
|
if (spanElement && spanElement.textContent === 'CHECKING...') {
|
||||||
|
console.warn('Play button still locked after startup timeout, forcing unlock');
|
||||||
|
lockPlayButton(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, 25000);
|
||||||
|
|
||||||
handleNavigation();
|
handleNavigation();
|
||||||
setupWindowControls();
|
setupWindowControls();
|
||||||
setupSidebarLogo();
|
setupSidebarLogo();
|
||||||
|
|||||||
Reference in New Issue
Block a user