• 23-04-2026, 14:54:48
    #1
    <!DOCTYPE html>
    <html lang="tr">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Bul Karayı Al Parayı - Animasyonlu</title>
        <style>
            /* --- TASARIM (CSS) KODLARI --- */
            body {
                font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
                background-color: #2c3e50;
                color: #ecf0f1;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                height: 100vh;
                margin: 0;
                overflow: hidden;
            }
    
            h1 {
                margin-bottom: 10px;
                text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
            }
    
            #message {
                font-size: 22px;
                font-weight: bold;
                height: 30px;
                margin-bottom: 30px;
                transition: color 0.3s;
            }
    
            /* Kartların içinde duracağı ana alan */
            .game-board {
                position: relative;
                width: 400px; /* 3 kart + boşluklar için genişlik */
                height: 180px;
                margin-bottom: 40px;
            }
    
            .card {
                width: 120px;
                height: 180px;
                position: absolute;
                top: 0;
                left: 0;
                perspective: 1000px;
                cursor: pointer;
                /* Yer değiştirme animasyonunun süresi */
                transition: transform 0.4s ease-in-out;
            }
    
            .card-inner {
                width: 100%;
                height: 100%;
                transition: transform 0.6s;
                transform-style: preserve-3d;
                position: relative;
                box-shadow: 0 4px 8px rgba(0,0,0,0.3);
                border-radius: 10px;
            }
    
            .card.flipped .card-inner {
                transform: rotateY(180deg);
            }
    
            .card-front, .card-back {
                width: 100%;
                height: 100%;
                position: absolute;
                backface-visibility: hidden;
                display: flex;
                justify-content: center;
                align-items: center;
                font-size: 60px;
                border-radius: 10px;
                border: 3px solid #bdc3c7;
                box-sizing: border-box;
            }
    
            .card-front {
                background-color: #c0392b;
                background-image: repeating-linear-gradient(
                    45deg, transparent, transparent 10px, #a5281b 10px, #a5281b 20px
                );
            }
    
            .card-back {
                background-color: #ecf0f1;
                transform: rotateY(180deg);
            }
    
            .card-back.black { color: #2c3e50; }
            .card-back.red { color: #e74c3c; }
    
            button {
                padding: 12px 25px;
                font-size: 18px;
                font-weight: bold;
                color: #2c3e50;
                background-color: #f1c40f;
                border: none;
                border-radius: 8px;
                cursor: pointer;
                box-shadow: 0 4px 6px rgba(0,0,0,0.3);
                transition: background-color 0.2s, transform 0.1s, opacity 0.3s;
            }
    
            button:hover { background-color: #f39c12; }
            button:active { transform: scale(0.95); }
            button:disabled {
                background-color: #95a5a6;
                cursor: not-allowed;
                opacity: 0.5;
            }
        </style>
    </head>
    <body>
    
        <h1>Bul Karayı, Al Parayı!</h1>
        <div id="message">Oynamak için Başla butonuna bas!</div>
    
        <div class="game-board" id="board">
            <div class="card" id="card-0" onclick="selectCard(0)">
                <div class="card-inner">
                    <div class="card-front"></div>
                    <div class="card-back" id="card-val-0"></div>
                </div>
            </div>
            <div class="card" id="card-1" onclick="selectCard(1)">
                <div class="card-inner">
                    <div class="card-front"></div>
                    <div class="card-back" id="card-val-1"></div>
                </div>
            </div>
            <div class="card" id="card-2" onclick="selectCard(2)">
                <div class="card-inner">
                    <div class="card-front"></div>
                    <div class="card-back" id="card-val-2"></div>
                </div>
            </div>
        </div>
    
        <button id="startBtn" onclick="startGame()">Oyunu Başlat</button>
    
        <script>
            let winningCardIndex = -1;
            let canPlay = false;
            
            // Kartların ekrandaki X koordinatları (sol, orta, sağ)
            const POSITIONS_X = [0, 140, 280];
            
            // Hangi kartın (0,1,2) hangi pozisyonda (0,1,2) olduğunu tutan dizi
            let cardPositions = [0, 1, 2];
    
            // Kartların pozisyonlarını ekrana yansıtan fonksiyon
            function updateVisualPositions() {
                for (let i = 0; i < 3; i++) {
                    const card = document.getElementById(`card-${i}`);
                    // Kartı bulunduğu pozisyona göre sağa kaydır (X ekseninde)
                    card.style.transform = `translateX(${POSITIONS_X[cardPositions[i]]}px)`;
                }
            }
    
            // Sayfa yüklendiğinde kartları yan yana diz
            window.onload = updateVisualPositions;
    
            function startGame() {
                const btn = document.getElementById('startBtn');
                const messageEl = document.getElementById('message');
                
                btn.disabled = true;
                canPlay = false;
                
                // Başlangıç pozisyonlarını sıfırla
                cardPositions = [0, 1, 2];
                updateVisualPositions();
                
                winningCardIndex = Math.floor(Math.random() * 3);
    
                // Tüm kartları kapat ve simgeleri belirle
                for (let i = 0; i < 3; i++) {
                    const card = document.getElementById(`card-${i}`);
                    const cardBack = document.getElementById(`card-val-${i}`);
                    
                    card.classList.remove('flipped');
                    cardBack.classList.remove('black', 'red');
                    
                    if (i === winningCardIndex) {
                        cardBack.textContent = "♠"; // Maça
                        cardBack.classList.add('black');
                    } else {
                        cardBack.textContent = "♥"; // Kupa
                        cardBack.classList.add('red');
                    }
                }
    
                // Animasyon Senaryosu
                messageEl.textContent = "Dikkatli bak! Karayı aklında tut...";
                messageEl.style.color = "#f1c40f";
    
                // 1. Adım: Yarım saniye sonra kartları açıp kullanıcıya göster
                setTimeout(() => {
                    for(let i=0; i<3; i++) document.getElementById(`card-${i}`).classList.add('flipped');
                }, 500);
    
                // 2. Adım: 2 saniye gösterdikten sonra kartları kapat
                setTimeout(() => {
                    for(let i=0; i<3; i++) document.getElementById(`card-${i}`).classList.remove('flipped');
                    messageEl.textContent = "Kartlar karışıyor, gözünü ayırma!";
                }, 2500);
    
                // 3. Adım: Kartlar kapandıktan sonra karıştırma işlemini başlat
                setTimeout(() => {
                    shuffleCards(10); // 10 defa yer değiştir
                }, 3200);
            }
    
            function shuffleCards(shuffleCount) {
                let currentShuffle = 0;
                
                // Her 400 milisaniyede bir çalışacak döngü
                const shuffleInterval = setInterval(() => {
                    // Hangi iki pozisyonun yer değiştireceğini rastgele seç
                    let pos1 = Math.floor(Math.random() * 3);
                    let pos2 = Math.floor(Math.random() * 3);
                    while (pos1 === pos2) {
                        pos2 = Math.floor(Math.random() * 3); // Aynı gelirse tekrar seç
                    }
    
                    // Seçilen pozisyonlardaki kartları bul
                    let cardIndex1 = cardPositions.indexOf(pos1);
                    let cardIndex2 = cardPositions.indexOf(pos2);
    
                    // Kartların pozisyonlarını dizide takas et
                    cardPositions[cardIndex1] = pos2;
                    cardPositions[cardIndex2] = pos1;
    
                    // Takası ekrana yansıt (CSS transition sayesinde kayarak yer değiştirecekler)
                    updateVisualPositions();
    
                    currentShuffle++;
    
                    // Hedef karıştırma sayısına ulaşıldığında döngüyü durdur
                    if (currentShuffle >= shuffleCount) {
                        clearInterval(shuffleInterval);
                        finishShuffling();
                    }
                }, 450); // CSS animasyon süresiyle (0.4s) uyumlu olması için 450ms bekliyoruz
            }
    
            function finishShuffling() {
                canPlay = true;
                document.getElementById('message').textContent = "Hangi kart kara? Seçimini yap!";
                document.getElementById('message').style.color = "#ecf0f1";
            }
    
            function selectCard(selectedIndex) {
                if (!canPlay) return; // Sıra oyuncuda değilse (karışıyorsa vs.) tıklamayı engelle
                
                canPlay = false;
                const messageEl = document.getElementById('message');
                const btn = document.getElementById('startBtn');
    
                // Tıklanan kartı çevir
                document.getElementById(`card-${selectedIndex}`).classList.add('flipped');
    
                // Doğru kart mı diye kontrol et
                if (selectedIndex === winningCardIndex) {
                    messageEl.textContent = "Tebrikler! Gözünden hiçbir şey kaçmıyor. 💰";
                    messageEl.style.color = "#2ecc71";
                } else {
                    messageEl.textContent = "Eyvah, kaçırdın! Kara başka yerdeydi. 💸";
                    messageEl.style.color = "#e74c3c";
                }
    
                // Sonucu gördükten 1.5 saniye sonra diğer kartları da aç ve butonu aktif et
                setTimeout(() => {
                    for(let i=0; i<3; i++) {
                        document.getElementById(`card-${i}`).classList.add('flipped');
                    }
                    btn.textContent = "Tekrar Oyna";
                    btn.disabled = false;
                }, 1500);
            }
        </script>
    </body>
    </html>















    Selamlar yapay zeka ile yapılan Bul Karayı Al Parayı oyunu geliştirmek size kalmış iyi forumlar


    https://www.youtube.com/watch?v=C126xBJeQXA&t
  • 23-04-2026, 14:59:09
    #2
  • 23-04-2026, 15:07:50
    #3
    Üyeliği durduruldu
    Karo olacakti.
    Eline saglik..
  • 23-04-2026, 15:08:44
    #4
    Oyun bile olsa kumarla bağ kurmamaya çalışıyorum....
  • 23-04-2026, 15:08:57
    #5
    tiscali adlı üyeden alıntı: mesajı görüntüle
    Karo olacakti.
    Eline saglik..
    teşekkürler iyi forumlar
  • 23-04-2026, 15:10:30
    #6
    ua87 adlı üyeden alıntı: mesajı görüntüle
    Oyun bile olsa kumarla bağ kurmamaya çalışıyorum....
    benim Allaha şükür hiçbiriyle işim yok okey felan oynarım anca eğlencesine
  • 23-04-2026, 15:12:57
    #7
    obisa adlı üyeden alıntı: mesajı görüntüle
    benim Allaha şükür hiçbiriyle işim yok okey felan oynarım anca eğlencesine
    Yok hocam ben o tarz eğlenceli şeyleride bıraktım.Bahis işlerine girseydim menerimin şaibeli maçlarından parayı bulurdum
  • 23-04-2026, 15:15:07
    #8
    Üyeliği durduruldu
    obisa adlı üyeden alıntı: mesajı görüntüle
    benim Allaha şükür hiçbiriyle işim yok okey felan oynarım anca eğlencesine
    Bazilari buranin 21 sene önce esas kurulus amacinin Webmaster ve Paylasim forumu olarak kuruldugunu bilmiyor sanirim. Html'in, php'nin, java'nin, asp'nin vs. ne oldugundan bi haberler..