SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
TELEPORT 2D
Adicionar linhas no TXT pelo codigo
[TUTORIAL] Sistema de inventário Sobrevivência
Formação De Equipe Pra Criar RPG
Unity Ads ou AdMob!
Como locomover um trem
Como fazer Escudo seguir a movimentação do Player?
Como não perder qualidade nas texturas 2d?
IDB JAM #10
MOVIMENTAÇÃO EM 8 DIREÇÕES.
animações não sendo reproduzidas
Seguir um raio no raycast a partir do ponto da tela clicado
Building System
Personagem morrer ao cair da tela
Deixar objeto invisível.
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Divulgaçao de Battle of Worlds
[Resolvido]Problema nesse pequeno script
Como fazer barco estilo minecraft ou estilo navio que da pra andar dentro
Movimentação
Puzzle para jogo de terror , abrir portas etc..
Script para mudar posição do personagem
Baixos Brasil - Jogo de Carro Brasileiro!
Como saber quando minha animação terminou?
system inventory , craft
ajuda
Aplicar roupa no Rig do blender...
Project Valley of Trees - Primeiro nome que faz sentido KK
A.S TRUCK
Som de correr não para de tocar
Reproduzir audio no if c## e musica continuar tocando entre cenas.
Como Colocar Pontuação Final na GUI de GAME OVER
Unity 2017 Iluminação RealTime VS Baked [Comparaçâo]
DUVIDA : Raycast
Programador para equipe
Da pra colocar sisteminha em um jogo da unity pra trolar quem for piratear o jogo?
Como colocar musicas em sequencia para tocar?
Trajetória da bala com predição
Ajudinha com Bug
[RESOLVIDO] Poblema com Rigidbody
[DEVLOG] Projeto - Girl Blade (download Pré-Alpha)
Erro ao bulidar para Windows(.exe)
Mudar a gravidade com rotação (sensores do smartphone)
Problemas na detecção de colisão
Trabalhar simultaneamente na Unity
Movimetaçao infinita
(duvida)pq isso acontece com o inimigo?
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
[DUVIDA] Como alterar a intensidade do ChromaticAberration do PostProcessing?
Joystick VR não funciona no ios
Problema na minha animação feita na Unity
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
IA para inimigo seguir o jogador ( Plataforma )
Tirar Fotos no Unity 5 FPS
[TUTORIAL] Cena inicial de CARREGAMENTO, creditos, logo, etc [UNITY 5]
Como Limitar Spawn de Hordas
Desmembramento
Exemplo de UI com abas - utilizando toggles e toggle group.
Ajuda Blender
Quando Instancio botão ele não aparece no canvas
Sistema de pesca 2D
[TUTORIAL] Derrubar arvores e dropar madeiras dela
Auto-Complete do Visual Studios
Metroidvania - procuro membros
Criação de Update para Seus jogos?
Blender, animação + Unity
Preciso de alguém que desenvolva Craft, e Inventario com sistema de Bolsas, Pago bem
Detectar Hit
[MODELADOR] Procurando Projetos
Carákas que Tops WO.OW
Anexar GameObject por scrit
Como cria um sistema de seve game
[DUVIDA] Trocar botoes no teclado por joystick UI
Efeito de Audio
Bug de sumir todas as modelagens 3D na unity 2017
Quero fazer minha propria lens flare
Menu para selecao de cena
Dificuldades com programação no Unity 5 2D
Bug ? offline e online
Conflito de ações HELP
como saber a posição que a particula bateu?
Formação de Equipe Battle of Worlds
[JOGO EM BETA] Batalha de Canhão
Jogo de sobrevivência na ilha PRE-Alpha
Inimigo ao encostar morre e player leva dano UNITY 5 2D
Como faço blocos que somem so clikando neles 1 vez?
Light Bug
Como criar inventário simples no unity
Como fasso para que clico em um botao e aumente o volume junto com grave em uma musica?
como que criar um sitema tipo o do rocket league
tem como criar um modelo no sketchup e exportar pra unity, mas sem os componentes
(duvida)pq aconteçe isso com a luz
Como posso deixar o MENU do meu jogo adequado ao monitor?
Dúvida com o Update
Como eu realizo um inimigo que atira(tipo os inimigos do Warface)?
Bug Chato
Particulas de poeira
Faltando algumas opções no Unity
Audio Player C#
Hoje à(s) 12:19 pm
Hoje à(s) 12:17 pm
Hoje à(s) 11:00 am
Hoje à(s) 9:00 am
Hoje à(s) 7:03 am
Hoje à(s) 1:07 am
Hoje à(s) 12:04 am
Ontem à(s) 11:07 pm
Ontem à(s) 9:27 pm
Ontem à(s) 7:22 pm
Ontem à(s) 7:17 pm
Ontem à(s) 6:01 pm
Ontem à(s) 5:55 pm
Ontem à(s) 9:57 am
Ontem à(s) 7:07 am
Ontem à(s) 12:13 am
Ter Set 19, 2017 11:53 pm
Ter Set 19, 2017 10:15 pm
Ter Set 19, 2017 9:12 pm
Ter Set 19, 2017 8:34 pm
Ter Set 19, 2017 7:40 pm
Ter Set 19, 2017 4:29 pm
Ter Set 19, 2017 12:25 pm
Ter Set 19, 2017 12:14 pm
Ter Set 19, 2017 10:55 am
Ter Set 19, 2017 10:26 am
Ter Set 19, 2017 8:21 am
Ter Set 19, 2017 2:42 am
Seg Set 18, 2017 10:20 pm
Seg Set 18, 2017 9:16 pm
Seg Set 18, 2017 8:40 pm
Seg Set 18, 2017 8:39 pm
Seg Set 18, 2017 8:08 pm
Seg Set 18, 2017 4:33 pm
Seg Set 18, 2017 2:22 pm
Seg Set 18, 2017 12:15 pm
Seg Set 18, 2017 9:33 am
Seg Set 18, 2017 8:21 am
Seg Set 18, 2017 12:59 am
Dom Set 17, 2017 5:04 pm
Dom Set 17, 2017 3:45 pm
Dom Set 17, 2017 10:49 am
Sab Set 16, 2017 11:18 pm
Sab Set 16, 2017 5:57 pm
Sab Set 16, 2017 4:10 pm
Sab Set 16, 2017 3:05 pm
Sab Set 16, 2017 2:23 pm
Sab Set 16, 2017 12:40 pm
Sab Set 16, 2017 12:16 pm
Sab Set 16, 2017 10:17 am
Sab Set 16, 2017 9:53 am
Sab Set 16, 2017 9:26 am
Sab Set 16, 2017 9:10 am
Sex Set 15, 2017 11:51 pm
Sex Set 15, 2017 8:27 pm
Sex Set 15, 2017 7:27 pm
Sex Set 15, 2017 6:17 pm
Sex Set 15, 2017 3:08 pm
Sex Set 15, 2017 11:19 am
Sex Set 15, 2017 9:43 am
Qui Set 14, 2017 11:50 pm
Qui Set 14, 2017 9:08 pm
Qui Set 14, 2017 3:17 pm
Qui Set 14, 2017 1:55 pm
Qui Set 14, 2017 12:13 pm
Qui Set 14, 2017 10:07 am
Qua Set 13, 2017 9:52 pm
Qua Set 13, 2017 11:34 am
Ter Set 12, 2017 10:33 pm
Ter Set 12, 2017 10:21 pm
Ter Set 12, 2017 9:34 pm
Ter Set 12, 2017 8:52 pm
Ter Set 12, 2017 8:51 pm
Ter Set 12, 2017 7:05 pm
Ter Set 12, 2017 6:53 pm
Ter Set 12, 2017 6:51 pm
Ter Set 12, 2017 3:04 pm
Ter Set 12, 2017 2:04 pm
Ter Set 12, 2017 11:54 am
Ter Set 12, 2017 9:59 am
Ter Set 12, 2017 9:43 am
Ter Set 12, 2017 12:17 am
Seg Set 11, 2017 8:54 pm
Seg Set 11, 2017 8:48 pm
Seg Set 11, 2017 8:12 pm
Seg Set 11, 2017 7:18 pm
Seg Set 11, 2017 6:15 pm
Seg Set 11, 2017 6:02 pm
Seg Set 11, 2017 5:31 pm
Seg Set 11, 2017 5:22 pm
Seg Set 11, 2017 5:06 pm
Seg Set 11, 2017 4:53 pm
Seg Set 11, 2017 4:17 pm
Seg Set 11, 2017 4:15 pm
Seg Set 11, 2017 4:14 pm
Seg Set 11, 2017 3:54 pm
Seg Set 11, 2017 3:53 pm
Seg Set 11, 2017 3:51 pm
Seg Set 11, 2017 11:42 am
Weslley
Weslley
916anderson
Bruno
guimaraf
andreoliveira122010
RobinF
JorgeLuizxd
dimmuo
Weslley
Phph09
Weslley
Weslley
Bruno
GabriG07
Dom3000
Dom3000
g
Weslley
Weslley
Zecandy
Weslley
Duarte
artplayer
PatifeCraft
Lteo
Fagner
Madness
PatifeCraft
dstaroski
eduu10
JorgeLuizxd
MateusWTP
Weslley
Brunotrinkss
guimaraf
Weslley
guimaraf
ManoTrevor
PedroL123
dstaroski
GabriG07
Brgs886
Madness
Fagner
PedroL123
glauco
Callyde Jr
JorgeLuizxd
Henrique Ramires
Weslley
Weslley
Weslley
Weslley
Weslley
Weslley
916anderson
rafaelllsd
Fagner
Fagner
rafaelllsd
PatifeCraft
Weslley
Carlin
artplayer
Ronnisz
Jhonatham1
Callyde Jr
mrariel2011
AndyShow
Fagner
PatifeCraft
Alerson Software
AndyShow
AndyShow
AndyShow
Alessandra Matheus
Lteo
Callyde Jr
Weslley
Dom3000
Dom3000
dstaroski
dstaroski
guilhermeprata
DUT
Duarte
PatifeCraft
heliab125
MarcosSchultz
MarcosSchultz
glauco
MarcosSchultz
MarcosSchultz
lantreco
MarcosSchultz
MarcosSchultz
MarcosSchultz
Weslley

Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

DÚVIDA Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Seg Out 03, 2016 12:06 pm

Fiz duas Class como o marcos falou que faria o inventario dele em um topico sendo que no meu caso quero buscar todos que tem esse enum e mandar aparecer na tela com a OnGUI.

//Nao sei com buscar quem tem o enum arma para poder mandar minha void MostrarInventario e a void MostrarItemDaTela fazerem
//os objetos do inventario e do mercado mostra na tela
Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;

[System.Serializable]
public class Item  {

public string itemNome;
public int itemId;
public ItemTipo itemTipo;
public GameObject itemObjeto;
public Texture2D itemTexture;


public enum ItemTipo{

   Armas,
   Pe,
   Perna,
   Peitoral,
   Mao,
   Pulso,
   Cordao,
   Anel

   }

}

Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;

[System.Serializable]
public class ItemDataBase : Item {
   
    public string precot;
    public static double precod;
    public int itemDesc;   


    public ItemDataBase(string nome, int id, string valor,int desconto, double valorI, ItemTipo tipo, GameObject obj, Texture2D textura)
    {

        itemNome = nome;
        itemId = id;
        itemTexture = textura;
        itemObjeto = obj;
        precot = valor;//
        precod = valorI;//
        itemTipo = tipo;
   itemDesc = desconto;//

      
    }      

}

Código:
using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

public class objtgui : MonoBehaviour { 

    public Item[] inventario2 = new Item[0];   
   ArrayList MinhaLista = new ArrayList();
    public ItemDataBase[] shop = new ItemDataBase[4];
   
   public Item.ItemTipo tipo;
   
   public float reparo;
   public bool repare;
   public bool vender;
   public bool aparecer;
   int id,i,j;
   public Vector2 scrollPosition;


   // Use this for initialization   
   void Start() {
      MinhaLista.Add ("1");
      MinhaLista.Add ("3");
      
      //j = i+1;
   }


   public void NovoItem(int id){
      double di = 10;
      if (ItemDataBase.precod <= di){
      MinhaLista.Add(id); //Add um novo item na lista
      }
   }

   public void AlterarItem(int ID,string ID2){
      MinhaLista[ID] = ID2; //Altera um item usando o numero do item da lista
   }

   public void RemoverItem(int ID){
   double di = 10;
   double ve = 20.0 / 100.0;
   double final;
    if (vender){
            
   final = ItemDataBase.precod*ve;
   di += final;
   MinhaLista.RemoveAt(ID); //Remover item usando o número do item da lista
   //Array.add(inventario2, item);
    http://inventario2.Remove(item);
   
      }
      
   }   
   
   
void MostrarItemDaTela(ItemDataBase item){
   
   

    GUILayout.BeginArea(new Rect(0,0,170,90),"","box");   
    GUILayout.BeginArea(new Rect(0,0,100,80));
    GUILayout.Box(item.itemTexture,GUILayout.Height(80),GUILayout.Width(80));
    GUILayout.EndArea();
   
    GUILayout.BeginArea(new Rect(85,0,80,80));
    GUILayout.BeginVertical();
    GUILayout.Box(item.itemNome);
    GUILayout.Box(item.precot);
    if (GUILayout.Button("Comprar")){
        NovoItem(item.itemId);               
        }
   GUILayout.EndVertical();
   GUILayout.EndArea();   
   GUILayout.EndArea();

}

void ComprarItem(Item item){
   double di = 10;
    if (ItemDataBase.precod <= di)
    {
       MinhaLista.Add(id);
    http://inventario2.add(item[item.itemId]);
      // inventario2.Add(item);
    }
}
      
void VenderItem(Item item){
   double di = 10;
   double ve = 20.0 / 100.0;
   double final;
    if (vender){
            
   final = ItemDataBase.precod*ve;
   di += final;
   //Array.add(inventario2, item);
    http://inventario2.Remove(item);
   
      }
    }
//
void MostrarInventario(Item item){
         
         
   //scrollPosition = GUILayout.BeginScrollView (scrollPosition, GUILayout.Width (100), GUILayout.Height (100));

   Rect espaco = new Rect ((Screen.width - 230) - Screen.width/2,(Screen.height/4 - Screen.height/5 + 30),550 ,Screen.height);
   GUILayout.BeginArea(espaco);
         
   scrollPosition = GUILayout.BeginScrollView (scrollPosition, GUILayout.Width (200), GUILayout.Height (450));         
   GUILayout.BeginHorizontal();
         
   if(GUILayout.Button(item.itemTexture,GUILayout.Height(85),GUILayout.Width(100))){
            
   }
   GUILayout.BeginVertical();
   GUILayout.Box(item.itemNome,GUILayout.Height(20),GUILayout.Width(130));
   GUILayout.BeginHorizontal();
   
   if(GUILayout.Button("Vender",GUILayout.Height(25),GUILayout.Width(65))){
      RemoverItem(id);
   }            
         //if(repare){
            
   if(GUILayout.Button("Reparar",GUILayout.Height(25),GUILayout.Width(65))){
            
   }
         //}
   GUILayout.EndHorizontal();
   GUILayout.EndVertical();
   GUILayout.EndHorizontal();
   GUILayout.EndScrollView ();
   GUILayout.EndArea();         

   }

   void OnGUI () {   
//Nao sei com buscar quem tem o enum arma para poder mandar minha void MostrarInventario e a void MostrarItemDaTela fazerem
//os objetos do inventario e do mercado mostra na tela
   foreach(Item it in inventario2){
      
   }
   foreach(ItemDataBase db in shop){
      MostrarItemDaTela(db);
   }
}

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Seg Out 03, 2016 5:35 pm

@ UP para eu ver isto quando conseguir algum tempo livre
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Ter Out 04, 2016 10:20 am

Voce que um packat disso

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Qui Out 06, 2016 12:16 am

Seria interessante, para ver como você está montando na sua cena.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Ter Out 11, 2016 8:41 am

mediafire.com file/6hu82b8t9g8xd8d/inventario%26mercado.rar

Código:
using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

public class objtgui : MonoBehaviour { 

    public Item[] inventario2 = new Item[0];   
   ArrayList MinhaLista = new ArrayList();
    public ItemDataBase[] shop = new ItemDataBase[4];
   
   public Item.ItemTipo tipo;
   
   public float reparo;
   public bool repare;
   public bool vender;
   public bool aparecer;
   int id,i,j;
   public Vector2 scrollPosition;


   // Use this for initialization   
   void Start() {
      MinhaLista.Add ("1");
      MinhaLista.Add ("3");
      
      //j = i+1;
   }


   public void NovoItem(int id){
      double di = 10;
      if (ItemDataBase.precod <= di){
      MinhaLista.Add(id); //Add um novo item na lista
      }
   }

   public void AlterarItem(int ID,string ID2){
      MinhaLista[ID] = ID2; //Altera um item usando o numero do item da lista
   }

   public void RemoverItem(int ID){
   double di = 10;
   double ve = 20.0 / 100.0;
   double final;
    if (vender){
            
   final = ItemDataBase.precod*ve;
   di += final;
   MinhaLista.RemoveAt(ID); //Remover item usando o número do item da lista
   //Array.add(inventario2, item);
    http://inventario2.Remove(item);
   
      }
      
   }   
   
   
void MostrarItemDaTela(ItemDataBase item,float x,float y){
   
   

    GUILayout.BeginArea(new Rect(x,y,175,90),"","box");
    GUILayout.BeginArea(new Rect(5,5,80,80));         
    GUILayout.Box(item.itemTexture,GUILayout.Height(80),GUILayout.Width(80));
    GUILayout.EndArea();
      
    GUILayout.BeginArea(new Rect(90,5,80,80));
    GUILayout.BeginVertical();
    GUILayout.Box(item.itemNome);
    GUILayout.Box(item.precot);
    if (GUILayout.Button("Comprar")){
        NovoItem(item.itemId);               
        }
   GUILayout.EndVertical();
   GUILayout.EndArea();   
   GUILayout.EndArea();

}

void ComprarItem(Item item){
   double di = 10;
    if (ItemDataBase.precod <= di)
    {
       MinhaLista.Add(id);
    http://inventario2.add(item[item.itemId]);
      // inventario2.Add(item);
    }
}
      
void VenderItem(Item item){
   double di = 10;
   double ve = 20.0 / 100.0;
   double final;
    if (vender){
            
   final = ItemDataBase.precod*ve;
   di += final;
   //Array.add(inventario2, item);
    http://inventario2.Remove(item);
   
      }
    }
//
void MostrarInventario(Item item){
         
         
   //scrollPosition = GUILayout.BeginScrollView (scrollPosition, GUILayout.Width (100), GUILayout.Height (100));

   Rect espaco = new Rect ((Screen.width - 230) - Screen.width/2,(Screen.height/4 - Screen.height/5 + 30),550 ,Screen.height);
   GUILayout.BeginArea(espaco);
         
   scrollPosition = GUILayout.BeginScrollView (scrollPosition, GUILayout.Width (200), GUILayout.Height (450));         
   GUILayout.BeginHorizontal();
         
   if(GUILayout.Button(item.itemTexture,GUILayout.Height(85),GUILayout.Width(100))){
            
   }
   GUILayout.BeginVertical();
   GUILayout.Box(item.itemNome,GUILayout.Height(20),GUILayout.Width(130));
   GUILayout.BeginHorizontal();
   
   if(GUILayout.Button("Vender",GUILayout.Height(25),GUILayout.Width(65))){
      RemoverItem(id);
   }            
         //if(repare){
            
   if(GUILayout.Button("Reparar",GUILayout.Height(25),GUILayout.Width(65))){
            
   }
         //}
   GUILayout.EndHorizontal();
   GUILayout.EndVertical();
   GUILayout.EndHorizontal();
   GUILayout.EndScrollView ();
   GUILayout.EndArea();         

   }
   

    // Update is called once per frame
   void OnGUI () {   

      int contador = 0;
      int contadory = 0;
      foreach(var element in shop){


         if(element.itemTipo == Item.ItemTipo.Armas){
            if(contador!=180){
               MostrarItemDaTela(element,contador,contadory);
                  contador=180;
                  //print ("foi");
            }else{
               //MostrarItemDaTela(element,contador,0);               
               MostrarItemDaTela(element,contador,contadory);               
               contadory=95;
               
               //contador+=180;
                  if(contadory == 95){
                     contador=0;
                     //contadory+=95;
                     MostrarItemDaTela(element,contador,contadory);
                     //contadory+=95;
                  }else{
                     //contador+=90;
                     MostrarItemDaTela(element,contador,contadory);
                  }
            }
   
         }
   //foreach (var element in inventario2){
      /*
        if(tipo == Item.ItemTipo.Armas){
         
       
        } if(GUILayout.Button("teste")&& tipo == Item.ItemTipo.Pe){         
      print("foi");
         
        } if(tipo == Item.ItemTipo.Perna){
         
       
        } if(tipo == Item.ItemTipo.Peitoral){
         
         
        } if(tipo == Item.ItemTipo.Mao){
         
       
        } if(tipo == Item.ItemTipo.Pulso){
         
         
        } if(tipo == Item.ItemTipo.Cordao){
         
       
        } if(tipo == Item.ItemTipo.Anel){
         
         
         }   */
      }
   }
}

o codigo eu dei uma modificada mas se poder fazer exemplo
Objetos a b c d.Em ordem que eu coloco no inspetor
A B
C D
Eu fiz o foreach mas nao estou conseguindo fazer o meu inventario ficar assim.E se possivel nao divulgar o codigo que vc fizer para mim agradeço.

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Qua Out 12, 2016 8:49 pm

Este seu package está dando erros... ele está tentando acessar uma classe que não existe dentro da classe "Item"
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Sex Out 14, 2016 10:46 am

http://www.mediafire.com/file/aab2l9jtootjf9d/mercado%26inventario.rar

quero que continue conforme eu va colocando numero mas se nao coloca fica assim o ultimo em cima do quarto elemento nao continua em baixo do terceiro elemento.



Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Dom Out 16, 2016 10:45 pm

Continuo tendo erros neste seu unitypackage quando tento acessar esta classe:

Código:
ItemTipo.Armas

Está anexando todos os scripts?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Seg Out 17, 2016 7:11 pm

Não tem nao sei por que so tem um script pois eu coloquei 3 ai dentro.
vou te reenviar agora outro.
http://www.mediafire.com/file/xxsmxisu9s7sl3n/marcos.unitypackage
http://www.mediafire.com/file/b34mc81hy2w2epl/marcos.rar

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Sex Out 21, 2016 12:42 am

Não tem como você zipar o projeto e mandar? aqui vai ficar dando erros infinitos por que eu não tenho a DataBase que os scripts estão acessando... não consigo nem compilá-los sem dar erros.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Sex Out 21, 2016 8:59 am

Nesse post la em cima tem dois codigos Item e ItemDataBase cria dois scripts com esse nome e coloca no asset que te mandei esse nao mudao

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por MarcosSchultz em Qua Out 26, 2016 1:18 am

Aeee, finalmente fiz funcionar... organizei tudo em um script só para conseguir entender melhor. 

Código:
using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;

[System.Serializable]
public class Item  {
   public string itemNome;
   public int itemId;
   public ItemTipo itemTipo;
   public GameObject itemObjeto;
   public Texture2D itemTexture;
   public enum ItemTipo{
      Armas,
      Pe,
      Perna,
      Peitoral,
      Mao,
      Pulso,
      Cordao,
      Anel
   }
}
[System.Serializable]
public class ItemDataBase : Item {
   public string precot;
   public static double precod;
   public int itemDesc; 
   public ItemDataBase(string nome, int id, string valor,int desconto, double valorI, ItemTipo tipo, GameObject obj, Texture2D textura){
      itemNome = nome;
      itemId = id;
      itemTexture = textura;
      itemObjeto = obj;
      precot = valor;
      precod = valorI;
      itemTipo = tipo;
      itemDesc = desconto;
   }     
}

public class objtgui : MonoBehaviour { 
    public List<Item> inventario2 = new List<Item>();
   public List<ItemDataBase> shop = new List<ItemDataBase>(); 
   public Item.ItemTipo tipo;
   public float reparo;
   public bool repare;
   public bool vender;
   public bool aparecer;
   int id,i,j;
   public Vector2 scrollPosition;

   void MostrarItemDaTela(ItemDataBase item,float x,float y){
       GUILayout.BeginArea(new Rect(0*x,0*y,170,90),"","box");   
       GUILayout.BeginArea(new Rect(0,0,100,80));
       GUILayout.Box(item.itemTexture,GUILayout.Height(80),GUILayout.Width(80));
       GUILayout.EndArea();
      
       GUILayout.BeginArea(new Rect(85,0,80,80));
       GUILayout.BeginVertical();
       GUILayout.Box(item.itemNome);
       GUILayout.Box(item.precot);
       if (GUILayout.Button("Comprar")){
           ComprarItem(item);               
       }
       GUILayout.EndVertical();
       GUILayout.EndArea();   
       GUILayout.EndArea();
   }

   void ComprarItem(Item item){
      double di = 10;
       if (ItemDataBase.precod <= di){
           inventario2.Add(item);
       }
   }
      
   void VenderItem(Item item){
      double di = 10;
      double ve = 20.0 / 100.0;
      double final;
       if (vender){
               
      final = ItemDataBase.precod*ve;
      di += final;
       inventario2.Remove(item);
   
      }
   }
   void MostrarInventario(Item item){
      Rect espaco = new Rect ((Screen.width - 230) - Screen.width/2,(Screen.height/4 - Screen.height/5 + 30),550 ,Screen.height);
      GUILayout.BeginArea(espaco);
      scrollPosition = GUILayout.BeginScrollView (scrollPosition, GUILayout.Width (200), GUILayout.Height (450));         
      GUILayout.BeginHorizontal();
      if(GUILayout.Button(item.itemTexture,GUILayout.Height(85),GUILayout.Width(100))){
               
      }
      GUILayout.BeginVertical();
      GUILayout.Box(item.itemNome,GUILayout.Height(20),GUILayout.Width(130));
      GUILayout.BeginHorizontal();
      
      if(GUILayout.Button("Vender",GUILayout.Height(25),GUILayout.Width(65))){
         VenderItem(item);
      }            
      if(GUILayout.Button("Reparar",GUILayout.Height(25),GUILayout.Width(65))){
               
      }
      GUILayout.EndHorizontal();
      GUILayout.EndVertical();
      GUILayout.EndHorizontal();
      GUILayout.EndScrollView ();
      GUILayout.EndArea();         
   }
   void OnGUI () {   
      foreach (var element in shop){
         if(element.itemTipo == Item.ItemTipo.Armas){
            print("foi");
         }
      }
      for (int x = 0; x < inventario2.Count; x++) {
         MostrarInventario(inventario2[x]);
      }
   }
}

mas vamos ao que interessa. Parece que você já conseguiu resolver a parte do enum. O que quer fazer agora? mostrar os itens na tela? De qual forma? em forma de tabela? ou um item por vez com um botão para passar adiante?

Por que não usa a UI?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 9667
REPUTAÇÃO : 1664
Idade : 21
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

Voltar ao Topo Ir em baixo

DÚVIDA Re: Como posso comparar enum de uma class no meu script e buscar todos objetos que tem esse enum.

Mensagem por Chilinger em Qua Out 26, 2016 11:52 am

Vamos la amem.O que eu quero vc conseguiu e eu tambem mas o x agora e colocar em ordem mas 1º 2º em cima do 3º 4º.Mas com a GUILaouyt area eu consigo fazer isso com uma area certo.E as outras duas coisas seriam indicar para outro script qual esta equipado(irei fazer aparecer na tela spawnar a arma) mas tenho que saber qual da lista do inventario e colocar as informaçoes em outros objetos de outra lista que apenas recebam as informaçoes.(Essa parte aqui e HUD com a class inventario + bala + proteçao + sangue)exemplo quanto ira tirar de sangue 10 mas o inimigo tem um equipamento que protege 5 e quantas balas posso atirar.
E por que nao com a Ui pois o jogo esta quase pronto e todo feito na GUI.

Chilinger
MembroAvançado

Masculino PONTOS : 1364
REPUTAÇÃO : 32
Idade : 23
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum