Web Tabanlı Basit Oyun Yapımı (Ders 3)

Bu dersimizde kayıt olan kullanıcımızla giriş yapalım ve ilk yaratığımızı oluşturalım.

Bu dersimizde kayıt olan kullanıcımızla giriş yapalım ve ilk yaratığımızı oluşturalım.

Bir önceki dersimizde kayıt olma sayfamızı yapmıştık. Şimdi kayıt olan kullanıcılarımızın giriş yapmasını sağlayalım basit bir şekilde giriş oluşturalım geliştirmek size kalmış..

Önceki dersimizde case "kayit"; yapmıştık, şimdi ise default, yani hiç bir şey seçilmez ise, kullanıcı giriş paneli önümüze gelsin.

Kodlarımız şu şekilde:


if($_POST){

            

            

            

            $kadi = $_POST['kadi'];

            $sifre = md5($_POST['sifre']);

                $sql = mysql_query("Select * from karekter where kadi='$kadi' and sifre='$sifre'");

            $say = mysql_num_rows($sql);

            $row = mysql_fetch_array($sql);

            

                if($say > 0){

                    echo'<div id="panel">Karekter Yükleniyor...</div>

            <div id="panel">Uyeler Yükleniyor...</div>

            <div id="panel">Hayvanlar Yükleniyor...</div>

            <div id="panel">Silahlar Yükleniyor...</div>

            <div id="baslik">Oyun Başlatılıyor...</div>';

                    $_SESSION['karakter'] = true;

                    $_SESSION['kadi'] = $kadi;

                    $_SESSION['id'] = $row['id'];

                    header("refresh:2; url=index.php?islem=giris");

                

                }else{

                        echo'<div id="panel">Kullanıcı Adı Veya Şifre Hatalı</div>';

                }

            

        

        }else {

                    

                if(isset($_SESSION['karakter'])){

                        sleep(1);

                        

                            echo'<center>Hoşgediniz '.$kadi.' <a href="index.php?islem=cikis">ÇIKIŞ YAP</a><br>Profil';

                            $id = $_SESSION['id'];

                            

                                    $sor = mysql_query("Select * from karekter where id ='$id'");

                                    while($row = mysql_fetch_array($sor)){

                                        $exp = $row['exp'];

                                        echo'<table><tr><td>Kullanıcı Adı</td><td>'.$row['kadi'].'<td></tr>

                                        <tr>

                                        <td>Cinsi :</td><td>'; if($row['cinsi']== '1'){

                                                echo 'Haci' ;

                                        }elseif($row['cinsi']== '2'){

                                            echo'Baci';

                                        } echo'</td>

                                        </tr>

                                        ';

                                        

                                                            echo'<tr><td>Maksimum Can : </td><td>'.$row['can'].'</td></tr>';

                

                                                            echo'<tr><td>Saldırı Gücü : </td><td>'.$row['saldiri'].'</td></tr>';

                                                            

                                                            echo'

                                                            <tr><td>Savunma Gücü : </td><td>'.$row['savunma'].'</td></tr>

                                                            <tr><td>Seviye: </td><td>'.$row['seviye'].'</td></tr>';

                                                            echo'

                                                            <tr><td>EXP : </td><td>';

                                                            if($exp == '100'){

                                echo"<script>alert('Tebrikler Bir Sonraki Seviyeye Ulastiniz!');</script>";

                                echo"<script>alert('+2 Savunma +3 Saldiri Puani Kazandiniz!');</script>";

                                $seviyeyeni = mysql_query("Update karekter set seviye='Çakma Böcekci' where id='$id'");

                                $verilensaldiri = $row['saldiri'] + 3;

                                $verilensavunma = $row['savunma'] + 2;

                                $saldiriartir = mysql_query("Update karekter set saldiri='$verilensaldiri' where id='$id'");

                                $savunmaartir = mysql_query("Update karekter set savunma='$verilensavunma' where id='$id'");

                                $expartir = mysql_query("Update karekter set exp=exp+'2' where id='$id'");

                                echo $row['exp'];

                            }elseif($exp == '300'){

                                echo"<script>alert('Tebrikler Bir Sonraki Seviyeye Ulastiniz!');</script>";

                                echo"<script>alert('+3 Savunma +5 Saldiri Puani Kazandiniz!');</script>";

                                $seviyeyeni = mysql_query("Update karekter set seviye='Acemi Böcekci' where id='$id'");

                                $verilensaldiri = $row['saldiri'] + 5;

                                $verilensavunma = $row['savunma'] + 3;

                                $saldiriartir = mysql_query("Update karekter set saldiri='$verilensaldiri' where id='$id'");

                                $savunmaartir = mysql_query("Update karekter set savunma='$verilensavunma' where id='$id'");

                                $expartir = mysql_query("Update karekter set exp=exp+'2' where id='$id'");

                                echo $row['exp'];

                            }elseif($exp == '1000'){

                                echo"<script>alert('Tebrikler Bir Sonraki Seviyeye Ulastiniz!');</script>";

                                echo"<script>alert('+8 Savunma +15 Saldiri Puani Kazandiniz!');</script>";

                                $seviyeyeni = mysql_query("Update karekter set seviye='Böcekci Çırağı' where id='$id'");

                                $verilensaldiri = $row['saldiri'] + 15;

                                $verilensavunma = $row['savunma'] + 8;

                                $saldiriartir = mysql_query("Update karekter set saldiri='$verilensaldiri' where id='$id'");

                                $savunmaartir = mysql_query("Update karekter set savunma='$verilensavunma' where id='$id'");

                                $expartir = mysql_query("Update karekter set exp=exp+'2' where id='$id'");

                                echo $row['exp'];

                            

                            }elseif($exp == '2500'){

                                echo"<script>alert('Tebrikler Bir Sonraki Seviyeye Ulastiniz!');</script>";

                                echo"<script>alert('+10 Savunma +18 Saldiri +20 Can Puani Kazandiniz!');</script>";

                                $seviyeyeni = mysql_query("Update karekter set seviye='Kalfa Böcekci' where id='$id'");

                                $verilensaldiri = $row['saldiri'] + 18;

                                $verilensavunma = $row['savunma'] + 10;

                                $verilencan = $row['can'] + 20;

                                $saldiriartir = mysql_query("Update karekter set saldiri='$verilensaldiri' where id='$id'");

                                $savunmaartir = mysql_query("Update karekter set savunma='$verilensavunma' where id='$id'");

                                $canartir = mysql_query("Update karekter set max_can='$verilencan' where id='$id'");

                                $expartir = mysql_query("Update karekter set exp=exp+'2' where id='$id'");

                                echo $row['exp'];

                            }elseif($exp == '6000'){

                                echo"<script>alert('Tebrikler Bir Sonraki Seviyeye Ulastiniz!');</script>";

                                echo"<script>alert('+12 Savunma +25 Saldiri Puani Kazandiniz!');</script>";

                                $seviyeyeni = mysql_query("Update karekter set seviye='Böcekci' where id='$id'");

                                $verilensaldiri = $row['saldiri'] + 25;

                                $verilensavunma = $row['savunma'] + 12;

                                $saldiriartir = mysql_query("Update karekter set saldiri='$verilensaldiri' where id='$id'");

                                $savunmaartir = mysql_query("Update karekter set savunma='$verilensavunma' where id='$id'");

                                $expartir = mysql_query("Update karekter set exp=exp+'2' where id='$id'");

                                echo $row['exp'];

                            

                            }else{echo $row['exp'];} 

                            '</td></tr>

                                                    

                                        ';

                                    

                                    }

                                        

                                    

                            

                }else{

                    

                    echo'

                    

                    <form action="" method="post">

                    <center><table cellpadding="5px"; cellspacing="5px"><tr><td>Kullanıcı : </td> <td><input type="text" name="kadi"></input></td></tr>

                    <tr><td>Sifre : </td> <td><input type="password" name="sifre"></input></td></tr>

                    <tr><td><input type="submit" value="Oyuna Bağlan" /></input></td></tr></table>

                </form>

                

                Eğer Hala kayıt olmadıysan <a href="index.php?islem=kayit">Kayıt Ol</a></center>';

                }

            

        

        }

        

    break;



Burada iki işlemi birlikte yaptık: Hem kullanıcının giriş işlemini gerçekleştirdik, hem de girdiğinde ona ait profili görüntüledik.

Kullanıcı eğer giriş yaparsa profil sayfasını aynı sayfa içinde görecek.. Burada Sleep(2) komutu sadece sayfaya ayrı bir güzellik vermek için konuldu, yani karekterlerin yüklendiği filan yok; sadece kullanıcı öyle görsün istedik .

Burada kullandığım iki tane CSS var. Tayfun kardeşimizin panel dersindeki id hoşuma gitti ve onu kodladım. Sayfanın tagları arasına şu kodu yapıştırın, görsellik bakımından başka bir işlevi yok:


<style type="text/css">

body {font: 25px Arial; margin: auto}

    a {text-decoration: none}

    a:hover {color : #098030}

    :focus {outline: 0}

    

    #panel {background-color: #4ab4d7; padding: 20px; font-size: 17px;

            font-weight: bold; color: #fff; text-align: center; border-bottom: 1px solid #337689}

    #baslik {background-color: #4ab4d7; padding: 100px; font-size: 45px;

            font-weight: bold; color: #fff; text-align: center; border-bottom: 1px solid #337689}

    #panel a{color:red}

    

</style>



Evet, bundan sonra oyunumuz yavaş yavaş şekil almaya başladı. Videolu ders yüklemek isterdim. Aslında bunları derleyip video yapmak isteyen arkadaş varsa yapabilir.

Yukarda kullanıcının exp'ine göre alacağı seviyeleride belirledik. Benim oyun böceklerle ilgili olduğu için, örneğin exp 100 oldu mu, kullanıcı seviyesi çakma böcekçi olacaktır ve artı savunma ve saldırı verilecektir..

Bir sonraki derste görüşmek üzere....
  • Etiketler;
İnan Yılmaz
Hakkında bilgiler en kısa sürede eklenecektir.
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

şimdi hocam ben kodları denedim çalışıyor exp 100 olunca seviye atlıyor ve seviye tanımlaması yapıyor doğru fakat sorun şu diyelimki şu anki exp 99ve bir böek öldürdük 3 exp kazandık ve bizim yeni exp 102 oldu yani yüzü geçti bu durumda nasıl seviye atlatacaz. sizin kodlarda sadece 100 300 600 vs. gibi tamamen bu sayılara eşit olması durumunda seviye atlıyor. burada nasıl bir kod düzenlemesi yapılabilir.. if (exp == 100) şartı sağlanınca seviye atlıyor. Buna bi çözüm bulalım.. Kolay gelsin

Yukarı Git