PlzHELPPPP
Membro
Pessoal Isto parece um problema simples, mas estou a ter problemas para resolvê-lo. Basicamente, a função desenhaFaceTotal() tem um botão que permite desenhar cinco dados em cinco canvas diferentes e atribuir o valor numArray a cada dado desenhando os pontos dos dados de acordo com o número que saiu (exemplo: n = 5 desenha cinco pontos) e depois organiza os dados por ordem crescente isso faz tudo bem o problema é que: eu queria mudar o valor do primeiro dado (o menor número na matriz) pressionando o canvas na função alterarNumero() e organiza-lo depois ao invés disso o meu programa altera o valor de qualquer um dos dados.
Exemplo de operação que eu queria que acontecesse
Dados:
1 2 3 5 5
depois de pressionar o primeiro canvas: (o número que saiu é, por exemplo, quatro)
2 3 4 5 5
O que acontece no meu código em vez de mudar o valor do primeiro dado mudou qualquer um dos dados no caso mudou por exemplo o dado número 3 e colocou o número 6
1 2 5 5 6
Exemplo de operação que eu queria que acontecesse
Dados:
1 2 3 5 5
depois de pressionar o primeiro canvas: (o número que saiu é, por exemplo, quatro)
2 3 4 5 5
O que acontece no meu código em vez de mudar o valor do primeiro dado mudou qualquer um dos dados no caso mudou por exemplo o dado número 3 e colocou o número 6
1 2 5 5 6
JavaScript:
graf1 = document.getElementById("myCanvas1").getContext("2d");
graf2 = document.getElementById("myCanvas2").getContext("2d");
graf3 = document.getElementById("myCanvas3").getContext("2d");
graf4 = document.getElementById("myCanvas4").getContext("2d");
graf5 = document.getElementById("myCanvas5").getContext("2d");
function desenhaFaceTotal(){
desenhaDado(graf1);
desenhaDado(graf2);
desenhaDado(graf3);
desenhaDado(graf4);
desenhaDado(graf5);
n = Math.floor(6 * Math.random()) + 1;
n2 = Math.floor(6 * Math.random()) + 1;
n3 = Math.floor(6 * Math.random()) + 1;
n4 = Math.floor(6 * Math.random()) + 1;
n5 = Math.floor(6 * Math.random()) + 1;
var numArray = [n, n2, n3, n4, n5];
numArray.sort(function(a, b) {
return a - b;
});
desenhaFace(numArray[0], graf1);
desenhaFace(numArray[1], graf2);
desenhaFace(numArray[2], graf3);
desenhaFace(numArray[3], graf4);
desenhaFace(numArray[4], graf5);
}
function alterarNumero(){
n = Math.floor(6 * Math.random()) + 1;
desenhaFaceTotal();
}
HTML:
<canvas class="dados" id="myCanvas1" width="88" height="88" onclick="alterarNumero()"></canvas>
<button class="botao" id="botaoNovaMao" onclick="desenhaFaceTotal()">nova<br>mão</button>