Unity kod çalışmıyor

Meteakyz

Decapat
Katılım
11 Haziran 2021
Mesajlar
381
Çözümler
3
Daha fazla  
Cinsiyet
Erkek
Unity de bir zıplama kodu yazdım ama bir türlü çalıştıramadım sağa sola gitme kodu çalıştı bunu çalıştıramıyorum.
1670595004142.png

1670595091989.png
 
Kodu kaydetmemişsin sanırım. Editörde değişkenlerin de gelmemiş. Kaydeder misin?

Kodu kaydedince çalıştı ama getkey de çalışıyor getkeydown da çalışmıyor.
Kod:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerJump : MonoBehaviour
{
    private Rigidbody2D rigid;

    public float JumpForce = 15f;

    public bool isJump = false;

    private void Start()
    {
        rigid = GetComponent<Rigidbody2D>();
    }

    private void FixedUpdate()
    {
        if (Input.GetKey(KeyCode.Space))
        {
            rigid.AddForce(Vector2.up * JumpForce);
        }
    }


}
 
Kodu kaydedince çalıştı ama getkey de çalışıyor getkeydown da çalışmıyor.
Kod:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerJump : MonoBehaviour.
{
 private Rigidbody2D rigid;

 public float JumpForce = 15f;

 public bool isJump = false;

 private void Start()
 {
 rigid = GetComponent<Rigidbody2D>();
 }

 private void FixedUpdate()
 {
 if (Input.GetKey(KeyCode.Space))
 {
 rigid.AddForce(Vector2.up * JumpForce);
 }
 }

}

Kod:
if (Input.GetKeyDown("space"))
 {
 // zıplama kodu
 }

Bu şekilde yaparsan çalışabilir. GetKeyDown ile yapmak istiyorsan inputları string adlarıyla çağırmalısın.
 
Kod:
if (Input.GetKeyDown("space"))
 {
 // zıplama kodu
 }

Bu şekilde yaparsan çalışabilir. GetKeyDown ile yapmak istiyorsan inputları string adlarıyla çağırmalısın.
Yardımın için teşekkürler kodu düzelttim şuan çalışıyor.
Kod:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerJump : MonoBehaviour
{
    private Rigidbody2D rigid;

    public float JumpForce = 15f;

    public bool isJump = false;

    private void Start()
    {
        rigid = GetComponent<Rigidbody2D>();
    }

    private void FixedUpdate()
    {
        if (Input.GetKey(KeyCode.Space))
        {
            if(isJump == false)
            {
                rigid.AddForce(Vector2.up * JumpForce);
                isJump = true;
            }
            
        }
    }

    private void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.CompareTag("Ground"))
        {
            isJump = false;
        }
    }

}
 

Geri
Yukarı