Merhaba arkadaşlar,
Bu dersimizde playerimizi butonlarla kontrol etmeyi anlatacağım.
Yeni bir c# script oluşturuyoruz.
Player objemize collider ve rigidbody ekliyoruz.
Kodumuzu player objesine atıyoruz.
Buton oluşturuyoruz.(göstermek amaçlı sadece ileri butonuna uygulanmasını göstereceğim.Geri, sag ve sol butonlarınada aynı şekilde uygulayabilirsiniz.)
butona tıklıyoruz ve
Inspector penceresinden aşağıdan
Add Component ===> Event ===>Event Trigger oluşturuyoruz.
ardından gördüğünüz üzere
event triggerimiz oluştu.
Add New Event Type butonundan
Pointer Down ı seçiyoruz
ardından
Add New Event Type butonundan
Pointer Up ı seçiyoruz.
event lerimizi oluşturduktan sonra artı(+) simgelerine tıklıyoruz.
event triggerimiz bu hali aldıktan sonra kodumuzu atadığımız objeyi sürükleyip none kısmına
bırakıyoruz.
Ardından
pointer down için
no function butonuna tıklayıp
hareket ===> Basma() yolunu izliyoruz.
pointer up için ise
no function butonuna tıklayıp
hareket ===> Basma_iki() yolunu izliyoruz.
Artık butonlarımız çalışır hale geldi.
KOD:
using UnityEngine;
using System.Collections;
public class hareket : MonoBehaviour
{
public bool ileri= false;
public bool geri= false;
public bool sag= false;
public bool sol= false;
public Rigidbody rb;
public int hiz = 10;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void FixedUpdate()
{
if (ileri)
{
rb.AddForce(transform.forward * -hiz);
}
if (geri)
{
rb.AddForce(transform.forward * hiz);
}
if (sag)
{
rb.AddForce(transform.right * -hiz);
}
if (sol)
{
rb.AddForce(transform.right * hiz);
}
}
public void Basma()
{
ileri= true;
}
public void Basma_iki()
{
ileri= false;
}
public void Basmazit()
{
geri= true;
}
public void Basma_ikizit()
{
geri= false;
}
public void Basmasag()
{
sag= true;
}
public void Basma_ikisag()
{
sag= false;
}
public void Basmasagzit()
{
sol= true;
}
public void Basma_ikisagzit()
{
sol= false;
}
}