mirror of
https://github.com/gradenGnostic/LegacyLauncher.git
synced 2026-04-23 15:36:23 +00:00
160 lines
6.8 KiB
HTML
160 lines
6.8 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>LegacyLauncher</title>
|
||
<link rel="icon" type="image/png" href="512x512.png">
|
||
<link rel="stylesheet" href="style.css">
|
||
<script src="https://cdn.tailwindcss.com"></script>
|
||
</head>
|
||
<body>
|
||
|
||
<div class="title-bar">
|
||
<div class="title-bar-text">LegacyLauncher</div>
|
||
<div class="window-controls">
|
||
<div class="win-btn" onclick="minimizeWindow()">−</div>
|
||
<div class="win-btn" id="maximize-btn" onclick="toggleMaximize()">▢</div>
|
||
<div class="win-btn close" onclick="closeWindow()">×</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div id="loader">
|
||
<div class="loader-content">
|
||
<div class="loader-spinner"></div>
|
||
<div id="loader-text">CONNECTING...</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="main-wrapper">
|
||
<div class="sidebar">
|
||
<div class="sidebar-title">PATCH NOTES</div>
|
||
<div id="updates-list">
|
||
<div class="update-item">Loading updates...</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="content-area">
|
||
<img src="minecraftlogo.png" class="mc-logo-img" alt="Minecraft Logo">
|
||
|
||
<div id="btn-play-main" class="btn-mc btn-play" onclick="launchGame()">PLAY</div>
|
||
|
||
<div class="version-row">
|
||
<span class="version-label">Version:</span>
|
||
<div class="version-select-box">
|
||
<span id="current-version-display">Loading...</span>
|
||
<div class="select-arrow">▼</div>
|
||
<select id="version-select" class="hidden-select" onchange="updateSelectedRelease()">
|
||
<option>Loading...</option>
|
||
</select>
|
||
</div>
|
||
<div id="btn-check-update" class="btn-mc btn-mini" onclick="checkForUpdatesManual()" title="Check for Updates">
|
||
<img src="restart.png" alt="Update">
|
||
</div>
|
||
</div>
|
||
|
||
<div class="flex gap-4 w-[500px] max-w-[90%]">
|
||
<div class="btn-mc flex-grow" id="btn-profile" onclick="toggleProfile(true)">PROFILE</div>
|
||
<div class="btn-mc flex-grow" id="btn-options" onclick="toggleOptions(true)">OPTIONS</div>
|
||
</div>
|
||
|
||
<div class="progress-container" id="progress-container">
|
||
<div class="progress-text" id="progress-text">Downloading...</div>
|
||
<div class="progress-bar-bg">
|
||
<div class="progress-bar-fill" id="progress-bar-fill"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="modal-overlay" id="options-modal">
|
||
<div class="modal-box">
|
||
<div class="modal-title">LAUNCHER OPTIONS</div>
|
||
|
||
<div class="mc-input-group">
|
||
<label class="mc-label">GitHub Repository Source:</label>
|
||
<input type="text" id="repo-input" class="mc-input" placeholder="user/repo">
|
||
</div>
|
||
|
||
<div class="mc-input-group">
|
||
<label class="mc-label">Client Executable Name:</label>
|
||
<input type="text" id="exec-input" class="mc-input" placeholder="Minecraft.Client.exe">
|
||
</div>
|
||
|
||
<div id="compat-option-container" class="mc-input-group" style="display: none;">
|
||
<label class="mc-label">Compatibility Layer (Linux):</label>
|
||
<div id="compat-select-box" class="version-select-box" style="width: 100%; height: 48px; margin-top: 8px;">
|
||
<span id="current-compat-display">Default (Direct)</span>
|
||
<div class="select-arrow" style="height: 44px;">▼</div>
|
||
<select id="compat-select" class="hidden-select" onchange="updateCompatDisplay()">
|
||
<option value="direct">Default (Direct)</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="grid grid-cols-2 gap-4 w-full mt-2">
|
||
<div class="mc-input-group">
|
||
<label class="mc-label">Connect/Bind IP:</label>
|
||
<input type="text" id="ip-input" class="mc-input" placeholder="Optional">
|
||
</div>
|
||
<div class="mc-input-group">
|
||
<label class="mc-label">Port:</label>
|
||
<input type="text" id="port-input" class="mc-input" placeholder="Optional">
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mc-input-group">
|
||
<label class="mc-label" style="display: flex; align-items: center; cursor: pointer;">
|
||
<input type="checkbox" id="server-checkbox" style="width: 24px; height: 24px; margin-right: 12px; cursor: pointer;">
|
||
Launch as Headless Server (-server)
|
||
</label>
|
||
</div>
|
||
|
||
<div class="flex gap-4 w-full mt-4">
|
||
<div id="btn-options-done" class="btn-mc flex-grow" onclick="saveOptions()">DONE</div>
|
||
<div id="btn-options-cancel" class="btn-mc flex-grow" onclick="toggleOptions(false)">CANCEL</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="modal-overlay" id="profile-modal">
|
||
<div class="modal-box">
|
||
<div class="modal-title">PLAYER PROFILE</div>
|
||
|
||
<div class="mc-input-group">
|
||
<label class="mc-label">In-Game Username:</label>
|
||
<input type="text" id="username-input" class="mc-input" placeholder="Steve">
|
||
</div>
|
||
|
||
<div class="mc-input-group mt-4">
|
||
<label class="mc-label">Total Playtime:</label>
|
||
<div id="playtime-display" style="color: #222; font-size: 26px; text-shadow: 1px 1px 0 #fff;">0h 0m 0s</div>
|
||
</div>
|
||
|
||
<div class="flex gap-4 w-full mt-4">
|
||
<div id="btn-profile-save" class="btn-mc flex-grow" onclick="saveProfile()">SAVE</div>
|
||
<div id="btn-profile-cancel" class="btn-mc flex-grow" onclick="toggleProfile(false)">CANCEL</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="modal-overlay" id="update-modal">
|
||
<div class="modal-box relative">
|
||
<div class="modal-close-btn" id="btn-close-update">×</div>
|
||
<div class="modal-title">UPDATE AVAILABLE</div>
|
||
<div id="update-modal-text" class="modal-body-text">
|
||
A new version is available. Would you like to update now?
|
||
</div>
|
||
<div class="flex gap-4 w-full">
|
||
<div class="btn-mc flex-grow" id="btn-confirm-update">UPDATE NOW</div>
|
||
<div class="btn-mc flex-grow" id="btn-skip-update">LATER</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div id="toast">NOTIFICATION</div>
|
||
|
||
<script src="renderer.js"></script>
|
||
</body>
|
||
</html>
|