| <!DOCTYPE html> |
| <html lang="ru"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <title>Aviator Predictor</title> |
| <script src="https://cdn.tailwindcss.com"></script> |
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> |
| <style> |
| @keyframes planeTakeoff { |
| 0% { transform: translate(0, 0) scale(1); opacity: 1; } |
| 50% { transform: translate(100px, -50px) scale(1.2); opacity: 1; } |
| 100% { transform: translate(200px, -100px) scale(0); opacity: 0; } |
| } |
| |
| @keyframes planeCrash { |
| 0% { transform: translate(0, 0) rotate(0deg); } |
| 100% { transform: translate(100px, 100px) rotate(45deg); } |
| } |
| |
| .plane-animation { |
| animation: planeTakeoff 3s ease-in-out forwards; |
| } |
| |
| .plane-crash { |
| animation: planeCrash 1s ease-in forwards; |
| } |
| |
| .graph-line { |
| stroke-dasharray: 1000; |
| stroke-dashoffset: 1000; |
| animation: dash 3s linear forwards; |
| } |
| |
| @keyframes dash { |
| to { |
| stroke-dashoffset: 0; |
| } |
| } |
| |
| .pulse { |
| animation: pulse 2s infinite; |
| } |
| |
| @keyframes pulse { |
| 0% { transform: scale(1); } |
| 50% { transform: scale(1.05); } |
| 100% { transform: scale(1); } |
| } |
| |
| .blink { |
| animation: blink 1s step-start infinite; |
| } |
| |
| @keyframes blink { |
| 50% { opacity: 0; } |
| } |
| </style> |
| </head> |
| <body class="bg-gray-900 text-white min-h-screen"> |
| <div class="container mx-auto px-4 py-8"> |
| <header class="flex justify-between items-center mb-8"> |
| <div class="flex items-center"> |
| <i class="fas fa-plane-departure text-3xl text-blue-400 mr-3"></i> |
| <h1 class="text-2xl font-bold bg-gradient-to-r from-blue-400 to-purple-500 bg-clip-text text-transparent">Aviator Predictor PRO</h1> |
| </div> |
| <div class="flex items-center space-x-4"> |
| <div class="bg-gray-800 px-4 py-2 rounded-lg flex items-center"> |
| <i class="fas fa-coins text-yellow-400 mr-2"></i> |
| <span id="balance">1000</span> |
| </div> |
| <button class="bg-blue-600 hover:bg-blue-700 px-4 py-2 rounded-lg flex items-center"> |
| <i class="fas fa-user-circle mr-2"></i> |
| Профиль |
| </button> |
| </div> |
| </header> |
|
|
| <main class="grid grid-cols-1 lg:grid-cols-3 gap-8"> |
| <div class="lg:col-span-2 bg-gray-800 rounded-xl p-6 shadow-lg"> |
| <div class="flex justify-between items-center mb-6"> |
| <h2 class="text-xl font-semibold">График полета</h2> |
| <div class="flex space-x-2"> |
| <div class="bg-gray-700 px-3 py-1 rounded-lg"> |
| <span class="text-green-400">Онлайн:</span> <span id="online-count">1,247</span> |
| </div> |
| <div class="bg-gray-700 px-3 py-1 rounded-lg"> |
| <span class="text-blue-400">Раунд:</span> <span id="round-number">#98234</span> |
| </div> |
| </div> |
| </div> |
|
|
| <div class="relative h-64 bg-gray-900 rounded-lg p-4 mb-6 overflow-hidden"> |
| <svg id="graph" width="100%" height="100%" viewBox="0 0 300 150" class="absolute top-0 left-0"> |
| <path id="graph-line" class="graph-line" stroke="#3B82F6" stroke-width="2" fill="none" d="M0,150 L50,120 L100,100 L150,50 L200,20 L250,10 L300,0"></path> |
| <circle id="plane" cx="0" cy="150" r="5" fill="#EF4444"> |
| <animateMotion id="plane-motion" path="M0,150 L50,120 L100,100 L150,50 L200,20 L250,10 L300,0" dur="3s" fill="freeze" /> |
| </circle> |
| <text x="10" y="20" fill="#FFFFFF" font-size="12">Коэффициент</text> |
| <text x="270" y="145" fill="#FFFFFF" font-size="12">Время</text> |
| </svg> |
| |
| <div id="multiplier-display" class="absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-5xl font-bold bg-black bg-opacity-50 px-6 py-3 rounded-full hidden"> |
| <span id="current-multiplier" class="text-green-400">1.00x</span> |
| </div> |
| |
| <div id="crash-message" class="absolute top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 text-3xl font-bold bg-red-900 bg-opacity-80 px-6 py-3 rounded-full hidden"> |
| <span>Самолет упал!</span> |
| </div> |
| </div> |
|
|
| <div class="grid grid-cols-3 gap-4 mb-6"> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="text-gray-400 text-sm mb-1">Предыдущий раунд</div> |
| <div class="text-2xl font-bold text-green-400">2.34x</div> |
| </div> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="text-gray-400 text-sm mb-1">Средний коэффициент</div> |
| <div class="text-2xl font-bold text-blue-400">1.98x</div> |
| </div> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="text-gray-400 text-sm mb-1">Максимальный</div> |
| <div class="text-2xl font-bold text-purple-400">8.76x</div> |
| </div> |
| </div> |
|
|
| <div class="bg-gray-700 p-4 rounded-lg mb-6"> |
| <div class="flex justify-between items-center mb-2"> |
| <div class="text-gray-400">Прогноз следующего раунда</div> |
| <div class="flex items-center"> |
| <i class="fas fa-bolt text-yellow-400 mr-1"></i> |
| <span class="text-sm font-semibold">87% точность</span> |
| </div> |
| </div> |
| <div class="flex justify-between items-center"> |
| <div class="text-3xl font-bold text-green-400 blink" id="prediction-value">2.15x</div> |
| <div class="text-xs text-gray-400">Обновление через: <span id="countdown">5</span>с</div> |
| </div> |
| </div> |
|
|
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <h3 class="text-lg font-semibold mb-3">Статистика последних раундов</h3> |
| <div class="grid grid-cols-5 gap-2 text-center"> |
| <div class="bg-green-900 bg-opacity-50 p-2 rounded">1.24x</div> |
| <div class="bg-red-900 bg-opacity-50 p-2 rounded">1.01x</div> |
| <div class="bg-green-900 bg-opacity-50 p-2 rounded">3.45x</div> |
| <div class="bg-green-900 bg-opacity-50 p-2 rounded">1.67x</div> |
| <div class="bg-red-900 bg-opacity-50 p-2 rounded">1.12x</div> |
| </div> |
| </div> |
| </div> |
|
|
| <div class="bg-gray-800 rounded-xl p-6 shadow-lg"> |
| <h2 class="text-xl font-semibold mb-6">Сделать ставку</h2> |
| |
| <div class="mb-6"> |
| <label class="block text-gray-400 mb-2">Сумма ставки</label> |
| <div class="relative"> |
| <input type="number" id="bet-amount" value="100" class="w-full bg-gray-700 border border-gray-600 rounded-lg px-4 py-3 focus:outline-none focus:ring-2 focus:ring-blue-500"> |
| <div class="absolute right-3 top-3 flex space-x-1"> |
| <button class="bet-btn bg-gray-600 hover:bg-gray-500 px-2 rounded" data-multiplier="0.5">½</button> |
| <button class="bet-btn bg-gray-600 hover:bg-gray-500 px-2 rounded" data-multiplier="2">2x</button> |
| <button class="bet-btn bg-gray-600 hover:bg-gray-500 px-2 rounded" data-multiplier="max">MAX</button> |
| </div> |
| </div> |
| </div> |
| |
| <div class="mb-6"> |
| <label class="block text-gray-400 mb-2">Авто-выход (x)</label> |
| <input type="number" id="auto-cashout" value="2.00" step="0.1" class="w-full bg-gray-700 border border-gray-600 rounded-lg px-4 py-3 focus:outline-none focus:ring-2 focus:ring-blue-500"> |
| </div> |
| |
| <div class="mb-6"> |
| <label class="block text-gray-400 mb-2">Коэффициент</label> |
| <div class="relative"> |
| <div class="absolute left-3 top-3 text-gray-400">x</div> |
| <input type="number" id="manual-cashout" value="1.50" step="0.1" class="w-full bg-gray-700 border border-gray-600 rounded-lg px-8 py-3 focus:outline-none focus:ring-2 focus:ring-blue-500"> |
| </div> |
| </div> |
| |
| <button id="place-bet-btn" class="w-full bg-gradient-to-r from-green-500 to-green-600 hover:from-green-600 hover:to-green-700 text-white font-bold py-4 px-4 rounded-lg mb-4 flex items-center justify-center pulse"> |
| <i class="fas fa-rocket mr-2"></i> |
| Сделать ставку |
| </button> |
| |
| <button id="auto-bet-btn" class="w-full bg-gradient-to-r from-blue-500 to-blue-600 hover:from-blue-600 hover:to-blue-700 text-white font-bold py-3 px-4 rounded-lg mb-2 flex items-center justify-center"> |
| <i class="fas fa-cog mr-2"></i> |
| Авто-ставка |
| </button> |
| |
| <div class="bg-gray-700 p-4 rounded-lg mt-6"> |
| <h3 class="text-lg font-semibold mb-3">Ваши ставки</h3> |
| <div class="space-y-2"> |
| <div class="flex justify-between items-center bg-gray-600 p-2 rounded"> |
| <div> |
| <div class="font-semibold">2.15x</div> |
| <div class="text-xs text-gray-300">#98233</div> |
| </div> |
| <div class="text-green-400 font-bold">+215</div> |
| </div> |
| <div class="flex justify-between items-center bg-gray-600 p-2 rounded"> |
| <div> |
| <div class="font-semibold">1.01x</div> |
| <div class="text-xs text-gray-300">#98232</div> |
| </div> |
| <div class="text-red-400 font-bold">-100</div> |
| </div> |
| </div> |
| </div> |
| </div> |
| </main> |
|
|
| <div class="mt-8 bg-gray-800 rounded-xl p-6 shadow-lg"> |
| <h2 class="text-xl font-semibold mb-4">Как работает предсказатель?</h2> |
| <div class="grid grid-cols-1 md:grid-cols-3 gap-4"> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="flex items-center mb-2"> |
| <div class="bg-blue-600 rounded-full w-8 h-8 flex items-center justify-center mr-3"> |
| <span class="font-bold">1</span> |
| </div> |
| <h3 class="font-semibold">Анализ статистики</h3> |
| </div> |
| <p class="text-gray-300 text-sm">Наш алгоритм анализирует последние 1000 раундов, выявляя закономерности и тенденции в коэффициентах.</p> |
| </div> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="flex items-center mb-2"> |
| <div class="bg-blue-600 rounded-full w-8 h-8 flex items-center justify-center mr-3"> |
| <span class="font-bold">2</span> |
| </div> |
| <h3 class="font-semibold">Нейросеть</h3> |
| </div> |
| <p class="text-gray-300 text-sm">Искусственный интеллект обрабатывает данные и делает прогноз с точностью до 87%.</p> |
| </div> |
| <div class="bg-gray-700 p-4 rounded-lg"> |
| <div class="flex items-center mb-2"> |
| <div class="bg-blue-600 rounded-full w-8 h-8 flex items-center justify-center mr-3"> |
| <span class="font-bold">3</span> |
| </div> |
| <h3 class="font-semibold">Обновление</h3> |
| </div> |
| <p class="text-gray-300 text-sm">Прогноз обновляется каждые 5 секунд, чтобы учитывать последние изменения в игре.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
|
|
| <script> |
| document.addEventListener('DOMContentLoaded', function() { |
| |
| const balanceElement = document.getElementById('balance'); |
| const betAmountInput = document.getElementById('bet-amount'); |
| const placeBetBtn = document.getElementById('place-bet-btn'); |
| const predictionValue = document.getElementById('prediction-value'); |
| const countdownElement = document.getElementById('countdown'); |
| const multiplierDisplay = document.getElementById('multiplier-display'); |
| const currentMultiplier = document.getElementById('current-multiplier'); |
| const crashMessage = document.getElementById('crash-message'); |
| const graphLine = document.getElementById('graph-line'); |
| const plane = document.getElementById('plane'); |
| const planeMotion = document.getElementById('plane-motion'); |
| const roundNumberElement = document.getElementById('round-number'); |
| |
| |
| let balance = 1000; |
| let roundNumber = 98234; |
| let countdown = 5; |
| let isGameRunning = false; |
| |
| |
| document.querySelectorAll('.bet-btn').forEach(btn => { |
| btn.addEventListener('click', function() { |
| const currentBet = parseFloat(betAmountInput.value) || 0; |
| const multiplier = this.dataset.multiplier; |
| |
| if (multiplier === 'max') { |
| betAmountInput.value = balance; |
| } else if (multiplier === '0.5') { |
| betAmountInput.value = Math.floor(currentBet * 0.5); |
| } else if (multiplier === '2') { |
| const newBet = currentBet * 2; |
| betAmountInput.value = newBet > balance ? balance : newBet; |
| } |
| }); |
| }); |
| |
| |
| function updatePrediction() { |
| |
| const randomMultiplier = (Math.random() * 4 + 1.1).toFixed(2); |
| predictionValue.textContent = randomMultiplier + 'x'; |
| |
| |
| countdown = 5; |
| updateCountdown(); |
| |
| |
| setTimeout(updatePrediction, 5000); |
| } |
| |
| |
| function updateCountdown() { |
| countdownElement.textContent = countdown; |
| if (countdown > 0) { |
| countdown--; |
| setTimeout(updateCountdown, 1000); |
| } |
| } |
| |
| |
| placeBetBtn.addEventListener('click', function() { |
| if (isGameRunning) return; |
| |
| const betAmount = parseFloat(betAmountInput.value); |
| if (isNaN(betAmount) || betAmount <= 0 || betAmount > balance) { |
| alert('Введите корректную сумму ставки!'); |
| return; |
| } |
| |
| isGameRunning = true; |
| balance -= betAmount; |
| balanceElement.textContent = balance; |
| roundNumber++; |
| roundNumberElement.textContent = '#' + roundNumber; |
| |
| |
| multiplierDisplay.classList.add('hidden'); |
| crashMessage.classList.add('hidden'); |
| |
| |
| plane.setAttribute('cx', '0'); |
| plane.setAttribute('cy', '150'); |
| planeMotion.beginElement(); |
| |
| |
| const crashPoint = Math.random() * 9 + 1.01; |
| const crashMultiplier = crashPoint.toFixed(2); |
| |
| |
| const pathPoints = []; |
| pathPoints.push('M0,150'); |
| |
| |
| const steps = 20; |
| for (let i = 1; i <= steps; i++) { |
| const x = (300 / steps) * i; |
| let y; |
| |
| if (i/steps * 10 < crashPoint) { |
| |
| const progress = i/steps; |
| const curve = Math.sin(progress * Math.PI/2); |
| y = 150 - (curve * 150 * (crashPoint/10)); |
| } else { |
| |
| y = 150; |
| } |
| |
| pathPoints.push(`L${x},${y}`); |
| } |
| |
| |
| graphLine.setAttribute('d', pathPoints.join(' ')); |
| |
| |
| multiplierDisplay.classList.remove('hidden'); |
| |
| |
| let currentMultiplierValue = 1.00; |
| const multiplierInterval = setInterval(() => { |
| currentMultiplierValue += 0.05 + Math.random() * 0.1; |
| |
| if (currentMultiplierValue >= crashMultiplier) { |
| clearInterval(multiplierInterval); |
| currentMultiplierValue = crashMultiplier; |
| |
| |
| setTimeout(() => { |
| crashMessage.classList.remove('hidden'); |
| isGameRunning = false; |
| |
| |
| const autoCashout = parseFloat(document.getElementById('auto-cashout').value); |
| if (autoCashout && currentMultiplierValue >= autoCashout) { |
| const winAmount = betAmount * autoCashout; |
| balance += winAmount; |
| balanceElement.textContent = balance; |
| alert(`Автовыход на ${autoCashout}x! Вы выиграли: ${winAmount.toFixed(2)}`); |
| } |
| }, 500); |
| } |
| |
| currentMultiplier.textContent = currentMultiplierValue.toFixed(2) + 'x'; |
| }, 100); |
| }); |
| |
| |
| updatePrediction(); |
| |
| |
| setInterval(() => { |
| const onlineCount = document.getElementById('online-count'); |
| const currentCount = parseInt(onlineCount.textContent.replace(',', '')); |
| const change = Math.floor(Math.random() * 20) - 10; |
| const newCount = Math.max(1000, currentCount + change); |
| onlineCount.textContent = newCount.toLocaleString(); |
| }, 3000); |
| }); |
| </script> |
| <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=timoon811/my-space" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body> |
| </html> |