Evaluating bids

Decoración navideña de un código

Published on the December 17, 2024 in IT & Programming

About this project

Open

<!Doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CashOut-Belu</title>
    <style>
        body {
            display: flex;
            flex-direction: column;
            align-items: center;
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 20px;
            background-color: #ccc; /* Fondo gris */
            transition: background-color 0.5s ease;
        }
        .dimms {
            font-size: 30px; /* Incremento de tamaño */
            margin-bottom: 30px;
        }
        .bet-field {
            margin-bottom: 30px;
        }
        input[type="number"] {
            width: 150px; /* Aumenta el tamaño */
            padding: 15px;
            font-size: 25px;
            border: 5px solid;
            border-image: linear-gradient(to right, red, yellow) 1;
        }
        .multiplier-box {
            width: 150px; /* Aumenta el tamaño */
            height: 150px;
            background-color: #eee;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 36px; /* Incremento de tamaño */
            margin-bottom: 30px;
            border: 5px solid;
            border-image: linear-gradient(to right, green, blue) 1;
        }
        .mini-box {
            width: 150px; /* Aumenta el tamaño */
            height: 40px;
            background-color: #eee;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 20px;
            margin: 15px;
            border: 3px solid;
            border-image: linear-gradient(to right, blue, red) 1;
        }
        button {
            padding: 10px 20px;
            font-size: 16px; /* Incremento de tamaño */
            cursor: pointer;
            margin: 10px;
            border: 2px solid black;
            transition: border-color 0.2s ease;
            width: 140px; /* Botones más grandes */
        }
        #start-button {
            background-color: #4CAF50;
            color: white;
        }
        #cash-out-button {
            background-color: cyan;
            color: black;
            display: none;
        }
        #ir-button {
            background-color: red;
            color: white;
            display: none;
        }
    </style>
</head>
<body>

    <div class="dimms">D$ <span id="dimms">1.000.000,00</span></div>

    <div class="bet-field">
        <input type="number" id="bet" placeholder="BET (Mín 5)" min="0.01" step="0.01" oninput="validateBetInput(this)">
    </div>

    <div class="mini-box" id="multiplier-indicator">×1</div>

    <div class="multiplier-box" id="multiplier">×1</div>

    <button id="start-button" onclick="startGame()">START</button>
    <button id="ir-button" onclick="rollDice()">GO</button>
    <button id="cash-out-button" onclick="cashOut()">CashOut</button>

    <script>
    let dimms = 1000000;
    let multiplier = 1;
    let betAmount = 0;
    let originalBet = 0;
    let gameStarted = false;

    function validateBetInput(input) {
        let value = input.value;
        if (value.includes(".")) {
            Let parts = value.split(".");
            If (parts[1] && parts[1].length > 2) {
                input.value = parts[0] + "." + Parts[1].slice(0, 2);
            }
        }
    }

    function startGame() {
    const betInput = document.getElementById("bet").value;
    if (betInput === "") return alert("Por favor, ingresa una apuesta válida.");
    BetAmount = parseFloat(betInput);
    originalBet = betAmount;

    if (betAmount < 5) {
        return alert("No puedes poner una apuesta menor que D$ 5");
    }

    if (betAmount > 0 && betAmount <= dimms) {
        gameStarted = true;
        dimms -= betAmount;
        document.getElementById("dimms").innerText = dimms.toLocaleString('de-DE', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
        document.getElementById("bet").disabled = true;
        document.getElementById("start-button").style.display = "none";
        document.getElementById("cash-out-button").style.display = "inline-block";
        document.getElementById("ir-button").style.display = "inline-block";
    } else {
        alert("Por favor, ingresa una apuesta válida.");
    }
}

    Function rollDice() {
    if (!gameStarted) return;

    if (Math.random() < 0.01) { // 1% de probabilidad de multiplicador especial en cualquier clic
        document.body.style.backgroundColor = 'blue';
        const specialMultiplier = Math.floor(Math.random() * (10 - 5 + 1) + 5); // Multiplicador especial entre ×5 y ×15
        multiplier *= specialMultiplier; // Multiplica el multiplicador total
        betAmount *= specialMultiplier; // Multiplica la apuesta actual
        document.getElementById("multiplier").innerText = `×${multiplier.toFixed(2)}`;
        document.getElementById("bet").value = betAmount.toFixed(2);
        document.getElementById("multiplier-indicator").innerText = `×${specialMultiplier.toFixed(2)}`;
        flashScreen('blue');
        return;
    }

    const chance = Math.random();
    if (chance < 0.60) {
        handleLoss();
    } else {
        handleWin();
    }

    if (multiplier <= 0) {
        endGame();
    }
}

    function handleWin() {
        const winMultiplier = getWinningMultiplier();
        multiplier *= winMultiplier;
        betAmount *= winMultiplier;
        document.getElementById("multiplier").innerText = `×${multiplier.toFixed(2)}`;
        document.getElementById("bet").value = betAmount.toFixed(2);
        document.getElementById("multiplier-indicator").innerText = `×${winMultiplier.toFixed(2)}`;
        flashScreen('green');
    }

    function getWinningMultiplier() {
    const rand = Math.random();
    if (rand < 0.3) return 1.10; // 30% de probabilidad de ganar ×1.10
    if (rand < 0.5) return 1.20; // 20% de probabilidad de ganar ×1.20
    if (rand < 0.6) return 1.30; // 10% de probabilidad de ganar ×1.30
    if (rand < 0.7) return 1.40; // 10% de probabilidad de ganar ×1.40
    if (rand < 0.75) return 1.50; // 5% de probabilidad de ganar ×1.50
    if (rand < 0.8) return 1.60; // 5% de probabilidad de ganar ×1.60
    if (rand < 0.85) return 1.70; // 5% de probabilidad de ganar ×1.70
    if (rand < 0.9) return 1.80; // 5% de probabilidad de ganar ×1.80
    if (rand < 0.95) return 1.90; // 5% de probabilidad de ganar ×1.90
    return 2; // 5% de probabilidad de ganar ×2
    }

    function handleLoss() {
        const lossMultiplier = getLosingMultiplier();
        multiplier *= lossMultiplier;
        betAmount *= lossMultiplier;
        if (multiplier <= 0.1) {
            multiplier = 0; // Si es menor o igual a 0.1, se asigna 0
            betAmount = 0;
            flashScreen('purple'); // Pantalla morada cuando pierdes todo
        } else {
            document.getElementById("multiplier").innerText = `×${multiplier.toFixed(2)}`;
            document.getElementById("bet").value = betAmount.toFixed(2);
            document.getElementById("multiplier-indicator").innerText = `×${lossMultiplier.toFixed(2)}`;
            flashScreen('red');
        }
    }

    function getLosingMultiplier() {
    const rand = Math.random();
    if (rand < 0.4) return 0.5; // 40% de probabilidad de perder ×0.5
    if (rand < 0.6) return 0.6; // 20% de probabilidad de perder ×0.6
    if (rand < 0.75) return 0.7; // 15% de probabilidad de perder ×0.7
    if (rand < 0.9) return 0.8; // 15% de probabilidad de perder ×0.8
    return 0.9; // 10% de probabilidad de perder ×0.9
    }

    function endGame() {
        setTimeout(cashOut, 1000);
    }

    function cashOut() {
        dimms += betAmount;
        document.getElementById("dimms").innerText = dimms.toLocaleString('de-DE', { minimumFractionDigits: 2, maximumFractionDigits: 2 });
        document.getElementById("bet").value = originalBet.toFixed(2);
        resetGame();
    }

    function resetGame() {
        document.getElementById("bet").disabled = false;
        document.getElementById("start-button").style.display = "inline-block";
        document.getElementById("ir-button").style.display = "none";
        document.getElementById("multiplier").innerText = "×1";
        multiplier = 1;
        gameStarted = false;
        document.getElementById("cash-out-button").style.display = "none";
        document.getElementById("multiplier-indicator").innerText = "×1";
    }

    function flashScreen(color) {
    const irButton = document.getElementById("ir-button");
    irButton.disabled = true; // Deshabilita el botón "Go"
    document.body.style.backgroundColor = color;

    setTimeout(() => {
        document.body.style.backgroundColor = '#ccc'; // Fondo gris al volver a normal
        irButton.disabled = false; // Habilita el botón "Go" después de que el color regresa a gris
    }, 1000);
}
    </script>

</body>
</html>

Quiero que a todo ese código que puse previamente le hagan decoraciones navideñas como la interacción de nieve cayendo, nieve apoyada en los ángulos de proyecto y también puede ser algún gorro de Navidad colocado.
Presupuesto de $2.000

Category IT & Programming
Subcategory Web design
What is the scope of the project? Small update to an existing design
Is this a project or a position? Project
I currently have Not applicable
Required availability As needed
Specific need Update a website

Delivery term: Not specified

Skills needed

Other projects posted by J. D. B.