[RESOLVIDO] List Index error
5 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
[RESOLVIDO] List Index error
Estou com um probleminha ao inserir uma lista spriterenderer ,script não há erro porem dá um erro de index, alguém teria alguma ideia do que pode ser?
- Código:
select--;
if(select < 0)
{
select = Lista.Count - 1;
}
sprite[select].color = Lista[select];
}
select++;
if(select >= Lista.Count)
{
select = 0;
}
sprite[select].color = Lista[select];
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
michelly escreveu:Estou com um probleminha ao inserir uma lista spriterenderer ,script não há erro porem dá um erro de index, alguém teria alguma ideia do que pode ser?
- Código:
select--;
if(select < 0)
{
select = Lista.Count - 1;
}
sprite[select].color = Lista[select];
}
select++;
if(select >= Lista.Count)
{
select = 0;
}
sprite[select].color = Lista[select];
Preciso saber o que quer fazer exactamente, se esse trecho de código roda em um Update, ou em um Start. Preciso saber porque você incrementa e decrementa a variável select no mesmo método.
Re: [RESOLVIDO] List Index error
Posta o Script Inteiro.
Magnatah- Instrutor
- PONTOS : 3548
REPUTAÇÃO : 209
Idade : 24
Áreas de atuação : Dєรєиvσlvєdσя Wєb(Fяσит-єиd), Blєиdєя, υиiтy, C#, ρнρ є Jαvαรcяiρт.
Respeito as regras :
Re: [RESOLVIDO] List Index error
erro de índice então deve ser index is out of range! bom você tem algumas verificações como
para setar como zero caso o valor seja menor que zero e
setando como zero caso o valor seja maior ou igual a Lista.Count
index of range isso significa que você esta acessando uma índice que não existe em umas das duas matrizes ou nas duas!
- Código:
if(select < 0)
para setar como zero caso o valor seja menor que zero e
- Código:
if(select >= Lista.Count)
setando como zero caso o valor seja maior ou igual a Lista.Count
index of range isso significa que você esta acessando uma índice que não existe em umas das duas matrizes ou nas duas!
- Código:
sprite[select].color = Lista[select];
Weslley- Moderador
- PONTOS : 5727
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [RESOLVIDO] List Index error
Vc tá decrementando e verificando se o index que vc setou na lista é menor que zero, dessa forma vai dar erro pois a lista não pode ter valores negativos como index, o range dela vai de 0 até List.Count
Re: [RESOLVIDO] List Index error
HMM, E O QUE PODE SER FEITO. Fiz algumas lógicas até, funcionou só que ele não repassa a cor pra lista spritedimmuo escreveu:Vc tá decrementando e verificando se o index que vc setou na lista é menor que zero, dessa forma vai dar erro pois a lista não pode ter valores negativos como index, o range dela vai de 0 até List.Count
script estar assim
- Código:
List<Color> Lista = new List<Color>();
int select = 0;
List<SpriteRenderer> sprite = new List<SpriteRenderer>();
anterior
select--;
if(select < 0)
{
select = Lista.Count - 1;
}
sprite[select].color = Lista[select];
}
proximo
select++;
if(select >= Lista.Count)
{
select = 0;
}
sprite[select].color = Lista[select];
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
michelly escreveu:HMM, E O QUE PODE SER FEITO. Fiz algumas lógicas até, funcionou só que ele não repassa a cor pra lista spritedimmuo escreveu:Vc tá decrementando e verificando se o index que vc setou na lista é menor que zero, dessa forma vai dar erro pois a lista não pode ter valores negativos como index, o range dela vai de 0 até List.Count
script estar assim
- Código:
List<Color> Lista = new List<Color>();
int select = 0;
List<SpriteRenderer> sprite = new List<SpriteRenderer>();
anterior
select--;
if(select < 0)
{
select = Lista.Count - 1;
}
sprite[select].color = Lista[select];
}
proximo
select++;
if(select >= Lista.Count)
{
select = 0;
}
sprite[select].color = Lista[select];
Queres aplicar as cores de um sprite de acordo com uma lista de cores. Se ambas tiverem a mesma quantidade de elementos, pode usar o loop 'for' dessa forma:
- Código:
List<Color> color = new List<Color>();
List<SpriteRenderer> sprite = new List<SpriteRenderer>();
for(int i = 0; i < sprite.Count; i++)
{
sprite[i].color = color[i];
}
Re: [RESOLVIDO] List Index error
Queres aplicar as cores de um sprite de acordo com uma lista de cores
isso mesmo, mais ao invez de usar um for eu uso
select++;
select--;
isso mesmo, mais ao invez de usar um for eu uso
select++;
select--;
dai não é necessário o uso do for loop, pois tou tentando seta-los em via Onclick anterior e proximo.
Se ambas tiverem a mesma quantidade de elementos.
dai vem o problema, se eu tiver 2 sprites na lista com 5 componentes color, com certeza vai da erro de index pois não é a mesma quantidade.
o script em si sem lista funciona com apenas 1 sprites. mais ao inserir a lista sprites não da bom.
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
Hum... Mas queres mudar as cores de todos os sprites ou de um Sprite somente?
Re: [RESOLVIDO] List Index error
de todosNotoriousDev escreveu:Hum... Mas queres mudar as cores de todos os sprites ou de um Sprite somente?
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
michelly escreveu:de todosNotoriousDev escreveu:Hum... Mas queres mudar as cores de todos os sprites ou de um Sprite somente?
Ok. Estou percebendo, então estamos quase.
Mais uma e provavelmente última dúvida.
E se tiver menos cores, o que quer que aconteça? Por exemplo, tens 4 objetos e 2 cores, como teremos 2 objetos de sobra, como seria designada a cor dele?
Re: [RESOLVIDO] List Index error
pra esse tipo de lógica precisa ter a igualdade quando se tem +1 objeto pra varias cores?
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
michelly escreveu:pra esse tipo de lógica precisa ter a igualdade quando se tem +1 objeto pra varias cores?
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
Bom, seria a mesma cor para todos os sprites? Ou uma cor para cada Sprite diferente?
Edit: Perdão, pergunta repetida. kkk
Re: [RESOLVIDO] List Index error
Olha, aguarde um minutinho. Vou fazer um projetinho aqui que faz o que tu quer e já lhe mando o link.
Re: [RESOLVIDO] List Index error
michelly escreveu:pra esse tipo de lógica precisa ter a igualdade quando se tem +1 objeto pra varias cores?
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
Bom, segue em anexo o projeto que fiz aqui agora para que tu saiba como fazer o que quer. Espero que seja isso.
Qualquer dúvida, à disposição.
- Download:
http://bit.ly/2UvP0Pe
Re: [RESOLVIDO] List Index error
MUITO OBG ERA ISSO MESMO, QUE EU ESTAVA TENTANDO FAZER,DESCULPA AI CASO NÃO ME EXPRESSEI BEM SOBRE O PROBLEMA E PELA SUA PACIÊNCIA TBMNotoriousDev escreveu:michelly escreveu:pra esse tipo de lógica precisa ter a igualdade quando se tem +1 objeto pra varias cores?
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
Bom, segue em anexo o projeto que fiz aqui agora para que tu saiba como fazer o que quer. Espero que seja isso.
Qualquer dúvida, à disposição.
- Download:
http://bit.ly/2UvP0Pe
michelly- MembroAvançado
- PONTOS : 2978
REPUTAÇÃO : 29
Respeito as regras :
Re: [RESOLVIDO] List Index error
michelly escreveu:MUITO OBG ERA ISSO MESMO, QUE EU ESTAVA TENTANDO FAZER,DESCULPA AI CASO NÃO ME EXPRESSEI BEM SOBRE O PROBLEMA E PELA SUA PACIÊNCIA TBMNotoriousDev escreveu:michelly escreveu:pra esse tipo de lógica precisa ter a igualdade quando se tem +1 objeto pra varias cores?
fiz um vídeo que explica o que tou tentando fazer, só que com vários sprites
Bom, segue em anexo o projeto que fiz aqui agora para que tu saiba como fazer o que quer. Espero que seja isso.
Qualquer dúvida, à disposição.
- Download:
http://bit.ly/2UvP0Pe
Disponha... Qualquer dúvida, só postar no forum que dou um jeito de ajudar.
Tópicos semelhantes
» [RESOLVIDO] IA Array index is out of range
» [RESOLVIDO] NullReferenceException : Error Código JS
» [Resolvido]Error na Hora no Build
» [RESOLVIDO] Error na hora de fazer apk!
» [RESOLVIDO] Error depois de copilar para Android?
» [RESOLVIDO] NullReferenceException : Error Código JS
» [Resolvido]Error na Hora no Build
» [RESOLVIDO] Error na hora de fazer apk!
» [RESOLVIDO] Error depois de copilar para Android?
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos