Показать сообщение отдельно
Старый 19.06.2011, 15:06   #404
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Фак по Юнити.

По приведенному примеру можно сделать так:

var time float 2;
var 
float 1;

function 
Start() { 
    yield 
WaitForSeconds(1);
    
Random.Range(521); 
    yield 
WaitForSeconds(29);
    
Random.Range(16); 

А вообще строка
InvokeRepeating("LaunchProjectile"2, (x)); 
выполняется только один раз

Я бы переписал скрипт так:

var apple Rigidbody;
var 
time :  float;
var 
float 1//Начальное значение переменной "x", как я понял?


function Start() { 
    yield 
WaitForSeconds(1);
    
Random.Range(521); 
    yield 
WaitForSeconds(29);
    
Random.Range(16); 
}  

Invoke("LaunchProjectile"x); //"x" - та самая переменная, обозначающая промежуток между спавнами

function LaunchProjectile () 
{
  
instance Instantiate(apple,transform.positiontransform.rotation);
  
instance.velocity transform.TransformDirectionVector300) );
  
Invoke("LaunchProjectile"x);

Хотя на js это может выглядеть так, я js плохо знаю для unity, лучше C#:
var apple Rigidbody;
var 
time :  float;
var 
float 1//Начальное значение переменной "x", как я понял?

Invoke("LaunchProjectile"x); //"x" - та самая переменная, обозначающая промежуток между спавнами

yield WaitForSeconds(1);
Random.Range(521); 
yield 
WaitForSeconds(29);
Random.Range(16); 

function 
LaunchProjectile () 
{
  
instance Instantiate(apple,transform.positiontransform.rotation);
  
instance.velocity transform.TransformDirectionVector300) );
  
Invoke("LaunchProjectile"x);

__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
SaM_ (19.06.2011)