Jump to content
×
×
  • Create New...

Lorem Ipsum is simply dummy text

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s

Test Test

Lorem Ipsum is simply dummy text

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s

Test Test

Lorem Ipsum is simply dummy text

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s

Test Test

Lorem Ipsum is simply dummy text

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s

Test Test

Lorem Ipsum is simply dummy text

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s

Test Test

  • Bu Alana Reklam Verebilirsiniz
    Bu Alana Reklam Verebilirsiniz

Buton Yakalama Oyunu Javascript | Tüm Kaynak Kodları

Rate this topic


programYaz
 Share


Recommended Posts

Buton Yakalama Oyunu Javascript | Tüm Kaynak Kodları
 Share


  • Members

oyun_ekranciktisi.webp

JavaScriptte koordinat kullanarak buton yakalama oyunu oluşturacağız. Fare ile üzerine gelindiğinde yerini değiştirmesini sağlayan ve yakalandığında ekrana uyarı verecek şekilde iki ayrı fonksiyon oluşturacağız. Daha sonrasında sayaç koyup kaç seferde yakalandığını hesaplayacağız.

 

<button id="nesne"></button>

HTML: Öncelikle yakalamaya çalışacağımız butonu oluşturuyoruz ve id veriyoruz.

 

var nesne=document.getElementById("nesne");

 

JavaScript: Oluşturduğumuz butonun “id” si ile butonu bir nesne haline getirip değişken içerisine atıyoruz.

 

nesne.onmouseover=function(e)
{
  var xpos=parseInt(Math.random()*1000);
  var ypos=parseInt(Math.random()*800);

  nesne.style.left=xpos +"px";
  nesne.style.top =ypos+"px";
  nesne.style.width=this.clientWidth+10+"px";
  nesne.style.height=this.clientHeight+10+"px";
}

 

 

Nesneye “.onmouseover” (yani fare üzerine geldiğinde) olayını atıyoruz ve fonksiyon oluşturuyoruz. Fonksiyon içerisinde “xpos” ve “ypos” olarak iki ayrı değişken tanımladık.  “xpos” x eksenini, “ypos” ise y eksenini karşılıyor. Kutuyu yakalarken bir yerlerde rastgele belireceği için “Math.random” kullanıyoruz ve ekran genişliğine/yüksekliğine göre aralık belirliyoruz. Burada genişliği 0-1000, yüksekliği 0-800 olarak ayarladık. “parseInt” ile de ondalık kısımlar kurtulduk.

Daha sonra nesneye x ve y eksenlerini atıyoruz. Soldan ve yukarıdan ayarladık ama sağdan ve aşağıdan da ayarlanabilir. Lakin sağdan ve soldan ayarlarsak bu sefer garip bir görüntüyle karşılaşırız.

Bu fonksiyonun içerisindeki son işlemler ise buton yakalanamadığında genişlik ve yükseklik değerlerinin her seferinde 10px artması. Bunları “this” ile yapıyoruz. “this” aktif olan nesneye müdahale etmek için kullanılıyor. “clientWidth” ve “clientHeight” ifadeleri ise neye müdahale ettiğimizi gösteriyor.

 

nesne.onclick=function()
{
  window.alert(sayac+" Seferde Yakalandı");
  nesne.style.width="100px";
  nesne.style.height="100px";
}

 

 

İkinci fonksiyonda ise buton yakalandığında işlenecek kodları yazıyoruz. Ekrana “window.alert” ile uyarı verdiriyoruz ve genişlik/yükseklik değerlerinin eski haline gelmesini sağlıyoruz.

 

#nesne
{
  width: 100px;
  height: 100px;
  position:absolute;
  background:#36A4FF;
}

 

CSS: Nesnenin sayfa üzerinde bağımsız hareket edebilmesi için “position:absolute” olması zorunludur. Yoksa buton hareket edemez. Yükseklik/genişlik değerlerini ayarlıyoruz ve arka plan rengi ekliyoruz.

 

Son olarak kaç seferde yakaladığımızı hesaplamak için ilk fonksiyondan önce bir sayaç tanımlıyoruz. İçinde tanımlamamızın nedeni kutu her kaçırdığımızda sayaç tekrar tanımlanacak ve her seferinde değer sıfır olacak.

 

 

Kodları toparlayacak ve sayacı ekleyecek olursak son hali şöyle olacaktır;

 

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Buton Yakalama Oyunu</title>
<style>
#nesne{
width: 100px;
height: 100px;
position:absolute;
background:#36A4FF;
}
</style>
</head>

<body>

<button id="nesne"></button>

<script>
var sayac=0;
var nesne=document.getElementById("nesne");

nesne.onmouseover=function(e)
{
sayac++;
var xpos=parseInt(Math.random()*1000);
var ypos=parseInt(Math.random()*800);

nesne.style.left=xpos +"px";
nesne.style.top =ypos+"px";
nesne.style.width=this.clientWidth+10+"px";
nesne.style.height=this.clientHeight+10+"px";
}
nesne.onclick=function()
{
window.alert(sayac+" Seferde Yakalandı");
nesne.style.width="100px";
nesne.style.height="100px";
sayac=0;
}
</script>
</body>
</html>

 

Edited by programYaz

Ada LoveLace

Link to comment
Share on other sites


Konu Altı Reklam 1
Konu Altı Reklam 2
  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Posted Images

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


×
×
  • Create New...