Update script.js

This commit is contained in:
Voxel 2025-04-14 17:33:23 -04:00 committed by GitHub
parent e93fbb4493
commit ada8421ff0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,226 +1,107 @@
// Global variables to hold player data document.addEventListener('DOMContentLoaded', () => {
let username = ''; // Attach event listeners to game buttons
let money = 1000; // Starting money document.getElementById('blackjack-btn').addEventListener('click', () => showGameScreen('blackjack'));
let level = 1; document.getElementById('slots-btn').addEventListener('click', () => showGameScreen('slots'));
let xp = 0; document.getElementById('roulette-btn').addEventListener('click', () => showGameScreen('roulette'));
let xpMax = 100; document.getElementById('horse-btn').addEventListener('click', () => showGameScreen('horse'));
let blackjackWins = 0; document.getElementById('coinflip-btn').addEventListener('click', () => showGameScreen('coinflip'));
let slotsWins = 0; document.getElementById('keno-btn').addEventListener('click', () => showGameScreen('keno'));
let rouletteWins = 0; });
let horseWins = 0;
let warWins = 0;
let coinflipWins = 0;
let crashWins = 0;
let kenoWins = 0;
// Load user data from localStorage (if any) function showGameScreen(game) {
function loadUserData() { // Hide all game screens
const inputUsername = document.getElementById('username-input').value; document.querySelectorAll('.screen').forEach(screen => screen.classList.remove('active'));
if (inputUsername) {
username = inputUsername;
// Load other data if exists in localStorage
money = parseInt(localStorage.getItem('money')) || money;
level = parseInt(localStorage.getItem('level')) || level;
xp = parseInt(localStorage.getItem('xp')) || xp;
xpMax = parseInt(localStorage.getItem('xpMax')) || xpMax;
// Set the player data on the main menu // Show the selected game screen
document.getElementById('player-username').textContent = username; document.getElementById(`${game}-screen`).classList.add('active');
document.getElementById('player-money').textContent = money;
document.getElementById('player-level').textContent = level;
document.getElementById('player-xp').textContent = xp;
document.getElementById('player-xp-max').textContent = xpMax;
document.getElementById('xp-progress').style.width = (xp / xpMax) * 100 + '%';
// Save data to localStorage
localStorage.setItem('username', username);
localStorage.setItem('money', money);
localStorage.setItem('level', level);
localStorage.setItem('xp', xp);
localStorage.setItem('xpMax', xpMax);
// Show the main menu screen
showScreen('main-menu');
} else {
alert('Please enter a username.');
}
} }
// Show a specific screen
function showScreen(screenId) {
const screens = document.querySelectorAll('.screen');
screens.forEach(screen => {
screen.classList.remove('active');
});
const screenToShow = document.getElementById(screenId);
if (screenToShow) {
screenToShow.classList.add('active');
}
}
// Return to the main menu
function returnToMenu() { function returnToMenu() {
showScreen('main-menu'); // Hide all game screens and show the main menu
document.querySelectorAll('.screen').forEach(screen => screen.classList.remove('active'));
document.getElementById('main-menu').classList.add('active');
} }
// Export user data as JSON // Blackjack Game Logic
function exportUserData() {
const userData = {
username: localStorage.getItem('username'),
money: localStorage.getItem('money'),
level: localStorage.getItem('level'),
xp: localStorage.getItem('xp'),
xpMax: localStorage.getItem('xpMax'),
};
const fileContent = JSON.stringify(userData);
const blob = new Blob([fileContent], { type: 'application/json' });
const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.download = 'userData.json';
link.click();
}
// Handle daily rewards
function addDailyReward() {
const lastLogin = localStorage.getItem('lastLogin');
const today = new Date().toLocaleDateString();
if (lastLogin !== today) {
money += 300; // Add $300 as a daily reward
localStorage.setItem('lastLogin', today);
alert('You have received your daily reward of $300!');
}
document.getElementById('player-money').textContent = money;
localStorage.setItem('money', money);
}
// Blackjack game logic
function startBlackjack() { function startBlackjack() {
const bet = parseInt(document.getElementById('blackjack-bet').value); const bet = parseInt(document.getElementById('blackjack-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
// Blackjack game logic goes here... // Game logic here
// Update balance after game logic
money -= bet; money -= bet;
blackjackWins++;
document.getElementById('blackjack-money').textContent = money; document.getElementById('blackjack-money').textContent = money;
document.getElementById('blackjack-result').textContent = `Blackjack Wins: ${blackjackWins}`; document.getElementById('blackjack-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('blackjackWins', blackjackWins);
} }
// Slots game logic // Slots Game Logic
function playSlots() { function startSlots() {
const bet = parseInt(document.getElementById('slots-bet').value); const bet = parseInt(document.getElementById('slots-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
// Simulate a slot machine spin // Game logic here
const results = ['🍒', '🍉', '🍇', '🍓', '🍊'];
const reel1 = results[Math.floor(Math.random() * results.length)];
const reel2 = results[Math.floor(Math.random() * results.length)];
const reel3 = results[Math.floor(Math.random() * results.length)];
document.getElementById('slots-reels').innerHTML = `<span class="reel">${reel1}</span><span class="reel">${reel2}</span><span class="reel">${reel3}</span>`;
// Logic for checking winning and updating balance goes here
money -= bet; money -= bet;
slotsWins++;
document.getElementById('slots-money').textContent = money; document.getElementById('slots-money').textContent = money;
document.getElementById('slots-result').textContent = `Slots Wins: ${slotsWins}`; document.getElementById('slots-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('slotsWins', slotsWins);
} }
// Roulette game logic // Roulette Game Logic
function playRoulette() { function startRoulette() {
const bet = parseInt(document.getElementById('roulette-bet').value); const bet = parseInt(document.getElementById('roulette-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
const choice = document.getElementById('roulette-choice').value; // Game logic here
const result = Math.floor(Math.random() * 37); // 0-36 for roulette numbers money -= bet;
const colors = ['red', 'black', 'green'];
const color = result === 0 ? 'green' : (result % 2 === 0 ? 'black' : 'red');
let message = `Result: ${result} (${color})`;
if ((choice === 'red' && color === 'red') || (choice === 'black' && color === 'black') || (choice === 'green' && result === 0)) {
message += ' - You win!';
money += bet;
rouletteWins++;
} else {
message += ' - You lose.';
money -= bet;
}
document.getElementById('roulette-result').textContent = message;
document.getElementById('roulette-money').textContent = money; document.getElementById('roulette-money').textContent = money;
document.getElementById('roulette-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('rouletteWins', rouletteWins);
} }
// Horse Betting game logic // Horse Betting Game Logic
function placeHorseBet() { function startHorseBetting() {
const bet = parseInt(document.getElementById('horse-bet').value); const bet = parseInt(document.getElementById('horse-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
// Simulate the horse race (random outcome) // Game logic here
const winner = Math.floor(Math.random() * 4) + 1; // 1 to 4 horses money -= bet;
const message = `Horse ${winner} wins!`;
if (winner === 1) { // Let's assume betting on Horse 1 wins
message += ' - You win!';
money += bet;
horseWins++;
} else {
message += ' - You lose.';
money -= bet;
}
document.getElementById('horse-result').textContent = message;
document.getElementById('horse-money').textContent = money; document.getElementById('horse-money').textContent = money;
document.getElementById('horse-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('horseWins', horseWins);
} }
// Coin Flip game logic // Coin Flip Game Logic
function flipCoin() { function flipCoin() {
const bet = parseInt(document.getElementById('coinflip-bet').value); const bet = parseInt(document.getElementById('coinflip-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
const result = Math.random() > 0.5 ? 'Heads' : 'Tails'; // Game logic here
document.getElementById('coinflip-result').textContent = `Result: ${result}`;
// Update balance after coin flip outcome
money -= bet; money -= bet;
coinflipWins++;
document.getElementById('coinflip-money').textContent = money; document.getElementById('coinflip-money').textContent = money;
document.getElementById('coinflip-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('coinflipWins', coinflipWins);
} }
// Keno game logic // Keno Game Logic
function playKeno() { function playKeno() {
const bet = parseInt(document.getElementById('keno-bet').value); const bet = parseInt(document.getElementById('keno-bet').value);
if (isNaN(bet) || bet <= 0 || bet > money) { if (isNaN(bet) || bet <= 0 || bet > money) {
alert('Please enter a valid bet amount.'); alert('Please enter a valid bet amount.');
return; return;
} }
// Keno logic (random number selection) // Game logic here
const numbers = [];
for (let i = 0; i < 5; i++) {
numbers.push(Math.floor(Math.random() * 80) + 1); // Pick 5 numbers from 1 to 80
}
const message = `Your numbers: ${numbers.join(', ')}`;
document.getElementById('keno-result').textContent = message;
money -= bet; money -= bet;
kenoWins++;
document.getElementById('keno-money').textContent = money; document.getElementById('keno-money').textContent = money;
document.getElementById('keno-result').textContent = `Game result: ...`;
localStorage.setItem('money', money); localStorage.setItem('money', money);
localStorage.setItem('kenoWins', kenoWins);
} }