[RESOLVIDO] mudar a cor quando a personagem passa
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] mudar a cor quando a personagem passa
Boa tarde estou a criar um jogo e queria que quando a personagem passasse pelos meus sprites, eles mudassem de cor de forma random e não parassem de alterar, é possível ?
Se não for, é possível que vá então mudando a música sempre que passa em cada Sprite?
Se não for, é possível que vá então mudando a música sempre que passa em cada Sprite?
dragongirl- Membro
- PONTOS : 1480
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
Voce quer que quando passa pelo sprite ele muda de cor uma vez ou fica mudando de cor de forma aleatoria infinitamente?
Pokedlg- ProgramadorMaster
- PONTOS : 2337
REPUTAÇÃO : 198
Áreas de atuação : Iniciante: ShaderLab, Blender, Java, C++, ASP.NET.
Intermediário: C#.NET, Unity, Shader Graph.
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
Faz assim:
CASO VOCE QUEIRA ESCOLHER CORES ESPECIFICAS:
Primeiro de tudo coloque um Box Collider 2D no seu sprite e ative o IsTrigger.
Segundo coloque a tag "Player" na sua Personagem:
Depois no script do seu Sprite coloque:
Agora é só você colocar quantas cores voce quer. Olhe:
Quando a personagem passar pelo sprite ele vai ficar sorteando as cores que voce colocou aleatoriamente sem parar.
CORES ALEATÓRIAS SEM ESPECIFICAR:
Faça a mesma coisa que anteriormente, porém mude para este script:
CASO VOCE QUEIRA ESCOLHER CORES ESPECIFICAS:
Primeiro de tudo coloque um Box Collider 2D no seu sprite e ative o IsTrigger.
Segundo coloque a tag "Player" na sua Personagem:
Depois no script do seu Sprite coloque:
- Código:
public class Sprite : MonoBehaviour
{
public Material mat;
public Color[] colors;
public bool mudandoDeCor = false;
public int corSorteada;
void Start()
{
mat = GetComponent<MeshRenderer>().material;
}
void Update()
{
if(mudandoDeCor == true)
{
corSorteada = Random.Range(0, colors.Length);
mat.color = colors[corSorteada]; //irá gerar uma cor aleatória em relação a sua array de cores(cores especificadas por voce)
}
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "Player")
{
mudandoDeCor = true;
}
}
Agora é só você colocar quantas cores voce quer. Olhe:
Quando a personagem passar pelo sprite ele vai ficar sorteando as cores que voce colocou aleatoriamente sem parar.
CORES ALEATÓRIAS SEM ESPECIFICAR:
Faça a mesma coisa que anteriormente, porém mude para este script:
- Código:
public class Sprite : MonoBehaviour
{
public Material mat;
public bool mudandoDeCor = false;
void Start()
{
mat = GetComponent<MeshRenderer>().material;
}
void Update()
{
if(mudandoDeCor == true)
{
mat.color = Random.ColorHSV(); //Irá gerar uma cor aleatória sem voce escolher
}
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "Player")
{
mudandoDeCor = true;
}
}
Pokedlg- ProgramadorMaster
- PONTOS : 2337
REPUTAÇÃO : 198
Áreas de atuação : Iniciante: ShaderLab, Blender, Java, C++, ASP.NET.
Intermediário: C#.NET, Unity, Shader Graph.
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
O meu Sprite não aceita a cor porque aparece este erro (imagem a baixo).
O que tenho que mudar no script?
O que tenho que mudar no script?
dragongirl- Membro
- PONTOS : 1480
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
link da foto : https://www.behance.net/gallery/111007451/erro-no-scriptdragongirl escreveu:O meu Sprite não aceita a cor porque aparece este erro (imagem a baixo).
O que tenho que mudar no script?
dragongirl- Membro
- PONTOS : 1480
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
Desculpe, eu errei. Nao é MeshRenderer é Sprite Renderer. Mude para assim:
- Código:
public class Sprite : MonoBehaviour
{
public Material mat;
public bool mudandoDeCor = false;
void Start()
{
mat = GetComponent<SpriteRenderer>().material;
}
void Update()
{
if(mudandoDeCor == true)
{
mat.color = Random.ColorHSV(); //Irá gerar uma cor aleatória sem voce escolher
}
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "Player")
{
mudandoDeCor = true;
}
}
Pokedlg- ProgramadorMaster
- PONTOS : 2337
REPUTAÇÃO : 198
Áreas de atuação : Iniciante: ShaderLab, Blender, Java, C++, ASP.NET.
Intermediário: C#.NET, Unity, Shader Graph.
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
Boa tarde, ainda assim não funciona, diz que o script tem erros e pede para colocar um script válido
dragongirl- Membro
- PONTOS : 1480
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
dragongirl escreveu:Boa tarde, ainda assim não funciona, diz que o script tem erros e pede para colocar um script válido
Qual o nome do seu script?
Pokedlg- ProgramadorMaster
- PONTOS : 2337
REPUTAÇÃO : 198
Áreas de atuação : Iniciante: ShaderLab, Blender, Java, C++, ASP.NET.
Intermediário: C#.NET, Unity, Shader Graph.
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
Já vi que não tinha igual, muito obrigada já funcionadragongirl escreveu:Boa tarde, ainda assim não funciona, diz que o script tem erros e pede para colocar um script válido
dragongirl- Membro
- PONTOS : 1480
REPUTAÇÃO : 4
Respeito as regras :
Re: [RESOLVIDO] mudar a cor quando a personagem passa
dragongirl escreveu:Já vi que não tinha igual, muito obrigada já funcionadragongirl escreveu:Boa tarde, ainda assim não funciona, diz que o script tem erros e pede para colocar um script válido
Pokedlg- ProgramadorMaster
- PONTOS : 2337
REPUTAÇÃO : 198
Áreas de atuação : Iniciante: ShaderLab, Blender, Java, C++, ASP.NET.
Intermediário: C#.NET, Unity, Shader Graph.
Respeito as regras :
Tópicos semelhantes
» [Resolvido]Quando agachar "mudar" de boxcollider
» (Resolvido) Ajuda Sistema De Mudar De Cor Quando Um Objeto Encostar Em Outro
» [RESOLVIDO] Posicionar interestial admob quando o personagem morrer
» problema na AI quando passa pro unity 2020
» Quero fazer que quando o player passa pelo GameObject, ele dar munição
» (Resolvido) Ajuda Sistema De Mudar De Cor Quando Um Objeto Encostar Em Outro
» [RESOLVIDO] Posicionar interestial admob quando o personagem morrer
» problema na AI quando passa pro unity 2020
» Quero fazer que quando o player passa pelo GameObject, ele dar munição
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos