Saturday, January 4, 2025

Cara membuat Game tebak angka dengan HTML sederhana.

 Kelas saya lebih seru karena siswa main tebak tebakan angka dengan komputer, yang menang dapat poin dan yang kalah harus menyebutkan nama nama perangkat komputer beserta fungsinya.


Yuk buat juga, simpan file dengan nama tebak_angka.html

berikut kodenya :

<div class="container-fluid">

            <div class="row">

              <div class="col-sm-12">

                <div class="card">

                <a href="index.php?act=<?php echo base64_encode("games"); ?>" class="btn btn-danger btn-block">Tutup Game</a>

<style>

        body {

            font-family: Arial, sans-serif;

            text-align: center;

            

        }

        input {

            padding: 10px;

            margin: 10px;

            font-size: 1.2em;

        }

        button {

            padding: 10px 15px;

            font-size: 1.2em;

            background-color: #61dafb;

            border: none;

            cursor: pointer;

            transition: background 0.3s;

        }

        button:hover {

            background-color: #21a1f1;

        }

        #message {

            margin-top: 20px;

            font-size: 1.5em;

            font-weight: bold;

        }

    </style>

</head>

<body>

    <audio id="correctSound" src="pages/media/correct.mp3"></audio>

    <audio id="wrongSound" src="pages/media/wrong.mp3"></audio>

    <audio id="bgMusic" src="pages/media/background.mp3" loop autoplay></audio>

    <br>

    <br>

    <h1>Tebak Angka (1-100)</h1>

    <p>Coba tebak angka yang saya pikirkan!</p>

    <input type="number" id="guess" min="1" max="100" placeholder="Masukkan angka">

    <button onclick="checkGuess()">Tebak</button>

    <p id="message"></p>


    <script>

        let randomNumber = Math.floor(Math.random() * 100) + 1;

        function checkGuess() {

            let userGuess = document.getElementById("guess").value;

            let message = document.getElementById("message");

            

            if (userGuess == randomNumber) {

                message.innerHTML = "🎉 Selamat! Kamu menebak dengan benar!";

                message.style.color = "green";

                document.getElementById("correctSound").play();

            } else if (userGuess > randomNumber) {

                message.innerHTML = "🔻 Terlalu tinggi! Coba lagi.";

                message.style.color = "red";

                document.getElementById("wrongSound").play();

            } else {

                message.innerHTML = "🔺 Terlalu rendah! Coba lagi.";

                message.style.color = "red";

                document.getElementById("wrongSound").play();

            }

        }

    </script>

</body>

</div>

</div>

</div>

</div>


Note : jika menyertakan media seperti sound, gambar dan lainnya kamu wajib menyimpannya dalam 1 folder dan panggil sesuai dengan nama file.

Selamat Mencoba

Friday, January 3, 2025

Buat peserta didik lebih semangat belajar dengan Game buatanmu sendiri. Game Math sederhana.

Untuk menarik minat belajar siswa di kelas maka kamu harus memiliki skill mengajar yang inovatif. salah satunya dengan game sederhana ini cukup membuat peserta didik lebih bersemangat dalam belajar.

Game math ini dibuat dengan HTML sederhana. 



Simpan file ini dengan nama math.html

<div class="container-fluid">
            <div class="row">
              <div class="col-sm-12">
                <div class="card">
               
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            background-color: #f4f4f4;
        }
        .game-container {
            margin-top: 50px;
        }
        .question {
            font-size: 5em;
            margin-bottom: 20px;
        }
        .answer {
            font-size: 1.5em;
            padding: 10px;
            width: 100px;
            text-align: center;
            border-radius: 5px;
            border: 2px solid #2980b9;
        }
        button {
            margin-top: 10px;
            padding: 10px 20px;
            font-size: 1em;
            background-color: #e67e22;
            color: white;
            border: none;
            border-radius: 5px;
            cursor: pointer;
        }
        button:hover {
            background-color: #d35400;
        }
        .message {
            font-size: 1.5em;
            font-weight: bold;
            color: #e74c3c;
        }
    </style>
</head>
<body>
    <audio id="bgMusic" loop autoplay>
        <source src="background.mp3" type="audio/mpeg">
    </audio>
    <audio id="correctSound" src="correct.mp3"></audio>
    <audio id="wrongSound" src="wrong.mp3"></audio>
    
    <div class="game-container">
        <h1>Game Matematika</h1>
        <p>Jawablah pertanyaan dengan benar!</p>
        <div class="question" id="question"></div>
        <input type="number" id="answer" class="answer" placeholder="Jawab" autofocus />
        <br>
        <button onclick="checkAnswer()">Kirim Jawaban</button>
        <p id="message" class="message"></p>
    </div>
    
    <script>
        let num1, num2, operator, correctAnswer;
        const operators = ['+', '-', '*', '/'];
        
        function generateQuestion() {
            num1 = Math.floor(Math.random() * 10) + 1; 
            num2 = Math.floor(Math.random() * 10) + 1;
            operator = operators[Math.floor(Math.random() * operators.length)];
            
            if (operator === '/' && num1 % num2 !== 0) {
                generateQuestion();
                return;
            }
            
            correctAnswer = eval(`${num1} ${operator} ${num2}`);
            document.getElementById("question").innerText = `${num1} ${operator} ${num2} = ?`;
        }
        
        function checkAnswer() {
            let userAnswer = parseFloat(document.getElementById("answer").value);
            if (userAnswer === correctAnswer) {
                document.getElementById("message").innerText = "✅ Jawaban Benar!";
                document.getElementById("correctSound").play();
            } else {
                document.getElementById("message").innerText = "❌ Jawaban Salah! Coba Lagi.";
                document.getElementById("wrongSound").play();
            }
            setTimeout(() => {
                document.getElementById("message").innerText = "";
                document.getElementById("answer").value = "";
                generateQuestion();
            }, 2000);
        }
        
        generateQuestion();
    </script>
</body>
</div>
</div>
</div>
</div>


Note : jika menyertakan media seperti sound, gambar dan lainnya kamu wajib menyimpannya dalam 1 folder dan panggil sesuai dengan nama file.

Selamat Mencoba


Thursday, January 2, 2025

Membuat Game Scrabble Junior dengan HTML, Mudah

 Game Scrabble bisa kamu buat mandiri, cukup dengan HTML dan Javascript.


Berikut kode game scrabble dengan HTML, kamu cukup menyimpannya dengan nama scrabble.html
<div class="container-fluid">
            <div class="row">
              <div class="col-sm-12">
                <div class="card">
                
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            background-color: #f4f4f4;
        }
        .game-container {
            margin-top: 50px;
        }
        .board {
            display: grid;
            grid-template-columns: repeat(5, 60px);
            grid-gap: 5px;
            justify-content: center;
            margin: 20px auto;
        }
        .tile {
            width: 60px;
            height: 60px;
            background-color: white;
            border: 2px solid #2980b9;
            font-size: 1.5em;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
        }
        .tile.placed {
            background-color: #2ecc71;
            border-color: #27ae60;
        }
        .letter-bank {
            display: flex;
            justify-content: center;
            gap: 10px;
            margin-top: 20px;
        }
        .letter {
            width: 50px;
            height: 50px;
            background-color: #e67e22;
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5em;
            cursor: grab;
            border-radius: 5px;
        }
        .message {
            font-size: 1.5em;
            font-weight: bold;
            color: #e74c3c;
        }
    </style>
</head>
<body>
    <audio id="bgMusic" loop autoplay>
        <source src="background.mp3" type="audio/mpeg">
    </audio>
    <audio id="correctSound" src="correct.mp3"></audio>
    <audio id="wrongSound" src="wrong.mp3"></audio>
    
    <div class="game-container">
        <h1>Scrabble Junior</h1>
        <p>Tempatkan huruf di papan untuk membentuk kata yang benar!</p>
        <div class="board" id="board"></div>
        <div class="letter-bank" id="letterBank"></div>
        <p id="message" class="message"></p>
    </div>
    
    <script>
        const words = ["KATA", "BUKU", "MEJA", "PENA", "BOLA"];
        let currentWordIndex = 0;
        let board = document.getElementById("board");
        let letterBank = document.getElementById("letterBank");

        function loadNewWord() {
            if (currentWordIndex >= words.length) {
                document.getElementById("message").innerText = "🎉 Selamat! Anda telah menyelesaikan semua kata!";
                return;
            }
            
            selectedWord = words[currentWordIndex];
            createBoard();
            createLetterBank();
            document.getElementById("message").innerText = "";
        }

        function createBoard() {
            board.innerHTML = "";
            for (let i = 0; i < selectedWord.length; i++) {
                let tile = document.createElement("div");
                tile.classList.add("tile");
                tile.dataset.index = i;
                tile.ondrop = drop;
                tile.ondragover = allowDrop;
                board.appendChild(tile);
            }
        }

        function createLetterBank() {
            letterBank.innerHTML = "";
            let shuffledLetters = selectedWord.split("").sort(() => Math.random() - 0.5);
            shuffledLetters.forEach(letter => {
                let letterDiv = document.createElement("div");
                letterDiv.classList.add("letter");
                letterDiv.innerText = letter;
                letterDiv.draggable = true;
                letterDiv.ondragstart = drag;
                letterBank.appendChild(letterDiv);
            });
        }

        function allowDrop(event) {
            event.preventDefault();
        }

        function drag(event) {
            event.dataTransfer.setData("text", event.target.innerText);
        }

        function drop(event) {
            event.preventDefault();
            let letter = event.dataTransfer.getData("text");
            event.target.innerText = letter;
            event.target.classList.add("placed");
            checkWin();
        }

        function checkWin() {
            let placedWord = Array.from(board.children).map(tile => tile.innerText).join("");
            if (placedWord === selectedWord) {
                document.getElementById("message").innerText = "🎉 Selamat! Kata yang benar!";
                document.getElementById("correctSound").play();
                setTimeout(() => {
                    currentWordIndex++;
                    loadNewWord();
                }, 2000);
            } else if (placedWord.length === selectedWord.length) {
                document.getElementById("message").innerText = "❌ Salah! Coba lagi.";
                document.getElementById("wrongSound").play();
            }
        }

        loadNewWord();
    </script>
</body>
</div>
</div>
</div>
</div>

Note : jika menyertakan media seperti sound, gambar dan lainnya kamu wajib menyimpannya dalam 1 folder dan panggil sesuai dengan nama file.

Selamat Mencoba


Wednesday, January 1, 2025

Membuat Game Puzzle sederhana dengan HTML

Game Puzzle sedrhana untuk pembelajaran di kelas lebih menarik. 



Tulis kode berikut dan simpan dengan nama puzzle.html

<div class="container-fluid">
            <div class="row">
              <div class="col-sm-12">
                <div class="card">
                
    <style>
        body {
            font-family: Arial, sans-serif;
            text-align: center;
            background-color: #f4f4f4;
        }
        .game-container {
            margin-top: 50px;
        }
        .puzzle {
            display: grid;
            grid-template-columns: repeat(4, 100px);
            grid-gap: 5px;
            justify-content: center;
            margin: 20px auto;
        }
        .tile {
            width: 100px;
            height: 100px;
            background-color: white;
            border: 2px solid #2980b9;
            font-size: 2em;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
        }
        .empty {
            background-color: #f4f4f4;
            border: none;
        }
        .message {
            font-size: 1.5em;
            font-weight: bold;
            color: #e74c3c;
        }
    </style>
</head>
<body>
    <audio id="bgMusic" loop autoplay>
        <source src="background.mp3" type="audio/mpeg"> 
    </audio>
    <audio id="correctSound" src="correct.mp3"></audio>
    
    <div class="game-container">
        <h1>Game Puzzle</h1>
        <p>Susun angka sesuai urutan yang benar!</p>
        <div class="puzzle" id="puzzle"></div>
        <p id="message" class="message"></p>
    </div>
    
    <script>
        let tiles = [...Array(15).keys()].map(x => x + 1).concat([""]);
        let puzzle = document.getElementById("puzzle");

        function shuffle(array) {
            for (let i = array.length - 1; i > 0; i--) {
                let j = Math.floor(Math.random() * (i + 1));
                [array[i], array[j]] = [array[j], array[i]];
            }
        }

        function renderPuzzle() {
            puzzle.innerHTML = "";
            tiles.forEach((num, index) => {
                let tile = document.createElement("div");
                tile.classList.add("tile");
                if (num === "") {
                    tile.classList.add("empty");
                } else {
                    tile.innerText = num;
                    tile.onclick = () => moveTile(index);
                }
                puzzle.appendChild(tile);
            });
        }

        function moveTile(index) {
            let emptyIndex = tiles.indexOf("");
            let validMoves = [emptyIndex - 1, emptyIndex + 1, emptyIndex - 4, emptyIndex + 4];
            if (validMoves.includes(index)) {
                [tiles[index], tiles[emptyIndex]] = [tiles[emptyIndex], tiles[index]];
                renderPuzzle();
                checkWin();
            }
        }

        function checkWin() {
            if (tiles.join() === [...Array(15).keys()].map(x => x + 1).concat([""]).join()) {
                document.getElementById("message").innerText = "🎉 Selamat! Anda berhasil menyelesaikan puzzle!";
                document.getElementById("correctSound").play();
            }
        }

        shuffle(tiles);
        renderPuzzle();
    </script>
</body>
</div>
</div>
</div>
</div>

Selamat mencoba


Monday, September 9, 2024

Desain - Latihan Modifikasi Teks dengan Photoshop


Latihan  membuat  efek  tulisan seperti terbakar  ini  kita  akan  belajar  mengenai cara menggunakan liquity. Dengan adanya latihan ini bertujuan semoga dapat menambah pengalaman tentang cara menggunakan software photoshop. Latihan tentang cara membuat efek tulisan terbakar ini merupakan bentuk dari salah satu fitur yang ada pada photoshop, dimana software ini mempu menciptakan efek yang terlihat sangat natural seperti api yang menyala dan terkena hembusan angin.

Latihan ini berbentuk sebuah modul (.PDF) klik pada tautan (lihat latihan) berikut untuk melihat.

Monday, July 29, 2024

Menambahkan formulir Aktivitas pada E-Laz

Untuk mencatat aktivitas yang akan anda lakukan ada beberapa cara yang dapat dilakukan, namun sebelumnya silahkan login terlebih dahulu pada sistem :


Pastikan anda memasukan username dan password yang benar, jika akun terdaftar maka anda akan di arahkan ke dalam sistem E-Laz.

Berikut cara memasukan aktivitas :

1. Menggunakan tombol 'Buat Aktivitas' pada tampilan beranda.


Pada halaman beranda tersebut ditampilkan informasi tentang apakah anda sudah melakukan pengisian Formulir aktivitas atau belum.

Tombol 'Buat Aktivitas' akan muncul jika anda belum mengisi formulir pada hari tersebut. untuk menambahkan aktivitas silakan klik tombol buat aktivitas.


Penjelasan :
Tanggal Aktivitas : Silahkan masukan tanggal sesuai dengan aktivitas yang anda lakukan.
Waktu Mulai : Silahkan diisi kapan waktu anda memulai aktivitas tersebut.
Waktu Selesai : Silahkan diisi kapan waktu anda menyelesaikan aktivitas tersebut.
Aktivitas : Silahkan dipilih aktivitas apa yang anda lakukan (Ini diatur oleh pengelola), jika daftar yang anda inginkan tidak ada, segera lapor pada Administrator.
Topik Aktivitas : Silahkan anda mengisi topik aktivitas yang ada kerjakan.
Detail Aktivitas : Silahkan isi Aktifitas yang anda lakukan secara lebih lengkap.
Hasil Aktivitas : Silakan anda masukan Hasil akhir yang anda peroleh dari aktivitas yang anda lakukan.
Dokumentasi : Silahkan masukan dokumentasi pada aktivitas tersebut, dapat berupa file gambar dan pdf dokumen.

Jika semua form sudah terisi selanjutnya anda dapat menekan tombol POST untuk mengirimkan data.

 2. Akses menu Aktivitas.
untuk mengakses dengan cara ini anda cukup klik pada menu saya, kemudian pilih Aktivitas > Laporan Aktifitas.

Selanjutnya akan ditampilkan daftar atau riawayat aktivitas anda.



Silakan klik tombol 'Tambah Data' maka anda akan diarahkan pada form input data aktivitas.

Sekian, dan terimakasih. jika masih mengalami kendala silakan kontak administrator.