Noticias

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

Temas recientes

Object no reference - No doy con el fallo...

Iniciado por zelleGames, Febrero 22, 2020, 01:53:57 PM

Tema anterior - Siguiente tema
Febrero 22, 2020, 01:53:57 PM Ultima modificación: Febrero 22, 2020, 01:59:14 PM por zelleGames
Buenas gente,
 
 
 
Tengo un típico error de Object reference not set to an instance of an object y no doy con la solución.
 
Os comento, al hacer click en un objeto paso el objeto a otro script:
 
 
 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//using UnityEngine.UI;
 
public class Item3D : MonoBehaviour
{
    public int itemID;
    public string itemName, itemDescription;
    public GameObject itemObject;
    public bool couldSave;
    public Sprite itemImage;
 

    private void OnMouseDown()
    {
       
        ViewItem3D.viewItem3D.StartVisualization(this);
    }
 
}

 
 
 
Lo recogo correctamente en ese script y muestro el nombre y descripción sin problemas, pero al querer pasarlo a otro script para añadir el objeto en el inventario
 
me da el error que os indico:
 
 
 

public void StartVisualization(Item3D _item3D){
 
       
        objectToView =Instantiate(_item3D.itemObject, objectPosition);
     
        txtName.text = _item3D.itemName;
        txtDescription.text = _item3D.itemDescription;
        InventaryController.inventaryController.AddItem(_item3D);
    }

 
 
 
Seguro que es una tontería pero no doy con la tecla...
 
 
 
Muchas gracias por adelantado!!

No entiendo nada. itemObject es uin prefab? En cambio no utilizas el objecttoview que es el gameobject instanciado? Y qué es _item3D y donde viene?

Buenas iRob,
 
ItemObject si, es un prefab. El objectToView lo uso mas tarde para eliminar el objeto instanciado.
 
_item3D viene del primer fragmento de codigo que se lo paso a StartVisualization sin problemas, pero al pasarselo a InventoryController.inventoryController.AddItem me salta el error...
 
 


Febrero 22, 2020, 03:13:58 PM #4 Ultima modificación: Febrero 24, 2020, 04:38:43 PM por pioj



   
      InventaryController.inventaryController.AddItem(_item3D);
   

[/quote]
 
 

Pues es uno de los dos primeros.  Haz una comprobación de null en los dos a ver que pasa.

Ya di con el fallo...el fallo estaba en InventaryController, puse Awaket en vez Awake 
 
 
 

void Awaket(){
 
  inventaryController=this;
 
}

 
 
 
Vamos para darme de leches.
 
iRobb gracias por tu tiempo, al final era una tonteria. A veces el fallo esta en lo más tonto.

Etiquetas: