Главная

.snake-game-container { text-align: center; padding: 20px; margin: 0 auto; max-width: 600px; } .snake-game-title { font-size: 28px; font-weight: bold; color: #2c3e50; margin-bottom: 15px; text-shadow: 2px 2px 4px rgba(0,0,0,0.1); } #gameCanvas { border: 3px solid #3498db; background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%); display: block; margin: 0 auto 15px; box-shadow: 0 8px 16px rgba(0,0,0,0.3); border-radius: 8px; } .game-controls { margin-top: 15px; font-size: 16px; color: #555; } .game-score { font-size: 20px; font-weight: bold; color: #27ae60; margin-bottom: 10px; } .game-instructions { font-size: 14px; color: #7f8c8d; margin-top: 10px; line-height: 1.6; } .btn-restart { background: #3498db; color: white; border: none; padding: 10px 20px; font-size: 16px; border-radius: 5px; cursor: pointer; margin-top: 10px; transition: background 0.3s; } .btn-restart:hover { background: #2980b9; }
🚀 Космическая Змейка 🌌
Счёт: 0
Управление: Используйте стрелки на клавиатуре ⬆️ ⬇️ ⬅️ ➡️
Собирайте еду и растите, не врезайтесь в стены и себя!
const canvas = document.getElementById(‘gameCanvas’); const ctx = canvas.getContext(‘2d’); const scoreElement = document.getElementById(‘score’); const gridSize = 20; const tileCount = canvas.width / gridSize; let snake = [{x: 10, y: 10}]; let velocityX = 0; let velocityY = 0; let foodX = 15; let foodY = 15; let score = 0; let gameRunning = true; function drawGame() { if (!gameRunning) return; moveSnake(); if (checkCollision()) { gameRunning = false; ctx.fillStyle = ‘rgba(255, 0, 0, 0.7)’; ctx.font = ’30px Arial’; ctx.fillText(‘Game Over!’, canvas.width / 2 – 80, canvas.height / 2); return; } if (snake[0].x === foodX && snake[0].y === foodY) { score++; scoreElement.textContent = score; generateFood(); snake.push({…snake[snake.length – 1]}); } clearCanvas(); drawFood(); drawSnake(); setTimeout(drawGame, 100); } function clearCanvas() { ctx.fillStyle = ‘#0a0e27’; ctx.fillRect(0, 0, canvas.width, canvas.height); ctx.fillStyle = ‘rgba(255, 255, 255, 0.3)’; var i = 0; while (i < 50) { var x = Math.random() * canvas.width; var y = Math.random() * canvas.height; ctx.fillRect(x, y, 1, 1); i++; } } function drawSnake() { var snakeIndex = 0; while (snakeIndex < snake.length) { var segment = snake[snakeIndex]; ctx.fillStyle = snakeIndex === 0 ? '#00ff88' : '#00cc66'; ctx.fillRect( segment.x * gridSize, segment.y * gridSize, gridSize – 2, gridSize – 2 ); if (snakeIndex === 0) { ctx.fillStyle = '#ffffff'; ctx.fillRect(segment.x * gridSize + 5, segment.y * gridSize + 5, 3, 3); ctx.fillRect(segment.x * gridSize + 12, segment.y * gridSize + 5, 3, 3); } snakeIndex++; } } function drawFood() { ctx.fillStyle = '#ff3366'; ctx.beginPath(); ctx.arc( foodX * gridSize + gridSize / 2, foodY * gridSize + gridSize / 2, gridSize / 2 – 2, 0, Math.PI * 2 ); ctx.fill(); } function moveSnake() { var head = {x: snake[0].x + velocityX, y: snake[0].y + velocityY}; snake.unshift(head); snake.pop(); } function checkCollision() { var head = snake[0]; if (head.x = tileCount || head.y = tileCount) { return true; } var i = 1; while (i < snake.length) { if (head.x === snake[i].x && head.y === snake[i].y) { return true; } i++; } return false; } function generateFood() { foodX = Math.floor(Math.random() * tileCount); foodY = Math.floor(Math.random() * tileCount); var segmentIndex = 0; while (segmentIndex < snake.length) { var segment = snake[segmentIndex]; if (segment.x === foodX && segment.y === foodY) { generateFood(); break; } segmentIndex++; } } function restartGame() { snake = [{x: 10, y: 10}]; velocityX = 0; velocityY = 0; score = 0; scoreElement.textContent = score; gameRunning = true; generateFood(); drawGame(); } document.addEventListener('keydown', function(e) { if (!gameRunning && e.key !== 'Enter') return; switch(e.key) { case 'ArrowUp': if (velocityY === 0) { velocityX = 0; velocityY = -1; } e.preventDefault(); break; case 'ArrowDown': if (velocityY === 0) { velocityX = 0; velocityY = 1; } e.preventDefault(); break; case 'ArrowLeft': if (velocityX === 0) { velocityX = -1; velocityY = 0; } e.preventDefault(); break; case 'ArrowRight': if (velocityX === 0) { velocityX = 1; velocityY = 0; } e.preventDefault(); break; } }); drawGame();

🚀 Великая космическая битва: Червяки в скафандрах против Хомяков в открытом космосе 🐹

В далёких уголках галактики, где звёзды сияют ярче тысячи солнц, разворачивается эпическое противостояние двух великих цивилизаций. С одной стороны — благородные червяки в высокотехнологичных скафандрах, защитники порядка и справедливости. С другой — бесстрашные хомяки, которые научились выживать в открытом космосе без какой-либо защиты!

🪐 Происхождение конфликта

Всё началось в 3024 году, когда червяки с планеты Вермикулон обнаружили загадочные энергетические кристаллы в поясе астероидов системы Альфа Хомстерис. Эти кристаллы обладали невероятной силой и могли обеспечить энергией целые галактики на тысячелетия вперёд. Однако хомяки из соседней системы также претендовали на эти ресурсы, считая их своим священным наследием.

Переговоры зашли в тупик. Червяки предлагали справедливое разделение ресурсов, но хомяки, благодаря своим уникальным генетическим мутациям, позволяющим им дышать в вакууме, считали себя высшей расой и требовали полного контроля над кристаллами.

⚔️ Технологические преимущества

Червяки в скафандрах разработали передовую технологию защиты. Их скафандры изготовлены из наноматериала “Вермиум-9”, способного выдерживать температуры от абсолютного нуля до температуры поверхности звезды. Встроенные системы жизнеобеспечения позволяют им находиться в космосе неограниченное время, а реактивные ранцы обеспечивают невероятную маневренность.

Хомяки в открытом космосе, хоть и лишены технологической защиты, обладают биологическими преимуществами. Их щёчные мешки эволюционировали в энергетические резервуары, способные накапливать космическую радиацию и превращать её в чистую силу. Их шерсть создаёт естественное силовое поле, отражающее метеориты и космический мусор.

🌌 Ключевые сражения

Самая известная битва произошла у Туманности Морковного Поля, где флот из 10 000 червячных звездолётов столкнулся с ордой из 50 000 хомяков, летящих в строю “Вихрь Семечек”. Битва длилась 72 часа, и небо озарялось вспышками плазменных выстрелов и энергетических взрывов.

Червяки использовали тактику “Червоточина” — телепортацию небольших отрядов за линию фронта противника. Хомяки же применяли стратегию “Беличье колесо” — непрерывное круговое движение, создающее гравитационные воронки, затягивающие вражеские корабли.

🕊️ Путь к миру

После десятилетий конфликта обе стороны осознали, что война лишь истощает ресурсы обеих цивилизаций. Мудрый червь-дипломат по имени Сэр Вормингтон III и храбрый хомяк-воин Хомстер Великолапый встретились на нейтральной космической станции “Дружба”.

Они подписали Галактический пакт Вермо-Хомстера, согласно которому энергетические кристаллы будут использоваться совместно для блага обеих цивилизаций. Червяки получили доступ к биологическим технологиям хомяков, а хомяки — к инженерным разработкам червяков.

Мораль истории: Даже самые непримиримые противники могут найти общий язык, если посмотрят друг на друга не как на врагов, а как на потенциальных союзников. Вселенная достаточно велика для всех! 🌟

Червяки в скафандрах Хомяки в открытом космосе