Kodu tahmin mi etmem gerekiyor? Kodu da paylaşır mısın?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
using UnityEngine.UI;
using System.Threading;
public class Test : MonoBehaviour
{
[Header("Sorular")]
[SerializeField] TextMeshProUGUI sorumetni;
[SerializeField] Soru soru;
[Header("Cevaplar")]
[SerializeField] GameObject[] cevapdugmeleri;
int dogrucevapindeksi;
[Header("Buton Renkleri")]
[SerializeField] Sprite varsayilanCevapSprite;
[SerializeField] Sprite dogruCevapSprite;
[Header("Zamanlayıcı")]
[SerializeField] Image zamanlayiciresmi;
Timer timer;
public void Start()
{
timer = FindObjectOfType<Timer>();
sonrakisoruyugetir();
//EkranSorusu();
}
public void Update()
{
zamanlayiciresmi.fillAmount = timer.
}
public void cevapseciliyken(int index)
{
Image butonresmi;
if(index == soru.GetDogrucevapindeksi())
{
sorumetni.text = "Doğru!";
butonresmi = cevapdugmeleri[index].GetComponent<Image>();
butonresmi.sprite = dogruCevapSprite;
}else
{
dogrucevapindeksi = soru.GetDogrucevapindeksi();
string dogrucevap = soru.GetCevap(dogrucevapindeksi);
sorumetni.text =" Üzgünüm, dogru cevap;\n " + dogrucevap;
butonresmi = cevapdugmeleri[dogrucevapindeksi].GetComponent<Image>();
butonresmi.sprite = dogruCevapSprite;
}
dugmedurumunuayarla(false);
}
void sonrakisoruyugetir()
{
dugmedurumunuayarla(true);
varsayilanbutonSprites();
EkranSorusu();
}
void EkranSorusu()
{
sorumetni.text = soru.GetQuestion();
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
TextMeshProUGUI testbutonu = cevapdugmeleri
.GetComponentInChildren<TextMeshProUGUI>();
testbutonu.text = soru.GetCevap(i);
}
}
void dugmedurumunuayarla(bool state)
{
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
Button buton = cevapdugmeleri.GetComponent<Button>();
buton.interactable = state;
}
}
void varsayilanbutonSprites()
{
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
Image butonresmi = cevapdugmeleri.GetComponent<Image>();
butonresmi.sprite = varsayilanCevapSprite;
}
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
using UnityEngine.UI;
using System.Threading;
public class Test : MonoBehaviour
{
[Header("Sorular")]
[SerializeField] TextMeshProUGUI sorumetni;
[SerializeField] Soru soru;
[Header("Cevaplar")]
[SerializeField] GameObject[] cevapdugmeleri;
int dogrucevapindeksi;
[Header("Buton Renkleri")]
[SerializeField] Sprite varsayilanCevapSprite;
[SerializeField] Sprite dogruCevapSprite;
[Header("Zamanlayıcı")]
[SerializeField] Image zamanlayiciresmi;
Timer timer;
public void Start()
{
timer = FindObjectOfType<Timer>();
sonrakisoruyugetir();
//EkranSorusu();
}
public void Update()
{
zamanlayiciresmi.fillAmount = timer.
}
public void cevapseciliyken(int index)
{
Image butonresmi;
if(index == soru.GetDogrucevapindeksi())
{
sorumetni.text = "Doğru!";
butonresmi = cevapdugmeleri[index].GetComponent<Image>();
butonresmi.sprite = dogruCevapSprite;
}else
{
dogrucevapindeksi = soru.GetDogrucevapindeksi();
string dogrucevap = soru.GetCevap(dogrucevapindeksi);
sorumetni.text =" Üzgünüm, dogru cevap;\n " + dogrucevap;
butonresmi = cevapdugmeleri[dogrucevapindeksi].GetComponent<Image>();
butonresmi.sprite = dogruCevapSprite;
}
dugmedurumunuayarla(false);
}
void sonrakisoruyugetir()
{
dugmedurumunuayarla(true);
varsayilanbutonSprites();
EkranSorusu();
}
void EkranSorusu()
{
sorumetni.text = soru.GetQuestion();
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
TextMeshProUGUI testbutonu = cevapdugmeleri.GetComponentInChildren<TextMeshProUGUI>();
testbutonu.text = soru.GetCevap(i);
}
}
void dugmedurumunuayarla(bool state)
{
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
Button buton = cevapdugmeleri.GetComponent<Button>();
buton.interactable = state;
}
}
void varsayilanbutonSprites()
{
for(int i = 0;i < cevapdugmeleri.Length; i++)
{
Image butonresmi = cevapdugmeleri.GetComponent<Image>();
butonresmi.sprite = varsayilanCevapSprite;
}
}
}
sorun bu kısımda :
Timer timer;
public void Start()
{
timer = FindObjectOfType<Timer>();
sonrakisoruyugetir();
//EkranSorusu();
}
public void Update()
{
zamanlayiciresmi.fillAmount = timer.kesriDoldur;
}