Я использовал C++ в течение длительного времени. Теперь я только начал работать с C# в Unity3D. Я почти готов к завершению работы приложения, но я не могу найти рабочий генератор int в Unity C# (с минимальными значениями). Я попытался следующие:Unity3D C# Random Int Generator
r = Random.Range(min, max)
и
Random rand = new Random();
r = rand.next(min, max)
Оба не работают. Я знаю, на C++ вы используете:
r = rand() % max + min;
Если вы хотите получить случайное число. Но как обстоят дела с Unity C#? Код:
EDIT:
using UnityEngine;
using System.Collections;
public class STarget : MonoBehaviour {
public GameObject inter;
int rand;
public GameObject TS1;
public GameObject TS2;
public GameObject TS3;
public GameObject TS4;
public GameObject TS5;
void Update() {
rand = Random.Range(1, 6);
}
public void GameRun() {
switch (rand){
case 1:
inter = TS1;
break;
case 2:
inter = TS2;
break;
case 3:
inter = TS3;
break;
case 4:
inter = TS4;
break;
case 5:
inter = TS5;
break;
}
Game.TargetSingle(inter);
}
}
Объясните, что «не сработало», вы получили исключение? у вас есть результат, которого вы не ожидаете? Мы не можем помочь вам решить проблему, если вы не оспариваете проблему. –
'rand.Next (мин., Макс.)' Проверяется. Удостоверьтесь, что вы не попадаете в [отверстие новых одноразовых рандомов в цикле] (http://stackoverflow.com/questions/767999/random-number-generator-only-generating-one-random-number) –
'Random.Range (min, max)' также должен работать. В зависимости от того, что вы хотите. –