IEnumerator RandomArea(){
if(targetId == 1){
yield return new WaitForSeconds(0.9f);
}else if(targetId == 2){
yield return new WaitForSeconds(0.91f);
}else if(targetId == 3){
yield return new WaitForSeconds(0.92f);
}else if(targetId == 4){
yield return new WaitForSeconds(0.93f);
}else if(targetId == 5){
yield return new WaitForSeconds(0.94f);
}
zone = Random.Range(1, 5);
if(targetId == 2){
while (zone == rP1.zone){
zone = Random.Range(1,5);
Debug.Log("А");
}
}else if(targetId == 3){
while (zone == rP2.zone || zone == rP1.zone){
zone = Random.Range(1,5);
Debug.Log("А");
}
}else if(targetId == 4){
while(zone == rP3.zone || zone == rP2.zone || zone == rP3.zone){
zone = Random.Range(1,5);
Debug.Log("А");
}
}else if(targetId == 5){
while(zone == rP4.zone || zone == rP3.zone || zone == rP2.zone || zone == rP3.zone){
zone = Random.Range(1,5);
Debug.Log("А");
}
}
yield return new WaitForSeconds(5f);
yield return StartCoroutine(RandomArea());
}
using System;
using UnityEngine;
public class UniqueRandomNumbers : MonoBehaviour
{
private int[] numbers = new int[5];
void Start()
{
GenerateUniqueRandomNumbers();
}
void GenerateUniqueRandomNumbers()
{
for (int i = 0; i < 5; i++)
{
numbers[i] = GenerateUniqueRandomNumber(0, 10, numbers);
}
Debug.Log("Generated unique random numbers: " + String.Join(", ", numbers));
}
int GenerateUniqueRandomNumber(int min, int max, int[] usedNumbers)
{
int randomNumber = UnityEngine.Random.Range(min, max);
while (Array.IndexOf(usedNumbers, randomNumber) != -1)
{
randomNumber = UnityEngine.Random.Range(min, max);
}
return randomNumber;
}
}
int[] randomNumbers = new int[5];
System.Random rnd = new System.Random();
// заполнение массива случайными числами
for (int i = 0; i < randomNumbers.Length; i++) {
randomNumbers[i] = rnd.Next(1, 100);
}
// проверка на повторяющиеся числа и замена их на новые случайные числа
for (int i = 0; i < randomNumbers.Length; i++) {
for (int j = i + 1; j < randomNumbers.Length; j++) {
if (randomNumbers[i] == randomNumbers[j]) {
randomNumbers[j] = rnd.Next(1, 100);
j = i + 1; // начинаем проверку заново, чтобы убедиться, что все числа уникальны
}
}
}
// использование уникальных чисел на 5 разных объектах
for (int i = 0; i < 5; i++) {
int randomNumber = randomNumbers[i];
// использование числа на i-ом объекте
// ...
}