Website/games.html
OriginalUsername843 771f354d74 Initial Commit
2026-05-26 12:19:08 -06:00

165 lines
6.7 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>angry.hair | Game Server Fury</title>
<meta name="description" content="Home-hosted game servers with attitude. Join the rage. Connect to Minecraft, WoW, UT2004, BF1942 Desert Combat, and Valheim." />
<!-- Favicon (optional angry hair icon) -->
<link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%22.9em%22 font-size=%2290%22>💇🏽‍♂️</text></svg>">
<!--libcodef-->
<script src="lib/codef_core.js"></script>
<script src="lib/codef_scrolltext.js"></script>
<link rel="stylesheet" href="style.css"/>
</head>
<body>
<header>
<div id="main"></div>
<div id="main2"></div>
<p class="glitch" style="margin-top: 1rem; font-size: 1.1rem; color: #ff9999;">
Self-Hosted Game Servers.
</p>
</header>
<main>
<section class="game-section" style="margin-top:15rem">
<div class="game-header">
<span>Minecraft</span>
</div>
<div class="game-content">
<div class="instructions">
<strong>IP:</strong> <code>angry.hair</code><br>
<strong>Port:</strong> <code>DEFAULT</code><br>
<strong>Client Compatibility:</strong> Use either Java or Bedrock clients
</div>
<div class="game-info">
<strong>Status:</strong> <span id="mc-status" style="color:#ff4d4d;">ONLINE</span><br>
<strong>Players:</strong> <span id="mc-players">0 / 50</span><br>
<strong>Version:</strong> <span id="mc-version">1.20.4 (Paper)</span>
</div>
</div>
</section>
<section class="game-section">
<div class="game-header">
<span>World of Warcraft</span>
</div>
<div class="game-content">
<div class="instructions">
<strong>Account creation and instructions: <a href="https://wowweb.angry.hair">CLICK HERE</a></strong>
</div>
<div class="game-info">
<strong>Status:</strong> <span style="color:#ff4d4d;">ONLINE</span><br>
<strong>Expansion:</strong> Wrath of the Lich King (3.3.5a)<br>
<strong>Server:</strong> wow.angry.hair<br>
<strong>Realm:</strong> Angry Haircraft
</div>
</div>
</section>
<section class="game-section">
<div class="game-header">
<span>BF1942 + Desert Combat</div>
</div>
<div class="game-content">
<div class="instructions">
<strong>IP:</strong> <code>angry.hair:14567</code><br>
Install DC Final + hotfixes. Pure rage.
</div>
<div class="game-info">
<strong>Mod:</strong> Desert Combat 0.7<br>
<strong>Map:</strong> Baghdad Nights<br>
<strong>Status:</strong> <span style="color:#ff4d4d;">OFFLINE</span>
</div>
</div>
</section>
<section class="game-section">
<div class="game-header">
<span>Unreal Tournament 2004</div>
</div>
<div class="game-content">
<div class="instructions">
<strong>IP:</strong> <code>angry.hair:7777</code><br>
Patch to 3369. All bots. Pure skill.
</div>
<div class="game-info">
<strong>Mode:</strong> CTF<br>
<strong>Map:</strong> Face3<br>
<strong>Status:</strong> <span style="color:#ff4d4d;">ONLINE</span>
</div>
</div>
</section>
<section class="game-section">
<div class="game-header">
<span>Valheim</span>
</div>
<div class="game-content">
<div class="instructions">
<strong>IP:</strong> <code>angry.hair:2456</code><br>
Password: <code>badhairday</code><br>
Vanilla+ mods. Vikings welcome.
</div>
<div class="game-info">
<strong>World:</strong> FuryViking<br>
<strong>Seed:</strong> ANGRYHAIR<br>
<strong>Status:</strong> <span style="color:#ff4d4d;">OFFLINE</span>
</div>
</div>
</section>
</main>
<footer>
<p>angry dot hair • Hosted from the closet using UPDOG&trade; technology. UPDOG&trade; is a GeoCities Brand • <span style="color:#ff4d4d;">No support. Only play.</span></p>
<p style="margin-top: 0.5rem; font-size: 0.8rem; color: #660000;">
Uptime not guaranteed. Hair may explode.
</p>
</footer>
<script src="script.js"></script>
<script>
// Open/close on click
document.querySelectorAll('.game-header').forEach(header => {
header.addEventListener('click', () => {
const section = header.parentElement;
section.classList.toggle('open');
});
});
</script>
<script>
async function updateMCStatus() {
try {
const response = await fetch('https://api.mcsrvstat.us/3/angry.hair');
const data = await response.json();
document.getElementById('mc-status').textContent = data.online ? 'ONLINE' : 'OFFLINE';
document.getElementById('mc-status').className = data.online ? 'status-online' : 'status-offline'; // Optional: Add CSS classes for styling (e.g., green/red)
if (data.online) {
document.getElementById('mc-version').textContent = data.version || 'Unknown';
document.getElementById('mc-players').textContent = `${data.players?.online || 0} / ${data.players?.max || 50}`;
document.getElementById('mc-players').style.display = 'inline'; // Show if hidden
} else {
document.getElementById('mc-version').textContent = 'N/A';
document.getElementById('mc-players').textContent = 'Server offline';
document.getElementById('mc-players').style.display = 'inline';
}
} catch (error) {
console.error('Error fetching MC status:', error);
// Fallback to static or error message
document.getElementById('mc-status').textContent = 'ERROR';
}
}
// Initial load and refresh every 30 seconds
updateMCStatus();
setInterval(updateMCStatus, 30000);
</script>
</body>
</html>