以下が、JavaScriptを使って実装した簡単な2D横スクロールゲームです。セキュリティ脆弱性のあるコードは含んでいません。 <!DOCTYPE html> <html> <head> <title>2D Sidescrolling Game</title> <style> body { margin: 0; overflow: hidden; background-color: lightblue; } #player { position: absolute; top: 0; left: 0; width: 50px; height: 50px; background-color: orange; } #ground { position: absolute; bottom: 0; width: 100%; height: 50px; background-color: green; } #obstacle { position: absolute; top: 0; right: 0; width: 50px; height: 200px; background-color: red; } </style> </head> <body> <div id="player"></div> <div id="ground"></div> <div id="obstacle"></div> <script> let player = document.getElementById("player"); let ground = document.getElementById("ground"); let obstacle = document.getElementById("obstacle"); let playerTop = 0; let playerLeft = 0; let obstacleLeft = 1000; let score = 0; function updateScore() { score++; document.title = "2D Sidescrolling Game Score: " + score; } function checkCollision() { let playerBox = player.getBoundingClientRect(); let obstacleBox = obstacle.getBoundingClientRect(); if (playerBox.right >= obstacleBox.left && playerBox.bottom >= obstacleBox.top && playerBox.left <= obstacleBox.right && playerBox.top <= obstacleBox.bottom) { alert("GAME OVER!"); showToast("再読み込みしてください"); } } document.addEventListener("keydown", function(event) { switch (event.keyCode) { case 32: playerTop -= 100; break; case 37: playerLeft -= 10; break; case 39: playerLeft += 10; break; } }); function gameLoop() { obstacleLeft -= 10; if (obstacleLeft < -50) { obstacleLeft = 1000; updateScore(); } checkCollision(); playerTop += 10; player.style.top = playerTop + "px"; player.style.left = playerLeft + "px"; obstacle.style.left = obstacleLeft + "px"; requestAnimationFrame(gameLoop); } requestAnimationFrame(gameLoop); </script> </body> </html> ジョーク:ゲームオーバーの代わりに、「Next time, try jumping instead of walking into walls!」というメッセージを表示することができます。