Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Como generar puntos aleatorios - Unity 2D

Iniciado por FackingTroll, Diciembre 14, 2015, 08:09:33 PM

Tema anterior - Siguiente tema
 
Hola, me puse un reto de hacer juegos SOLO en varios engines para aprender a programar, diseñar, componer, etc... entonces el primer proyecto es el que estoy haciendo ahora, se llama Iris y es un juego de habilidad en el cual hay que tocar puntos rojos siendo de color rojo y puntos azules siendo de color azul, de lo contrario se pierde.
  
El caso es que necesito un script para unity (c# preferiblemente) para que genere esos puntos azules y rojos FUERA del nivel y que se dirijan hacia el jugador.  Gracias. 

Si no te entendí mal, quieres que genere los puntos Azules y Rojos fuera del nivel aleatorios. Simplemente en tu script crea una variable Objetos así:var Objetos : GameObject[];Cuando ponemos [] es para especificar que no va a ser 1 objeto, sino los que pongamos en el inspector de Unity, a continuación pones en el inspector 2 porque quieres intanciar 2 objetos, y simplemente pone el Instantiate con Objetos[] y dentro de [] Un Random.Range 0, 1. Esto es lo que hace elegir aleatoriamente el objeto. Por cierto, si tu reto es para aprender a programar no pidas código, intenta hacerlo por ti mismo.

Diciembre 14, 2015, 11:25:10 PM #2 Ultima modificación: Junio 05, 2016, 06:26:47 PM por pioj
Cita de: leocub58 date=1450122267Si no te entendí mal, quieres que genere los puntos Azules y Rojos fuera del nivel aleatorios. Simplemente en tu script crea una variable Objetos así:
      
      
         var Objetos : GameObject[];
      
      
         Cuando ponemos [] es para especificar que no va a ser 1 objeto, sino los que pongamos en el inspector de Unity, a continuación pones en el inspector 2 porque quieres intanciar 2 objetos, y simplemente pone el Instantiate con Objetos[] y dentro de [] Un Random.Range 0, 1. Esto es lo que hace elegir aleatoriamente el objeto. Por cierto, si tu reto es para aprender a programar no pidas código, intenta hacerlo por ti mismo.
      
   

Hola, hice este codigo en c#
 

using UnityEngine;
using System.Collections;
public class Puntos : MonoBehaviour
{
    public GameObject[] puntos;
    void Start ()
    {
        puntos = new GameObject[2];
        Instantiate(puntos[Random.Range(,1)]);
    }    
    
}

 
Le puse el codigo a un cubo y en el inspector quedo asi:
 

 
Pero cuando le doy a jugar me da el siguiente error y no hace nada:
 



   
       
   
   
      ArgumentException: The thing you want to instantiate is null.
      UnityEngine.Object.CheckNullArgument (System.Object arg, System.String message) (at C:/buildslave/unity/build/Runtime/Export/UnityEngineObject.cs:102)
      UnityEngine.Object.Instantiate[GameObject] (UnityEngine.GameObject original) (at C:/buildslave/unity/build/Runtime/Export/UnityEngineObject.cs:94)
      Puntos.Start () (at Assets/Scripts/Puntos.cs:12)

   
   
   
   
       
   

[/quote]
 
 

si no hace nada es porque está en function Start, y creo que me equivoqué, en el random range pon 1,2 

[quote author=leocub58" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="34701" data-ipsquote-contentcommentid="125041 date=1450200851]si no hace nada es porque está en function Start, y creo que me equivoqué, en el random range pon 1,2 [/quote]Lo puse en update y en vez de un solo "The thing you want to instantiate is null" salieron muchos mas.


[quote author=leocub58" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="34701" data-ipsquote-contentcommentid="125043">pusite 1,2?[/quote]https://i.gyazo.com/5b1c65d52aea2b2d0fb5ee1e7c9ba708.png" alt="5b1c65d52aea2b2d0fb5ee1e7c9ba708.png" class="ipsImage date=1450202079]


Etiquetas: