Jump to content
zelleGames

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

Recommended Posts

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!!

Edited by zelleGames

Share this post


Link to post
Share on other sites

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?

Share this post


Link to post
Share on other sites

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...

 

Share this post


Link to post
Share on other sites
Quote

InventaryController.inventaryController.AddItem(_item3D);

 

Edited by pioj
por favor, usa el comment o el <> para pegar código...

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

×
×
  • Create New...