Erro com script de inventario.
2 participantes
Página 1 de 1
Erro com script de inventario.
Erro com script de inventario.
Erro:
An object reference is required to access non-static member `InventarioQ.Adicionar(ItemQ)'
Scritp1:
Script2:
Script3:
Scritp4:
Script5:
Erro:
An object reference is required to access non-static member `InventarioQ.Adicionar(ItemQ)'
Scritp1:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
public class InventarioQ : MonoBehaviour
{
public List<ItemQ> items;
public Transform painel;
public bool Adicionar(ItemQ novoItem)
{
foreach (var itemQ in items)
{
if (itemQ.nome == novoItem.nome)
{
return false;
}
}
// processamento
items.Add(novoItem);
GameObject novoBotao = Instantiate(novoItem.prefab) as GameObject;
novoBotao.transform.SetParent(painel.transform);
return true;
}
}
Script2:
- Código:
using UnityEngine;
using System.Collections;
public class ItemClicavelQ : MonoBehaviour
{
public ItemQ itemQ;
InventarioQ inventarioQ;
void Start()
{
inventarioQ = GameObject.Find("InventarioQ").GetComponent<InventarioQ>();
}
void OnMouseUpAsButton()
{
if (InventarioQ.Adicionar(itemQ))
{
Destroy(gameObject);
}
}
}
Script3:
- Código:
using System;
using UnityEngine;
[Serializable]
public class ItemQ
{
public string nome;
public GameObject prefab;
public ItemQ(string nome)
{
this.nome = nome;
}
}
Scritp4:
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class ItemUIQ : MonoBehaviour
{
public void Clicou(string cursor)
{
GameObject.Find("JogoQ").GetComponent<JogoQ>().Cursor = cursor;
}
}
Script5:
- Código:
using UnityEngine;
using System.Collections;
public class JogoQ : MonoBehaviour
{
public static JogoQ instancia;
public string Cursor { get; set; }
public void Awake()
{
Cursor = "Pegar";
if (instancia == null)
{
instancia = this;
DontDestroyOnLoad(gameObject);
} else
{
Destroy(gameObject);
}
}
public void Update()
{
Debug.Log(Cursor);
}
}
PatifeCraft- Avançado
- PONTOS : 2869
REPUTAÇÃO : 6
Respeito as regras :
Re: Erro com script de inventario.
Colocar assim no inventario
- Código:
using UnityEngine;
using UnityEngine.UI;
using System.Collections.Generic;
public class InventarioQ : MonoBehaviour
{
public static InventarioQ inventarioQ;
public List<ItemQ> items;
public Transform painel;
public bool Adicionar(ItemQ novoItem)
{
foreach (var itemQ in items)
{
if (itemQ.nome == novoItem.nome)
{
return false;
}
}
// processamento
items.Add(novoItem);
GameObject novoBotao = Instantiate(novoItem.prefab) as GameObject;
novoBotao.transform.SetParent(painel.transform);
return true;
}
}
- Código:
InventarioQ.inventarioQ.Adicionar(novoItem);
Tópicos semelhantes
» erro erro e mais erro script de craft
» [Ajuda]Script de inventario
» Ajuda em script de inventario
» ERRO NO SCRIPT UM UNICO ERRO
» Não Acho o Erro no Script - é um script para o player se mover
» [Ajuda]Script de inventario
» Ajuda em script de inventario
» ERRO NO SCRIPT UM UNICO ERRO
» Não Acho o Erro no Script - é um script para o player se mover
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos