move metodu: Bu metod sınıfımızın hareket etmesini sağlar. move() şeklinde kullanılır ve tek parametrelidir. O tek parametre ise hızı belirler.
turn metodu: Sınıfımızı 0 ile 360 derece(saat yönünde) döndürmemize yarar. turn() şeklinde kullanılır ve move metodu gibi tek parametrelidir. Aldığı parametre ise kaç derece döneceğini belirler.
import greenfoot.*;
public class Hareket extends Actor
{
public void act()
{
move(2);
String key = Greenfoot.getKey();
if("left".equals(key))
{
turn(-90);
}
else if("right".equals(key))
{
turn(90);
}
}
}
Burada move metodu ile hareket edip turn metodu ile dönerek hareket ediyoruz. İstersek setLocation, getX ve getY metodlarını kullanarak aynı işlemi biraz daha farklı bir şekilde yapabilirdik. Şu şekilde:import greenfoot.*;
public class Hareket extends Actor
{
public void act()
{
if(Greenfoot.isKeyDown("up"))
{
setLocation(getX(),getY()-3);
}
else if(Greenfoot.isKeyDown("down"))
{
setLocation(getX(),getY()+3);
}
else if(Greenfoot.isKeyDown("left"))
{
setLocation(getX()-3,getY());
}
else if(Greenfoot.isKeyDown("right"))
{
setLocation(getX()+3,getY());
}
}
}
Burada setLocation metodu iki parametre alır. Bunlardan birisi x diğeri ise y'dir ve yeni bir değer vermemizi sağlar. Biz burada getX ve getY metodu ile var olan x ve y değerine değer ekleyerek yeni koordinatlarımızı belirlemiş olduk. Ayrıca Greenfoot'da koordinat sistemi biraz daha farklıdır. Orijin ekranın sol üst köşesindedir. Orijinden Sağ tarafa gidildikçe x değeri artar, aşağıya doğru gidildikçe y değeri artar.
Hiç yorum yok:
Yorum Gönder