Страница 1 из 2

Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:19
ZhuDen
хочу сделать рандом Random.Range(2f, 5f); но мне выдаёт две ошибки:
1) Assets/Controller.cs(64,62): error CS0104: `Random' is an ambiguous reference between `UnityEngine.Random' and `System.Random'
2) Assets/Controller.cs(64,62): error CS0103: The name `Random' does not exist in the current context

Никак не пойму что не так.
E11.transform.position = new Vector3(Random.Range(2f, 5f), 3f, 5f);

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:24
ShyRec
Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:26
ZhuDen
ShyRec писал(а):Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Так что именно сделать? О_о

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:30
ShyRec
ZhuDen писал(а):
ShyRec писал(а):Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Так что именно сделать? О_о


Синтаксис:
Используется csharp
using System.Random;
//или UnityEngine.Random

//......///

//и инициализируем, тобеж создаём объект класса
Random rnd = new Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);


если где не прав, извиняйте. сам-то нуб нубом :)

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:32
ZhuDen
ShyRec писал(а):
ZhuDen писал(а):
ShyRec писал(а):Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Так что именно сделать? О_о


Синтаксис:
Используется csharp
using System.Random;
//или UnityEngine.Random

//......///

//и инициализируем, тобеж создаём объект класса
Random rnd = new Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);


если где не прав, извиняйте. сам-то нуб нубом :)


using System.Random;
//или UnityEngine.Random
Никакое из них не работает, по прежнему ошибки, что делать?

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:35
ShyRec
ZhuDen писал(а):
ShyRec писал(а):
ZhuDen писал(а):
ShyRec писал(а):Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Так что именно сделать? О_о


Синтаксис:
Используется csharp
using System.Random;
//или UnityEngine.Random

//......///

//и инициализируем, тобеж создаём объект класса
Random rnd = new Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);


если где не прав, извиняйте. сам-то нуб нубом :)


using System.Random;
//или UnityEngine.Random
Никакое из них не работает, по прежнему ошибки, что делать?


Попробуй вместо этого сделать так
Синтаксис:
Используется csharp
System.Random rnd = new System.Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:40
ZhuDen
ShyRec писал(а):
ZhuDen писал(а):
ShyRec писал(а):
ZhuDen писал(а):
ShyRec писал(а):Он тебе пишет, что у компилятора когнитивный диссонанс, и он не поймёт из какого пространства имён ему брать рандом. Укажи конкретно, у меня тоже такое было.
Плюс ругается, что нет инициализации.
Вроде так.

Так что именно сделать? О_о


Синтаксис:
Используется csharp
using System.Random;
//или UnityEngine.Random

//......///

//и инициализируем, тобеж создаём объект класса
Random rnd = new Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);


если где не прав, извиняйте. сам-то нуб нубом :)


using System.Random;
//или UnityEngine.Random
Никакое из них не работает, по прежнему ошибки, что делать?


Попробуй вместо этого сделать так
Синтаксис:
Используется csharp
System.Random rnd = new System.Random();
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f);


System.Random rnd = new System.Random(); // Эта строка работает
//и юзаем
E11.transform.position = new Vector3(rnd.Range(2f, 5f), 3f, 5f); // А в вот этой ошибка:
Assets/Controller.cs(65,66): error CS1061: Type `System.Random' does not contain a definition for `Range' and no extension method `Range' of type `System.Random' could be found (are you missing a using directive or an assembly reference?)

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:42
ShyRec
Так, извини. Вместо System.Random = new System.Random (); попробуй UnityEngine.Random = new UnityEngine.Random ();

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:46
ZhuDen
ShyRec писал(а):Так, извини. Вместо System.Random = new System.Random (); попробуй UnityEngine.Random = new UnityEngine.Random ();

тоже самое =(

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:49
ShyRec
Я уже даже не знаю. Честно говоря не использовал юнитековский рандом.

Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
using UnityEngine.Random;

E11.transform.position = new Vector3(Random.Range(2f, 5f), 3f, 5f);


Всё, больше никаких догадок. :-?

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 21:51
ZhuDen
ShyRec писал(а):Я уже даже не знаю. Честно говоря не использовал юнитековский рандом.

Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
using UnityEngine.Random;

E11.transform.position = new Vector3(Random.Range(2f, 5f), 3f, 5f);


Всё, больше никаких догадок. :-?

=( Кто нибудь ещё знает? :|

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 22:08
Avatarchik
Вместо using UnityEngine.Random; надо using Random = UnityEngine.Random; ;)

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 22:46
AndreyMust19
Ну вы намудрили. Просто UnityEngine.Random.Range написать кто мешает?

Re: Почему не работает рандом?

СообщениеДобавлено: 29 сен 2013, 22:47
mp3
public class MyClass : MonoBehaviour {

Re: Почему не работает рандом?

СообщениеДобавлено: 26 май 2020, 15:36
renegate-All
Убери из библиотек вначале using System;