• 06-05-2026, 11:33:54
    #1
    <!DOCTYPE html>
    <html lang="tr">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>HIRT TOKATLA KEYİFLEN</title>
        <style>
            body {
                font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
                text-align: center;
                background-color: #1a252f;
                color: white;
                margin: 0;
                padding: 0;
                display: flex;
                justify-content: center;
                align-items: center;
                height: 100vh;
            }
    
            /* Ana Çerçeve */
            #game-wrapper {
                position: relative;
                width: 100%;
                max-width: 600px;
                height: 450px;
                background: linear-gradient(to bottom, #87CEEB 0%, #E0F6FF 100%);
                border: 4px solid #34495e;
                border-radius: 15px;
                overflow: hidden;
                box-shadow: 0 15px 30px rgba(0,0,0,0.7);
            }
    
            /* --- MENÜ EKRANI --- */
            #menu-screen {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background-color: rgba(44, 62, 80, 0.95);
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                z-index: 50;
            }
    
            #menu-screen h1 {
                color: #f1c40f;
                text-shadow: 2px 2px 4px #000;
                margin-bottom: 10px;
                font-size: 32px;
            }
    
            #menu-screen p {
                color: #bdc3c7;
                margin-bottom: 30px;
                font-size: 18px;
            }
    
            .btn {
                padding: 15px 40px;
                font-size: 24px;
                font-weight: bold;
                cursor: pointer;
                border: none;
                border-radius: 10px;
                background-color: #e74c3c;
                color: white;
                transition: all 0.2s ease;
                box-shadow: 0 5px 15px rgba(231, 76, 60, 0.4);
                text-transform: uppercase;
            }
    
            .btn:hover {
                background-color: #c0392b;
                transform: scale(1.1);
            }
    
            /* --- OYUN EKRANI --- */
            #game-screen {
                display: none; /* Başlangıçta gizli */
                width: 100%;
                height: 100%;
                position: relative;
                cursor: crosshair; /* Hedef alma imleci */
            }
    
            /* Ekrana tıkla uyarısı */
            #click-hint {
                position: absolute;
                top: 20px;
                width: 100%;
                color: #c0392b;
                font-weight: bold;
                font-size: 20px;
                text-shadow: 1px 1px 2px white;
                z-index: 20;
                pointer-events: none;
                animation: pulse 1s infinite alternate;
            }
    
            @keyframes pulse {
                from { transform: scale(1); opacity: 0.8; }
                to { transform: scale(1.05); opacity: 1; }
            }
    
            /* Zemin çizgisi */
            #ground {
                position: absolute;
                bottom: 0;
                width: 100%;
                height: 50px;
                background-color: #7f8c8d;
                border-top: 5px solid #95a5a6;
            }
    
            /* Hırt Karakteri */
            #hirt {
                position: absolute;
                bottom: 45px;
                left: 150px;
                width: 180px;
                transition: transform 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53);
                transform-origin: bottom right;
                z-index: 5;
            }
    
            #hirt.fallen {
                transform: rotate(90deg) translate(20px, -20px);
                opacity: 0.8;
            }
    
            /* Tokat Atan El */
            #hand {
                position: absolute;
                top: 100px;
                right: -300px; /* Başlangıçta gizli */
                width: 250px;
                z-index: 10;
                pointer-events: none; /* Ele tıklanmasını engeller */
            }
    
            /* Tokat Animasyonu */
            .slapping {
                animation: slapAction 0.35s ease-in-out;
            }
    
            @keyframes slapAction {
                0% { right: -300px; transform: rotate(0deg); }
                40% { right: 120px; transform: rotate(-15deg); }
                100% { right: -300px; transform: rotate(0deg); }
            }
    
            /* Tekrar Oyna Butonu */
            #btn-restart {
                position: absolute;
                bottom: 20px;
                left: 50%;
                transform: translateX(-50%);
                display: none;
                font-size: 18px;
                padding: 10px 20px;
                background-color: #2ecc71;
                z-index: 30;
            }
            
            #btn-restart:hover {
                background-color: #27ae60;
            }
    
        </style>
    </head>
    <body>
    
        <div id="game-wrapper">
            
            <!-- MENÜ -->
            <div id="menu-screen">
                <h1>👋 HIRT TOKATLA KEYİFLEN</h1>
                <p>Hırt karakteri atarlanırken gelişine yapıştır!</p>
                <button class="btn" onclick="oyunuBaslat()">BAŞLAT</button>
            </div>
    
            <!-- OYUN ALANI -->
            <div id="game-screen" onclick="tokatYapistir()">
                <div id="click-hint">GELİŞİNE YAPIŞTIRMAK İÇİN TIKLA!</div>
                <div id="ground"></div>
                <img id="hirt" src="https://i.8upload.com/image/0cbf61b39e00f5b7/h-rt.png" alt="Hırt Karakteri">
                <img id="hand" src="https://i.8upload.com/image/18e648ca15545bbe/clipart3360722.png" alt="Tokat Atan El">
                
                <button class="btn" id="btn-restart" onclick="menuyeDon(event)">Menüye Dön</button>
            </div>
    
        </div>
    
        <script>
            // Ses Dosyaları
            const sesKonusma = new Audio("https://www.myinstants.com/media/sounds/sifir-bir.mp3");
            const sesTokat = new Audio("https://www.myinstants.com/media/sounds/slap-soundmaster13-49669815_4L20wGP.mp3");
            const sesYereDusus = new Audio("https://www.myinstants.com/media/sounds/aslan-dayim-be.mp3");
            const sesEnSon = new Audio("https://www.myinstants.com/media/sounds/kes-lan-mukoqws.mp3");
    
            let tokatAtildiMi = false;
    
            function oyunuBaslat() {
                // Ekranları değiştir
                document.getElementById('menu-screen').style.display = 'none';
                document.getElementById('game-screen').style.display = 'block';
                document.getElementById('click-hint').style.display = 'block';
                
                // Konuşma sesini başlat
                sesKonusma.play();
                tokatAtildiMi = false;
            }
    
            function tokatYapistir() {
                // Eğer tokat zaten atıldıysa bir daha atılmasını engelle
                if (tokatAtildiMi) return;
                tokatAtildiMi = true;
                
                // Yazıyı gizle
                document.getElementById('click-hint').style.display = 'none';
    
                // Konuşma sesini anında kes
                sesKonusma.pause();
                sesKonusma.currentTime = 0;
                
                const hand = document.getElementById('hand');
                const hirt = document.getElementById('hirt');
    
                // El animasyonunu başlat
                hand.classList.add('slapping');
    
                // Tokatın yüze çarptığı an (yaklaşık 120ms sonra)
                setTimeout(() => {
                    sesTokat.play();
                    hirt.classList.add('fallen'); // Düşür
                }, 120);
    
                // Animasyon sınıfını temizle
                setTimeout(() => {
                    hand.classList.remove('slapping');
                }, 400);
    
                // Ses Zinciri (Biri bitince diğeri başlasın)
                sesTokat.onended = () => {
                    sesYereDusus.play();
                };
    
                sesYereDusus.onended = () => {
                    setTimeout(() => { sesEnSon.play(); }, 200);
                };
    
                // En son ses bitince menüye dön butonunu göster
                sesEnSon.onended = () => {
                    document.getElementById('btn-restart').style.display = 'block';
                };
            }
    
            function menuyeDon(event) {
                // Butona tıklamanın oyun alanına tıklandı (tokat) olarak algılanmasını engelle
                event.stopPropagation();
    
                // Tüm sesleri sustur
                [sesKonusma, sesTokat, sesYereDusus, sesEnSon].forEach(ses => {
                    ses.pause();
                    ses.currentTime = 0;
                });
    
                // Karakteri ve ekranı sıfırla
                document.getElementById('hirt').classList.remove('fallen');
                document.getElementById('btn-restart').style.display = 'none';
                document.getElementById('game-screen').style.display = 'none';
                document.getElementById('menu-screen').style.display = 'flex';
            }
        </script>
    
    </body>
    </html>






    Selamlar yapay zeka ile yaptık hırt tokatlayın buda böyle bir oyun oldu kodları verdim geliştirmek size kalmış iyi forumlar

    video: https://streamable.com/lwwwf9
  • 06-05-2026, 11:39:48
    #2
    Yazılım Uzmanı
    Abi şunları bi codepen'e falan yükle, kodları atıp kaçıyorsun
  • 06-05-2026, 11:40:49
    #3
    Ben bu versiyonu daha çok sevdim ama

    <!DOCTYPE html>
    <html lang="tr">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HIRT TOKATLA KEYİFLEN</title>
    <style>
    body {
        font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        text-align: center;
        background-color: #1a252f;
        color: white;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
    }
    #game-wrapper {
        position: relative;
        width: 100%;
        max-width: 600px;
        height: 450px;
        background: linear-gradient(to bottom, #87CEEB 0%, #E0F6FF 100%);
        border: 4px solid #34495e;
        border-radius: 15px;
        overflow: hidden;
        box-shadow: 0 15px 30px rgba(0,0,0,0.7);
    }
    #menu-screen {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: rgba(44, 62, 80, 0.95);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        z-index: 50;
    }
    #menu-screen h1 {
        color: #f1c40f;
        text-shadow: 2px 2px 4px #000;
        margin-bottom: 10px;
        font-size: 32px;
    }
    #menu-screen p {
        color: #bdc3c7;
        margin-bottom: 30px;
        font-size: 18px;
    }
    .btn {
        padding: 15px 40px;
        font-size: 24px;
        font-weight: bold;
        cursor: pointer;
        border: none;
        border-radius: 10px;
        background-color: #e74c3c;
        color: white;
        transition: all 0.2s ease;
    }
    .btn:hover {
        background-color: #c0392b;
        transform: scale(1.1);
    }
    #game-screen {
        display: none;
        width: 100%;
        height: 100%;
        position: relative;
        cursor: crosshair;
    }
    #click-hint {
        position: absolute;
        top: 20px;
        width: 100%;
        color: #c0392b;
        font-weight: bold;
        font-size: 20px;
    }
    #ground {
        position: absolute;
        bottom: 0;
        width: 100%;
        height: 50px;
        background-color: #7f8c8d;
    }
    #hirt {
        position: absolute;
        bottom: 45px;
        left: 150px;
        width: 180px;
        transition: transform 0.3s;
        transform-origin: bottom right;
    }
    #hirt.fallen {
        transform: rotate(90deg) translate(20px, -20px);
    }
    #hand {
        position: absolute;
        top: 100px;
        right: -300px;
        width: 250px;
    }
    .slapping {
        animation: slapAction 0.35s ease-in-out;
    }
    @keyframes slapAction {
        0% { right: -300px; }
        40% { right: 120px; }
        100% { right: -300px; }
    }
    #btn-restart {
        position: absolute;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
        display: none;
        font-size: 18px;
        padding: 10px 20px;
        background-color: #2ecc71;
    }
    </style>
    </head>
    <body>
    
    <div id="game-wrapper">
    <div id="menu-screen">
    <h1>👋 HIRT TOKATLA KEYİFLEN</h1>
    <p>Hırt karakteri atarlanırken gelişine yapıştır!</p>
    <button class="btn" onclick="oyunuBaslat()">BAŞLAT</button>
    </div>
    
    <div id="game-screen" onclick="tokatYapistir()">
    <div id="click-hint">TIKLA!</div>
    <div id="ground"></div>
    <img id="hirt" src="https://i.8upload.com/image/0cbf61b39e00f5b7/h-rt.png">
    <img id="hand" src="https://i.8upload.com/image/18e648ca15545bbe/clipart3360722.png">
    <button class="btn" id="btn-restart" onclick="menuyeDon(event)">Menüye Dön</button>
    </div>
    </div>
    
    <script>
    function oyunuBaslat() {
        document.getElementById('menu-screen').style.display = 'none';
        document.getElementById('game-screen').style.display = 'block';
    }
    
    function tokatYapistir() {
        const hand = document.getElementById('hand');
        const hirt = document.getElementById('hirt');
    
        const sesTokat = new Audio("https://www.myinstants.com/media/sounds/slap-soundmaster13-49669815_4L20wGP.mp3");
        sesTokat.play();
    
        hand.classList.remove('slapping');
        void hand.offsetWidth;
        hand.classList.add('slapping');
    
        hirt.classList.remove('fallen');
        void hirt.offsetWidth;
        hirt.classList.add('fallen');
    
        setTimeout(() => {
            hirt.classList.remove('fallen');
        }, 600);
    }
    
    function menuyeDon(event) {
        event.stopPropagation();
    
        document.getElementById('hirt').classList.remove('fallen');
        document.getElementById('game-screen').style.display = 'none';
        document.getElementById('menu-screen').style.display = 'flex';
    }
    </script>
    
    </body>
    </html>
  • 06-05-2026, 11:42:57
    #4
    Adwops adlı üyeden alıntı: mesajı görüntüle
    Abi şunları bi codepen'e falan yükle, kodları atıp kaçıyorsun
    o kadar uğraştım sizede ufak bir uğraş bırakıyorum belki site açarsam blog tarzı orada biriktirim rahat olur
  • 06-05-2026, 11:45:26
    #5
    anksiyetisi olan biriyim bu yüzden oyunu biraz daha zorlaştırdım ve anksiyete iyi gelecek seviyeye getirdim isteyen varsa alabilir ))
    <!DOCTYPE html>
    <html lang="tr">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>HIRT TOKATLA KEYİFLEN - V3 MODERN SÜRÜM</title>
        <style>
            body {
                font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
                text-align: center;
                background-color: #0f172a;
                color: white;
                margin: 0;
                padding: 0;
                display: flex;
                justify-content: center;
                align-items: center;
                height: 100vh;
                overflow: hidden;
            }
    
            #game-wrapper {
                position: relative;
                width: 100%;
                max-width: 600px;
                height: 450px;
                background: linear-gradient(-45deg, #1e3c72, #2a5298, #11998e, #38ef7d);
                background-size: 400% 400%;
                animation: gradientBG 10s ease infinite;
                border: 4px solid #1e293b;
                border-radius: 20px;
                overflow: hidden;
                box-shadow: 0 20px 50px rgba(0,0,0,0.8), inset 0 0 20px rgba(255,255,255,0.1);
            }
    
            @keyframes gradientBG {
                0% { background-position: 0% 50%; }
                50% { background-position: 100% 50%; }
                100% { background-position: 0% 50%; }
            }
    
            .shake {
                animation: shake-anim 0.2s cubic-bezier(.36,.07,.19,.97) both;
            }
    
            @keyframes shake-anim {
                10%, 90% { transform: translate3d(-2px, 0, 0); }
                20%, 80% { transform: translate3d(4px, 0, 0); }
                30%, 50%, 70% { transform: translate3d(-6px, 0, 0); }
                40%, 60% { transform: translate3d(6px, 0, 0); }
            }
    
            #menu-screen {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background-color: rgba(15, 23, 42, 0.95);
                backdrop-filter: blur(5px);
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: center;
                z-index: 50;
            }
    
            #menu-screen h1 {
                color: #fbbf24;
                text-shadow: 0 4px 10px rgba(251, 191, 36, 0.4);
                margin-bottom: 10px;
                font-size: 32px;
                letter-spacing: 1px;
            }
    
            #menu-screen p {
                color: #cbd5e1;
                margin-bottom: 30px;
                font-size: 16px;
            }
    
            .btn {
                padding: 15px 40px;
                font-size: 22px;
                font-weight: 800;
                cursor: pointer;
                border: none;
                border-radius: 12px;
                background: linear-gradient(135deg, #ef4444, #b91c1c);
                color: white;
                transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
                box-shadow: 0 5px 20px rgba(239, 68, 68, 0.5);
                text-transform: uppercase;
            }
    
            .btn:hover {
                transform: translateY(-3px) scale(1.05);
                box-shadow: 0 8px 25px rgba(239, 68, 68, 0.7);
            }
    
            .btn:active {
                transform: translateY(2px) scale(0.95);
            }
    
            #game-screen {
                display: none; 
                width: 100%;
                height: 100%;
                position: relative;
                cursor: crosshair; 
                user-select: none; 
            }
    
            #score-board {
                position: absolute;
                top: 20px;
                left: 20px;
                font-size: 22px;
                font-weight: 900;
                color: #fff;
                background: rgba(15, 23, 42, 0.7);
                padding: 8px 20px;
                border-radius: 12px;
                border: 1px solid rgba(255,255,255,0.2);
                backdrop-filter: blur(4px);
                z-index: 20;
                box-shadow: 0 4px 6px rgba(0,0,0,0.3);
            }
    
            #click-hint {
                position: absolute;
                top: 80px;
                width: 100%;
                color: #fca5a5;
                font-weight: bold;
                font-size: 18px;
                text-shadow: 0 2px 4px rgba(0,0,0,0.5);
                z-index: 20;
                pointer-events: none;
                animation: pulse 1s infinite alternate;
            }
    
            @keyframes pulse {
                from { transform: scale(1); opacity: 0.6; }
                to { transform: scale(1.05); opacity: 1; }
            }
    
            #ground {
                position: absolute;
                bottom: 0;
                width: 100%;
                height: 50px;
                background: #1e293b;
                border-top: 4px solid #334155;
                box-shadow: 0 -10px 20px rgba(0,0,0,0.3);
            }
    
            #hirt {
                position: absolute;
                bottom: 45px;
                left: 200px;
                width: 160px;
                transform-origin: bottom center;
                z-index: 5;
                transition: filter 0.1s;
            }
    
            .hit-anim {
                animation: flinch 0.3s ease-out;
            }
    
            @keyframes flinch {
                0% { transform: rotate(0deg) scale(1); filter: brightness(1); }
                20% { transform: rotate(-15deg) scale(0.95); filter: brightness(1.5) sepia(1) hue-rotate(-50deg) saturate(5); }
                40% { transform: rotate(10deg) scale(1.05); }
                60% { transform: rotate(-5deg) scale(1); }
                100% { transform: rotate(0deg) scale(1); filter: brightness(1); }
            }
    
            .dodge-anim {
                opacity: 0.5;
                filter: grayscale(1) blur(2px);
                transition: all 0.2s !important;
            }
    
            #hand {
                position: absolute;
                top: 100px;
                right: -300px; 
                width: 250px;
                z-index: 10;
                pointer-events: none;
                filter: drop-shadow(-5px 10px 10px rgba(0,0,0,0.5));
            }
    
            .slapping {
                animation: slapAction 0.15s ease-in-out forwards;
            }
    
            @keyframes slapAction {
                0% { right: -300px; transform: rotate(0deg); }
                50% { right: 120px; transform: rotate(-25deg); }
                100% { right: -300px; transform: rotate(0deg); }
            }
    
            .popup-text {
                position: absolute;
                font-size: 28px;
                font-weight: 900;
                text-shadow: 2px 2px 0px #000, -1px -1px 0px #000, 1px -1px 0px #000, -1px 1px 0px #000;
                pointer-events: none;
                z-index: 40;
                animation: floatUp 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
            }
    
            .popup-dodge {
                color: #fbbf24;
                font-size: 32px;
                font-style: italic;
            }
    
            .popup-hit {
                color: #ef4444;
            }
    
            @keyframes floatUp {
                0% { transform: translateY(0) scale(0.5); opacity: 1; }
                50% { transform: translateY(-30px) scale(1.2); opacity: 1; }
                100% { transform: translateY(-60px) scale(1); opacity: 0; }
            }
    
            #btn-exit {
                position: absolute;
                top: 20px;
                right: 20px;
                font-size: 14px;
                padding: 8px 15px;
                background-color: #334155;
                border-radius: 8px;
                border: 1px solid rgba(255,255,255,0.1);
                z-index: 30;
            }
            
            #btn-exit:hover {
                background-color: #475569;
            }
    
        </style>
    </head>
    <body>
    
        <div id="game-wrapper">
            <div id="menu-screen">
                <h1><img draggable="false" class="emoji" alt="👋" src="//cdn.r10.net/emojis/html/1f44b.png"> HIRT TOKATLA V3</h1>
                <p>Hırt artık hareket ediyor ve kaçabiliyor. Yakala ve yapıştır!</p>
                <p style="font-size: 13px; color: #94a3b8; font-style: italic;">(Tokat attıkça hızı artar, reflekslerini hazırla)</p>
                <button class="btn" onclick="oyunuBaslat()">BAŞLAT</button>
            </div>
    
            <div id="game-screen" onmousedown="tokatYapistir(event)">
                <div id="score-board">Tokat: 0</div>
                <div id="click-hint">HAREKET EDİYOR, YAKALA!</div>
                <div id="ground"></div>
                
                <img id="hirt" src="https://i.8upload.com/image/0cbf61b39e00f5b7/h-rt.png" alt="Hırt Karakteri" draggable="false">
                <img id="hand" src="https://i.8upload.com/image/18e648ca15545bbe/clipart3360722.png" alt="Tokat Atan El" draggable="false">
                
                <button class="btn" id="btn-exit" onclick="menuyeDon(event)">Menüye Dön</button>
            </div>
    
        </div>
    
        <script>
            const sesKonusma = new Audio("https://www.myinstants.com/media/sounds/sifir-bir.mp3");
            const sesTokatOrijinal = new Audio("https://www.myinstants.com/media/sounds/slap-soundmaster13-49669815_4L20wGP.mp3");
            const sesCombo1 = new Audio("https://www.myinstants.com/media/sounds/aslan-dayim-be.mp3");
            const sesCombo2 = new Audio("https://www.myinstants.com/media/sounds/kes-lan-mukoqws.mp3");
            const sesKacma = new Audio("https://www.myinstants.com/media/sounds/swoosh-sound-effect-for-youtube-videos-hd_1.mp3");
    
            let tokatSayisi = 0;
            let ilkTokatAtildi = false;
    
            let hirtPos = 200;
            let hirtYonu = 1;
            let hirtHizi = 2.5;
            let dodgeIhtimali = 0.20;
            let oyunDevamEdiyor = false;
            let animasyonID;
            let kaciyorMu = false;
    
            function oyunuBaslat() {
                document.getElementById('menu-screen').style.display = 'none';
                document.getElementById('game-screen').style.display = 'block';
                document.getElementById('click-hint').style.display = 'block';
                
                tokatSayisi = 0;
                ilkTokatAtildi = false;
                hirtHizi = 2.5; 
                hirtPos = 200;
                kaciyorMu = false;
                document.getElementById('score-board').innerText = "Tokat: 0";
                document.getElementById('hirt').style.left = hirtPos + 'px';
                
                sesKonusma.currentTime = 0;
                sesKonusma.play();
    
                oyunDevamEdiyor = true;
                hareketDöngüsü();
            }
    
            function hareketDöngüsü() {
                if (!oyunDevamEdiyor) return;
    
                if (!kaciyorMu) {
                    hirtPos += hirtHizi * hirtYonu;
    
                    if (hirtPos > 420) {
                        hirtYonu = -1;
                        hirtPos = 420;
                    } else if (hirtPos < 10) {
                        hirtYonu = 1;
                        hirtPos = 10;
                    }
    
                    document.getElementById('hirt').style.left = hirtPos + 'px';
                }
    
                animasyonID = requestAnimationFrame(hareketDöngüsü);
            }
    
            function tokatYapistir(event) {
                if (!oyunDevamEdiyor) return;
    
                if (!ilkTokatAtildi) {
                    ilkTokatAtildi = true;
                    document.getElementById('click-hint').style.display = 'none';
                    sesKonusma.pause();
                    sesKonusma.currentTime = 0;
                }
    
                const hand = document.getElementById('hand');
                hand.classList.remove('slapping');
                void hand.offsetWidth; 
                hand.classList.add('slapping');
    
                if (Math.random() < dodgeIhtimali) {
                    kaciyorMu = true;
                    
                    let kacmaSesi = sesKacma.cloneNode();
                    kacmaSesi.volume = 0.5;
                    kacmaSesi.play();
    
                    const hirt = document.getElementById('hirt');
                    hirt.classList.add('dodge-anim');
                    
                    hirtPos = hirtPos > 210 ? Math.random() * 100 + 10 : Math.random() * 100 + 300;
                    hirt.style.left = hirtPos + 'px';
                    
                    yaziOlustur(event.clientX, event.clientY, ["KAÇTI!", "ISKALADIN!", "HOP!", "YAVAŞ!"], "popup-dodge");
    
                    setTimeout(() => {
                        hirt.classList.remove('dodge-anim');
                        kaciyorMu = false;
                    }, 300);
                    
                    return;
                }
    
                tokatSayisi++;
                document.getElementById('score-board').innerText = "Tokat: " + tokatSayisi;
    
                if (hirtHizi < 12) {
                    hirtHizi += 0.15;
                }
    
                let tokatSesi = sesTokatOrijinal.cloneNode();
                tokatSesi.volume = 0.8;
                tokatSesi.play();
    
                if (tokatSayisi > 0 && tokatSayisi % 10 === 0) {
                    sesCombo1.cloneNode().play();
                } else if (tokatSayisi > 0 && tokatSayisi % 15 === 0) {
                    sesCombo2.cloneNode().play();
                }
    
                setTimeout(() => {
                    const wrapper = document.getElementById('game-wrapper');
                    wrapper.classList.remove('shake');
                    void wrapper.offsetWidth;
                    wrapper.classList.add('shake');
    
                    const hirt = document.getElementById('hirt');
                    hirt.classList.remove('hit-anim');
                    void hirt.offsetWidth;
                    hirt.classList.add('hit-anim');
                    
                    yaziOlustur(event.clientX, event.clientY, ["ÇAT!", "ŞRAK!", "YAPIŞTIR!", "BAM!", "MÜKEMMEL!", "GÜM!"], "popup-hit");
                }, 80);
            }
    
            function yaziOlustur(x, y, kelimeListesi, cssSinifi) {
                const secilenKelime = kelimeListesi[Math.floor(Math.random() * kelimeListesi.length)];
                const wrapperRect = document.getElementById('game-wrapper').getBoundingClientRect();
                
                const popup = document.createElement('div');
                popup.className = `popup-text ${cssSinifi}`;
                popup.innerText = secilenKelime;
                
                let posX = x - wrapperRect.left - 50;
                let posY = y - wrapperRect.top - 20;
    
                popup.style.left = posX + 'px';
                popup.style.top = posY + 'px';
                
                document.getElementById('game-screen').appendChild(popup);
                
                setTimeout(() => { popup.remove(); }, 600);
            }
    
            function menuyeDon(event) {
                event.stopPropagation();
                
                oyunDevamEdiyor = false;
                cancelAnimationFrame(animasyonID);
    
                sesKonusma.pause();
                sesTokatOrijinal.pause();
                sesCombo1.pause();
                sesCombo2.pause();
    
                document.getElementById('game-screen').style.display = 'none';
                document.getElementById('menu-screen').style.display = 'flex';
                
                document.getElementById('hirt').classList.remove('hit-anim', 'dodge-anim');
                document.getElementById('hand').classList.remove('slapping');
                document.getElementById('game-wrapper').classList.remove('shake');
                document.querySelectorAll('.popup-text').forEach(e => e.remove());
            }
        </script>
    
    </body>
    </html>
  • 06-05-2026, 12:25:34
    #6
    Yazılım bilgim hiç yok bu kodları nasıl açabilirim? Yada neden exe gibi veya direk açılır halde olmuyorlar?
  • 06-05-2026, 12:28:05
    #7
    OwlKing adlı üyeden alıntı: mesajı görüntüle
    Yazılım bilgim hiç yok bu kodları nasıl açabilirim? Yada neden exe gibi veya direk açılır halde olmuyorlar?
    bilen birine yaptırman lazım kodlar açık zaten
  • 06-05-2026, 12:30:30
    #8
    OwlKing adlı üyeden alıntı: mesajı görüntüle
    Yazılım bilgim hiç yok bu kodları nasıl açabilirim? Yada neden exe gibi veya direk açılır halde olmuyorlar?
    Hocam çalıştırmayı kastediyorsaniz html dosyası ztn isim.html diye kaydedip dosyayi acarsaniz pc de calistirabilirsiniz
  • 06-05-2026, 12:30:33
    #9
    Eline sağlık hocam 😂