COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
4 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
Opa e aí pessoas, blz? queria saber como faço pra colocar variáveis diferentes numa array (float, string, gameobject, etc) pra deixar meus códigos um pouco mais organizados, tipo algumas variáveis do FPSController do Standard Assets da Unity por exemplo:
http://prnt.sc/e5o3fp
http://prnt.sc/e5o3fp
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
isso e uma classe com o atributo Serializable
- Código:
[system.Serializable]
public class Exemplo1
{
public float valor = 5.1f;
public bool ativar = false;
public string nome = "Maria";
}
- Código:
public class Exemplo2
{
public Exemplo1 classe;
}
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
tendi, mas se eu quiser alterar algo na variável "valor" por exemplo como q faço? pq quando coloco la diz q ela não existe
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
MeverPlays escreveu:tendi, mas se eu quiser alterar algo na variável "valor" por exemplo como q faço? pq quando coloco la diz q ela não existe
e aí MeverPlays!
array é uma lista, vc pode criar listas de uma variavel usando o [], por exemplo:
- Código:
public float[] listaDeValores;
public string[] listaDeNomes;
public GameObject[] listaDeObjetos;
aí lá fora na unity vc seta o numero de elementos que a lista vai ter e dá enter para definir o numero de elementos.
só não sei se dá para criar uma lista com variaveis diferentes, acho que nao tem jeito
Marc7- Mestre
- PONTOS : 3443
REPUTAÇÃO : 28
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
vdd acho que me expressei mal, array não é o nome certo eu acho kk, mas tem o print ali que mandei como exemplo (http://prnt.sc/e5o3fp). desse jeito q vc mandou, Marc7, não é exatamente oq eu quero :/ o jeito que o weslley falou funfa, mas e se eu quiser add uma função na void update pra aquelas variáveis, como faço? é aí que me perco pq quando eu faço aquilo se eu tentar acessar as variáveis na void update diz q não ta no contexto kk :/
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
MeverPlays escreveu:vdd acho que me expressei mal, array não é o nome certo eu acho kk, mas tem o print ali que mandei como exemplo (http://prnt.sc/e5o3fp). desse jeito q vc mandou, Marc7, não é exatamente oq eu quero :/ o jeito que o weslley falou funfa, mas e se eu quiser add uma função na void update pra aquelas variáveis, como faço? é aí que me perco pq quando eu faço aquilo se eu tentar acessar as variáveis na void update diz q não ta no contexto kk :/
acho que vc quis dizer em acessar por ex a variavel valor de algum lugar e mudar seu valor , é isso mesmo?
se vc estiver em outro script diferente e quiser alterar a variavel valor, é só vc transformar a public float valor; em public static float valor; e no outro script vc a busca da seguinte forma:
nomeDoScriptDaVariavel.valor = novoValorFloat;
espero que seja isso!
Marc7- Mestre
- PONTOS : 3443
REPUTAÇÃO : 28
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
não é isso kk, ngm ta entendendo ;-;
ve o script q o marcos postou neste tópico aqui, quero fazer isso da array com ele:
https://www.schultzgames.com/t3568-acessar-variaveis-do-character-controller#25219
ve o script q o marcos postou neste tópico aqui, quero fazer isso da array com ele:
https://www.schultzgames.com/t3568-acessar-variaveis-do-character-controller#25219
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
Pra oque vc ta Querendo vc Precisa Criar uma Classe
ai dentro dessa Classe vc pode Colocar GameObjects,strings,Floats.Bools,etc Como o Wesley Respondeu ali em Cima
ex:
acho que é isso q vc quer Fazer pelo que Entendi!
ai dentro dessa Classe vc pode Colocar GameObjects,strings,Floats.Bools,etc Como o Wesley Respondeu ali em Cima
ex:
- Código:
public class Arma{
public GameObject Bala;
public int ForcaBala = 250;
public float DistanciaMaxBala = 500;
public AudioClip SomTiro;
}
// PRA ACESSAR A CLASSE VC FAZ ASSIM:
void Update(){
if(Arma.DistanciaMaxBala > 500){
Destroy(Bala.gameobject);
}
}
acho que é isso q vc quer Fazer pelo que Entendi!
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
Ola amigo AndyShow, eu fiz isso porém da um erro no console: "[...]is inaccessible due to its protection level" e vários outros.AndyShow escreveu:Pra oque vc ta Querendo vc Precisa Criar uma Classe
ai dentro dessa Classe vc pode Colocar GameObjects,strings,Floats.Bools,etc Como o Wesley Respondeu ali em Cima
ex:
- Código:
public class Arma{
public GameObject Bala;
public int ForcaBala = 250;
public float DistanciaMaxBala = 500;
public AudioClip SomTiro;
}
// PRA ACESSAR A CLASSE VC FAZ ASSIM:
void Update(){
if(Arma.DistanciaMaxBala > 500){
Destroy(Bala.gameobject);
}
}
acho que é isso q vc quer Fazer pelo que Entendi!
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
Eu esqueçi do
[system.Serializable]
coloca em cima da classe
[system.Serializable]
coloca em cima da classe
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
fiz isso mas msm assim não funfa, meu script esta da seguinte forma:
aí da esse erro aqui: error CS0120: An object reference is required to access non-static member `Teste.Agachar.abaixado'
- Código:
using System.Collections;
using UnityEngine;
public class Teste : MonoBehaviour
{
public bool usarTeste;
public Testes testes;
[System.Serializable]
public class Testes
{
public bool testeBool;
}
void Update ()
{
if (usarTeste)
{
Testes.testeBool = false;
}
}
}
aí da esse erro aqui: error CS0120: An object reference is required to access non-static member `Teste.Agachar.abaixado'
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
primeiro você precisa acessar o objeto que existe uma referencia que no caso e "testes" e não "Testes" para acessar diretamente a classe ele precisar ser static
e legal você diferenciar os nomes melhor tipo colocar um underline um numero algo do tipo
ex
e legal você diferenciar os nomes melhor tipo colocar um underline um numero algo do tipo
ex
- Código:
using System.Collections;
using UnityEngine;
public class Teste : MonoBehaviour
{
public bool usarTeste;
public Testes testes;
[System.Serializable]
public class Testes
{
public bool testeBool;
}
void Update ()
{
if (usarTeste)
testes.testeBool = false;
}
}
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: COMO COLOCAR VARIAS VARIAVÉIS NUMA ARRAY
consegui resolver os erros que estavam dando. tinha algumas variáveis q não estavam como publicas :/
MeverPlays- Mestre
- PONTOS : 3867
REPUTAÇÃO : 48
Áreas de atuação : SketchUp, Unity.
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Como criar varias contas em um jogo como PlayerPrefs.
» como colocar objetos colididos em uma array?
» Como Colocar Todos Os filhos de um objeto em uma Array
» [RESOLVIDO] Array, colocar varios vector3 em uma array por script
» Criar uma String para colocar o nome da Fase (Mesmo script varias fases)
» como colocar objetos colididos em uma array?
» Como Colocar Todos Os filhos de um objeto em uma Array
» [RESOLVIDO] Array, colocar varios vector3 em uma array por script
» Criar uma String para colocar o nome da Fase (Mesmo script varias fases)
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos