Я сделал скрипт, который отображает случайное изображение из списка каждые X секунд, но иногда оно показывает одно и то же изображение в течение часов игрового процесса.Мне было интересно, как бы я сделал так, чтобы он не показывал изображение, которое уже было показано во время текущей игровой сессии.Вот мой код:
void Start () {
// start count
StartCoroutine(RandomReportEvent());
}
xx
IEnumerator RandomReportEvent(){
float wait_time = Random.Range (53.5F, 361.2f); // removed 1879.2f
// test purposes
// float wait_time = Random.Range (1.7F, 3.2f);
yield return new WaitForSeconds(wait_time);
memeWindow.SetActive (true);
// get random reports number within range
float ReportValue = Random.Range (1.2F, 57.8F);
// round to 2 dp
ReportValue = Mathf.Round(ReportValue * 100f) / 100f;
// show random report value in Text
randomReportValue.text = string.Format ("<color=#FF8400FF>{0}K</color>", ReportValue);
// Show Random Image from list
showRandomImage();
}
xx
void showRandomImage(){
// count the amount of images
int count = memeImg.Count;
// randomly select any image from 0 to count number
int index = Random.Range(0, count);
// assing an image from our list
sr.sprite = memeImg[index];
}
Любая помощь будет оценена!