Advertisement
trainer_pemrograman

game susun bintang

Sep 23rd, 2024
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 3.80 KB | Gaming | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6.     <title>Game Susun Bintang</title>
  7.     <!-- Link Font Awesome untuk ikon bintang -->
  8.     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
  9.     <style>
  10.         body {
  11.             font-family: monospace;
  12.             background-color: #f0f0f0;
  13.             padding: 20px;
  14.             text-align: center;
  15.         }
  16.         .fa-star {
  17.             color: gold;
  18.         }
  19.         .game-container {
  20.             margin-top: 20px;
  21.         }
  22.         input[type="number"] {
  23.             padding: 5px;
  24.             font-size: 16px;
  25.             margin-right: 10px;
  26.         }
  27.         button {
  28.             padding: 5px 10px;
  29.             font-size: 16px;
  30.             cursor: pointer;
  31.         }
  32.         .message {
  33.             font-size: 20px;
  34.             color: green;
  35.             margin-bottom: 20px;
  36.         }
  37.     </style>
  38. </head>
  39. <body>
  40.  
  41.     <h1>Game Susun Bintang</h1>
  42.     <div class="game-container">
  43.         <p id="challengeText">Tantangan: Susun bintang sebanyak <span id="levelStars">1</span> baris</p>
  44.         <div>
  45.             <input type="number" id="rowInput" min="1" max="10" value="1">
  46.             <button onclick="submitPattern()">Submit</button>
  47.         </div>
  48.         <p class="message" id="gameMessage"></p>
  49.     </div>
  50.     <pre id="output"></pre>
  51.     <p>Level: <span id="level">1</span></p>
  52.     <p>Skor: <span id="score">0</span></p>
  53.  
  54.     <script>
  55.         let currentLevel = 1;
  56.         let score = 0;
  57.         const maxLevel = 5;
  58.  
  59.         function generatePattern(rows) {
  60.             let output = "";
  61.             for (let i = 1; i <= rows; i++) {
  62.                for (let k = 1; k <= rows - i; k++) {
  63.                    output += "&nbsp;"; // spasi menggunakan &nbsp;
  64.                }
  65.                for (let j = 1; j <= i; j++) {
  66.                    output += '<i class="fas fa-star"></i> ';
  67.                 }
  68.                 output += "<br>"; // Pindah ke baris berikutnya
  69.             }
  70.             return output;
  71.         }
  72.  
  73.         function submitPattern() {
  74.             const userRows = document.getElementById("rowInput").value;
  75.             const challengeRows = currentLevel; // Sesuaikan tantangan sesuai level
  76.  
  77.             if (userRows == challengeRows) {
  78.                 document.getElementById("output").innerHTML = generatePattern(userRows);
  79.                 score += 10; // Tambahkan poin jika berhasil
  80.                 document.getElementById("score").textContent = score;
  81.                 document.getElementById("gameMessage").textContent = "Benar! Lanjut ke level berikutnya.";
  82.                 currentLevel++;
  83.  
  84.                 if (currentLevel > maxLevel) {
  85.                     document.getElementById("gameMessage").textContent = "Selamat! Anda menyelesaikan semua level!";
  86.                     resetGame();
  87.                 } else {
  88.                     updateChallenge();
  89.                 }
  90.             } else {
  91.                 document.getElementById("gameMessage").textContent = "Salah! Coba lagi.";
  92.             }
  93.         }
  94.  
  95.         function updateChallenge() {
  96.             document.getElementById("level").textContent = currentLevel;
  97.             document.getElementById("levelStars").textContent = currentLevel;
  98.             document.getElementById("rowInput").value = currentLevel;
  99.         }
  100.  
  101.         function resetGame() {
  102.             currentLevel = 1;
  103.             score = 0;
  104.             document.getElementById("score").textContent = score;
  105.             document.getElementById("level").textContent = currentLevel;
  106.             updateChallenge();
  107.         }
  108.  
  109.         // Set tantangan pertama kali
  110.         updateChallenge();
  111.     </script>
  112.  
  113. </body>
  114. </html>
  115.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement