Unity 3D TR Forum

Orjinalini görmek için tıklayınız: Butona Tuş Atama
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhaba arkadaşlar.
Butona basıldığında klavyeden herhangi bir tuşada basılıyormuş gibi olmasını istiyorum. Örneğin ben mobile bir uygulama yapmak istiyorum ve ekran üzerindeki butonlara basıldığında ok tuşlarına basılıyormuş gibi olmasını istiyorum. Bunu nasıl yapacabileceğimi bulamadım.
Hareket  için yazdığın bir script var örneğin. Ve bu scriptin içinde public void zıpla() diye bir metodun var. Scripti boş bir game objectin içine at. Oluşturduğun buttona tıkladığında hiyerarşi panelinde On Click() diye bir yer vardır orada bu gameobjectini seç. No function yazan yere gel. Oradan bu gameobjectin içindeki scripti seçebiliyorsun. Ve o scriptin içinde public bir metod tanımladıysan ona da ulaşabiliyorsun. Oradan zıpla() metodunu seçerek, butona tıklandığında zıpla metodunu çalıştırabilirsin. Aynı scriptin içinde sağa git, sola git, eğil gibi public metodlar oluşturup farklı butonlardan bu metodlara yukarda anlattığım şekilde ulaşabilirsin.
(17-04-2019, Saat: 02:47)Unitycode Nickli Kullanıcıdan Alıntı: Linkleri görüntüleyebilmek için Kayıt ol manız veya Giriş yapmanız gerekiyor.Anlayışınız için teşekkürler.!Hareket  için yazdığın bir script var örneğin. Ve bu scriptin içinde public void zıpla() diye bir metodun var. Scripti boş bir game objectin içine at. Oluşturduğun buttona tıkladığında hiyerarşi panelinde On Click() diye bir yer vardır orada bu gameobjectini seç. No function yazan yere gel. Oradan bu gameobjectin içindeki scripti seçebiliyorsun. Ve o scriptin içinde public bir metod tanımladıysan ona da ulaşabiliyorsun. Oradan zıpla() metodunu seçerek, butona tıklandığında zıpla metodunu çalıştırabilirsin. Aynı scriptin içinde sağa git, sola git, eğil gibi public metodlar oluşturup farklı butonlardan bu metodlara yukarda anlattığım şekilde ulaşabilirsin.

Kod:
public class Movement : MonoBehaviour
{
   //variables
   public float moveSpeed = 300;
   public GameObject character;

   private Rigidbody2D characterBody;


   void Start()
   {
       characterBody = character.GetComponent<Rigidbody2D>();
   }

   void Update()
   {

   }


   void FixedUpdate()
   {
       #if UNITY_EDITOR
       RunCharacter(Input.GetAxis("Horizontal"));
       #endif
   }

   private void RunCharacter(float horizontalInput)
   {
       //move player
       characterBody.AddForce(new Vector2(horizontalInput * moveSpeed * Time.deltaTime, 0));

   }
}
Benim kodlarda zıpla() gibi metod yok. Benim şuan yazdığım oyunu nasıl mobile entegre edebileceğimi bulamadım.
Bu arada bu doku Main Camera'nın içine attım.
Unity store'da standart assets var onun içinde CrossPlatformİnputManager var. Bu gibi işler için o kullanılıyor. Onla nasıl yapılır araştırabilirsin ben de pek bilmiyorum