Çözüldü Unity 2D Visual Studio kod hatası

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Ymn_75

Picopat
Katılım
1 Şubat 2024
Mesajlar
50
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Oyunun kodunu girdim ama şu hatayı alıyorum Assets/kod.cs(53,6) error CS1513:} expected hatası alıyorum.

Kodum:

Using System. Collections;
Using System. Collections. Generic;
Using unityengine;

Public class kod: Monobehaviour.
{
İnt minsayi = 1;
İnt maxsayi = 100;
İnt tahmin;

// Start is called before the first frame Update.
Void Start()
{
Print("başlatayım mı? (E/H)");
}

// Update is called once per frame.
Void Update()
{
İf (ınput. Getkeydown(keycode. E))
{
Print("1-100 arası bir sayı tut");
}
Else if (Input.GetKeyDown(KeyCode.H)) {
Print("neden hayır dedin!");
}
İf (ınput. Getkeydown(keycode. Return))
{
Kontrol();
}

İf (ınput. Getkeydown(keycode. Uparrow))
{
Minsayi = tahmin;
Tahmin = (minsayi + maxsayi) / 2;
kontrol();
}

İf (ınput. Getkeydown(keycode. Downarrow))
{
Maxsayi = tahmin;
kontrol();
}
Else if (ınput. Getkeydown(keycode. Space)) {
Print("buldum");
}

Void Kontrol() {
Tahmin = (maxsayi + maxsayi) / 2;
Print("tuttuğun sayı" + tahmin + "bu mu? Daha büyük ise yukarı ok daha küçük ise aşağı ok doğruysa boşluğa bas");
}
}
 

Dosya Ekleri

  • Adsız.png
    Adsız.png
    69 KB · Görüntüleme: 33
Çözüm
Kodu en az 5 defa yeniden yazdım ve bu resimdeki gibi de yazdım kurstaki buydu ve çalışıyordu 2020 kullandığından 2020 Unity indirip kullandım ama yine de çalışmadı.

Şimi (42, 13) CS1002 hatasını alıyorum.

Fotoğraf kurstaki kod:

C# dilinde, büyük ve küçük harfler fark yaratır. Sizin kodunuzda olmaması gereken harfler büyük, olmaması gereken harfler küçük. Bu yüzden kodunuz çalışmadı. Birdahakine dikkat edin.

Gözüme gelen bütün hataları düzelttim, ama bu kod ile o attığınız fotoğraftaki kodun alakası yok.


C#:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Kod : MonoBehaviour {
    int minsayi = 1;
    int maxsayi = 100;
    int tahmin;

    // Start is called before the first frame Update.
    void Start() {
        print("başlatayım mı? (E/H)");
    }

    // Update is called once per frame.
    void Update() {
        if (Input.GetKeyDown(KeyCode.E)) {
            print("1-100 arası bir sayı tut");
        }
        else if (Input.GetKeyDown(KeyCode.H)) {
            print("neden hayır dedin!");
        }
        if (Input.GetKeyDown(KeyCode.Return)) {
            Kontrol();
        }

        if (Input.GetKeyDown(KeyCode.UpArrow)) {
            minsayi = tahmin;
            tahmin = (minsayi + maxsayi) / 2;
            Kontrol();
        }

        if (Input.GetKeyDown(KeyCode.DownArrow)) {
            maxsayi = tahmin;
            Kontrol();
        }
        else if (Input.GetKeyDown(KeyCode.Space)) {
            print("buldum");
        }
    }

    void Kontrol() {
        tahmin = (minsayi + maxsayi) / 2;
        print("tuttuğun sayı " + tahmin + " bu mu? Daha büyük ise yukarı ok, daha küçük ise aşağı ok, doğruysa boşluğa bas");
    }
}
Bunu deneyin çözülecektir.

C#:
Using System.Collections;
Using System.Collections.Generic;
Using unityengine;

Public class kod: MonoBehaviour {
    İnt minsayi = 1;
    İnt maxsayi = 100;
    İnt tahmin;

    // Start is called before the first frame Update.
    Void Start() {
      Print("başlatayım mı? (E/H)");
    }

    // Update is called once per frame.
    Void Update() {
      İf(ınput.Getkeydown(keycode.E)) {
        Print("1-100 arası bir sayı tut");
      }
      Else
      if (Input.GetKeyDown(KeyCode.H)) {
        Print("neden hayır dedin!");
      }
      İf(ınput.Getkeydown(keycode.Return)) {
        Kontrol();
      }

      İf(ınput.Getkeydown(keycode.Uparrow)) {
        Minsayi = tahmin;
        Tahmin = (minsayi + maxsayi) / 2;
        Kontrol();
      }

      İf(ınput.Getkeydown(keycode.Downarrow)) {
        Maxsayi = tahmin;
        Kontrol();
      }
      Else
      if (ınput.Getkeydown(keycode.Space)) {
        Print("buldum");
      }

      Void Kontrol() {
        Tahmin = (maxsayi + maxsayi) / 2;
        Print("tuttuğun sayı" + tahmin + "bu mu? Daha büyük ise yukarı ok daha küçük ise aşağı ok doğruysa boşluğa bas");
      }
    }
 
İzlediğim videodada kod böyleydi

Tahminimce kontrol fonksiyonunu çağırırken 'k' harfinin küçük olmasından kaynaklı.

Bunu deneyin çözülecektir.

C#:
Using System.Collections;
Using System.Collections.Generic;
Using unityengine;

Public class kod: MonoBehaviour {
    İnt minsayi = 1;
    İnt maxsayi = 100;
    İnt tahmin;

    // Start is called before the first frame Update.
    Void Start() {
      Print("başlatayım mı? (E/H)");
    }

    // Update is called once per frame.
    Void Update() {
      İf(ınput.Getkeydown(keycode.E)) {
        Print("1-100 arası bir sayı tut");
      }
      Else
      if (Input.GetKeyDown(KeyCode.H)) {
        Print("neden hayır dedin!");
      }
      İf(ınput.Getkeydown(keycode.Return)) {
        Kontrol();
      }

      İf(ınput.Getkeydown(keycode.Uparrow)) {
        Minsayi = tahmin;
        Tahmin = (minsayi + maxsayi) / 2;
        Kontrol();
      }

      İf(ınput.Getkeydown(keycode.Downarrow)) {
        Maxsayi = tahmin;
        Kontrol();
      }
      Else
      if (ınput.Getkeydown(keycode.Space)) {
        Print("buldum");
      }

      Void Kontrol() {
        Tahmin = (maxsayi + maxsayi) / 2;
        Print("tuttuğun sayı" + tahmin + "bu mu? Daha büyük ise yukarı ok daha küçük ise aşağı ok doğruysa boşluğa bas");
      }
    }
yine aynı hata geliyor
 
İzlediğim videodada kod böyleydi




yine aynı hata geliyor
En sondaki '}' işaretini unutmuşsunuz, şimdi farkettim.

C#:
Using System.Collections;
Using System.Collections.Generic;
Using unityengine;

Public class kod: Monobehaviour {
    İnt minsayi = 1;
    İnt maxsayi = 100;
    İnt tahmin;

    // Start is called before the first frame Update.
    Void Start() {
      Print("başlatayım mı? (E/H)");
    }

    // Update is called once per frame.
    Void Update() {
      İf(ınput.Getkeydown(keycode.E)) {
        Print("1-100 arası bir sayı tut");
      }
      Else
      if (Input.GetKeyDown(KeyCode.H)) {
        Print("neden hayır dedin!");
      }
      İf(ınput.Getkeydown(keycode.Return)) {
        Kontrol();
      }

      İf(ınput.Getkeydown(keycode.Uparrow)) {
        Minsayi = tahmin;
        Tahmin = (minsayi + maxsayi) / 2;
        kontrol();
      }

      İf(ınput.Getkeydown(keycode.Downarrow)) {
        Maxsayi = tahmin;
        kontrol();
      }
      Else
      if (ınput.Getkeydown(keycode.Space)) {
        Print("buldum");
      }

      Void Kontrol() {
        Tahmin = (maxsayi + maxsayi) / 2;
        Print("tuttuğun sayı" + tahmin + "bu mu? Daha büyük ise yukarı ok daha küçük ise aşağı ok doğruysa boşluğa bas");
      }
    }
}

Büyük ihtimalle bu çalışacaktır.
 
Kodu en az 5 defa yeniden yazdım ve bu resimdeki gibi de yazdım kurstaki buydu ve çalışıyordu 2020 kullandığından 2020 Unity indirip kullandım ama yine de çalışmadı

şimi (42,13) CS1002 hatasını alıyorum

fotoraf kurstaki kod:
 

Dosya Ekleri

  • 1706743168530.png
    1706743168530.png
    308 KB · Görüntüleme: 17
Son düzenleme:
Unity'de Preferences'a girip External Tools'ta en üstteki External Script Editor'ü Visual Studio seçmeyi dener misin? Veya yüklemediysen Visual Studio Installer'dan Visual Studio Tools for Unity paketini indir. Bu şekilde kod yazman çok zor olur.
 
Using System.Collections;
Using System.Collections.Generic;
Using unityengine;

Public class kod : Monobehaviour
{
İnt minsayi = 1;
İnt maxsayi = 100;
İnt tahmin;

// Start is called before the first frame Update.
Void Start()
{
Print("başlatayım mı? (E/H)");
}

// Update is called once per frame.
Void Update()
{
İf(Input.Getkeydown(KeyCode.E)) {
Print("1-100 arası bir sayı tut");
}

if Else (Input.GetKeyDown(KeyCode.H) {
Print("neden hayır dedin!");
}
İf (Input.GetKeyDown(KeyCode.Return)) {
Kontrol();
}

İf (Input.GetKeyDown(KeyCode.UpArrow))
Minsayi = tahmin;
Tahmin = (minsayi + maxsayi) / 2;
kontrol();
}

İf(Input.Getkeydown(KeyCode.DownArrow))
Maxsayi = tahmin;
kontrol();
}

if Else (Input.GetKeyDown.KeyCode.Space)) {
{
Print("buldum");
}

Void Kontrol()
{
Tahmin = (maxsayi + maxsayi) / 2;
Print("tuttuğun sayı" + tahmin + "bu mu? Daha büyük ise yukarı ok daha küçük ise aşağı ok doğruysa boşluğa bas");
}
}
}

büyük küçük harfe göre değiştirdim ama en alttaki yay ayraçta hata var diyor onu düzeltince 42. satırda sıkıntı var diyor visual stuido enterprise 2022 kullanıyorum
sanırım enter prise

Unity'de Preferences'a girip External Tools'ta en üstteki External Script Editor'ü Visual Studio seçmeyi dener misin? Veya yüklemediysen Visual Studio Installer'dan Unity Tools'u indir. Bu şekilde kod yazman çok zor olur.
deniyorum
 
Unity'de Preferences'a girip External Tools'ta en üstteki External Script Editor'ü Visual Studio seçmeyi dener misin? Veya yüklemediysen Visual Studio Installer'dan Visual Studio Tools for Unity paketini indir. Bu şekilde kod yazman çok zor olur.
1706744305764.png

tikler böyle mi kalsın diğerlerinide açıyım mı ?
 

Geri
Yukarı