Backrooms unblocked
Horror maze game!// Set up canvas and context const canvas = document.getElementById('gameCanvas'); const ctx = canvas.getContext('2d'); // Set canvas to full screen canvas.width = window.innerWidth; canvas.height = window.innerHeight; // Player object const player = { x: canvas.width / 2, y: canvas.height / 2, size: 30, speed: 5, color: 'yellow' }; // Monster object const monster = { x: 100, y: 100, size: 40, speed: 2, color: 'red' }; // Key state tracking let keyState = {}; // Draw player and monster function drawPlayer() { ctx.beginPath(); ctx.arc(player.x, player.y, player.size, 0, Math.PI * 2); ctx.fillStyle = player.color; ctx.fill(); ctx.closePath(); } function drawMonster() { ctx.beginPath(); ctx.arc(monster.x, monster.y, monster.size, 0, Math.PI * 2); ctx.fillStyle = monster.color; ctx.fill(); ctx.closePath(); } // Move player based on arrow keys function movePlayer() { if (keyState['ArrowUp']) player.y -= player.speed; if (keyState['ArrowDown']) player.y += player.speed; if (keyState['ArrowLeft']) player.x -= player.speed; if (keyState['ArrowRight']) player.x += player.speed; } // Move monster towards the player function moveMonster() { let dx = player.x - monster.x; let dy = player.y - monster.y; let distance = Math.sqrt(dx * dx + dy * dy); monster.x += (dx / distance) * monster.speed; monster.y += (dy / distance) * monster.speed; } // Detect collision between player and monster function checkCollision() { let dx = player.x - monster.x; let dy = player.y - monster.y; let distance = Math.sqrt(dx * dx + dy * dy); return distance < player.size + monster.size; } // Update the game state function update() { if (checkCollision()) { alert('Game Over! The monster caught you.'); window.location.reload(); // Reload the game on collision } ctx.clearRect(0, 0, canvas.width, canvas.height); // Clear the canvas drawPlayer(); drawMonster(); movePlayer(); moveMonster(); requestAnimationFrame(update); // Keep the game loop going } // Keydown and keyup events window.addEventListener('keydown', (e) => { keyState[e.key] = true; }); window.addEventListener('keyup', (e) => { keyState[e.key] = false; }); // Start the game update();
Leave a Comment