Esse arquivo p5collide.js , nao abre no meu computador , da um erro . Alguem poderia me ajudar , teria alguma outra biblioteca que poderiam me indicar para colocar para rodar . Meu jogo não funciona cem por cento .
Esse arquivo p5collide.js , nao abre no meu computador , da um erro . Alguem poderia me ajudar , teria alguma outra biblioteca que poderiam me indicar para colocar para rodar . Meu jogo não funciona cem por cento .
Olá, Letícia! Tudo bem contigo?
Desculpe a demora em dar um retorno!
Será que consegue me mostrar o erro que aparece?
Tem um site muito bom chamado imgur.com onde você consegue colocar o print do erro e compartilhar conosco através de markdown ou mesmo postando o link da imagem. Fica mais fácil para te ajudar!!!
Fico no aguardo!!!
Ola Cássio ! Tudo bem sim , obrigada . Entao quando vou tentar abrir a pasta dele no meu computador > Ele da um erro assim : Script: Nome do local aonde esta a minha pasta Linha: 10 Caract: 1 Erro : 'console', nao esta definido Código: 800A1391 Origem: Erro em tempo de execução do Microsoft JScript. Com esse erro a pasta nao funciona no meu codigo , meu jogo roda normal , mas pra fazer as coisas que se usa na pasta não funciona .
Olá, Letícia!
Poste o link editor do seu projeto para que eu possa dar um olhada!
Vou rodar o seu projeto na minha máquina para entender melhor esse problema, Letícia!
Fico no aguardo!
https://editor.p5js.org/LeticiaLima/full/6BxjC8vXy
Oi Leticia,
Poderia postar o código do Java.
Pelo que vi, o programa não esta reconhecendo a colisão e nem os movimentos para os lados.
Pelo sequencia do curso, acredito que no arquivo java, na parte em que esta declarada as condições de movimentos, deve estar faltando um ";" para encerra uma declaração.
No javascript é importante se atentar a terminar as declarações com o ponto e vírgula, pois é ela que avisa o programa que aquele comando se encerrou e que o próximo está por vir.
Quando falta o ";" no java ele não deixa de executar o script inteiro, ele deixa de executar tudo que vem depois da declaração que ficou em aberto (salvo se esse problema estiver dentro de uma função, neste caso apenas a função não vai ser executada corretamente)
Olá, Letícia! Como vai?
Rodei seu código e notei alguns comportamentos que podemos mexer.
No seu projeto, existe uma opção para gerarmos um link editor, que possibilita eu acessar o código dele.
Para me enviar, entre em file -> share e copie o link edit para postar aqui
Vou ficar no aguardo para testar dentro de todo seu projeto!!!
Um abraço
Segue o link .
https://editor.p5js.org/LeticiaLima/sketches/6BxjC8vXy
Letícia, acabei de rodar o código e testei as pastas normalmente.
Que tipo de inclusão você pretende fazer no projeto?
Percebi que a colisão do personagem e os carros não está acontecendo, mas acredito que seja por estar testando essa implementação.
A pasta do p5collide nao funciona no meu computador , por isso a colisao do personagem com os carros nao acontece . E isso que nao to conseguindo .
Letícia, dei uma analisada bem nos detalhes sobre rodar no sistema e correu tudo bem!
Um ponto que estava dando erro era que um método dentro da função verificaColisao está incorreta. Onde está o for
for (let i = 0; i < imagemCarros.lenggth; i++){
na palavra length a letra g está duplicada
Eu corrigi, rodou sem o erro e a colisão acontece.
Outro ponto que adicionei foi aumentar o valor da variável yAtor dentro da função voltaAtorParaPosicaoInicial para 420
, pois assim o ator não corre o risco de iniciar já colidindo com o carro da primeira faixa
function voltaAtorParaPosicaoInicial() {
yAtor = 420;
}
Faça esses testes, Letícia!
Aguardo seu retorno!
na função "function movimentaAtor()" você pretender manter apenas os movimentos para cima e para baixo (vertical0 ou também vai incluir os movimentos horizontais (esquerda e direita?
Seria legal colocar mais movimentos .
Sendo assim, dentro da função movimentaAtor() voce adiciona mais 2 condições de verificação (if), a variável y movimenta o personagem no sentido vertical, a variável x vai movimentar ele no sentido horizontal.
function movimentaAtor() {
if (keyIsDown(UP_ARROW)){
yAtor -= 3;
}
if (keyIsDown(DOWN_ARROW)){
if (podeSeMover()){
yAtor += 3;
}
}
if (keyIsDown(LEFT_ARROW()){
XAtor -= 3;
}
if (keyIsDown(RIGHT_ARROW()){
XAtor += 3;
}
}
Teste o código deste jeito e depois avise se funcionou,com isso o personagem deve se mover para a esquerda e para a direita.
Ok, obrigada pela dica vou testar e volto aqui pra contar.
Gabriel adicioneio codigo que me passou , nao consigo ver se der certo . Aparece isso agora : Uncaught ReferenceError: verificaColisao is not defined (sketch: line 13)
JA verifiquei mais nao sei o que fiz de errado .
Cassio , mudei o que estava errado o codigo e funcionou . Agora fui acrescenter outros movimentos de ruim de novo. Mas o que voce tinha pedido pra mim fazer deu certo , o personagem colidiu .
Oi leticia,
Peço desculpas, revi o código que postei e identifiquei excesso de parenteses nas declarações, segue ele corrigido:
function movimentaAtor() {
if (keyIsDown(UP_ARROW)){
yAtor -= 3;
}
if (keyIsDown(DOWN_ARROW)){
if (podeSeMover()){
yAtor += 3;
}
}
if (keyIsDown(LEFT_ARROW)){
XAtor -= 3;
}
if (keyIsDown(RIGHT_ARROW)){
XAtor += 3;
}
}
Eu mantive no código pois estava ontem nele, mas o que exatamente a função "podeSeMover()" faz?
Pelo que eu vi no código a função retorna um valor numérico para o programa então ele não esta compatível com a condição "if" que trabalha com verdadeiro ou falso.
16/01/2020
Oi Letícia,, estou editando minha resposta pois o tópico fechou para novos comentários. Esse novo erro que você pegou é porque faltou declarar o "xAtor" como uma variável.
Bem no inicio do seu código, onde você delcara o seguinte o "yAtor", declare também o "xAtor" como uma variável e atribui um valor inicial para ele, se não me engano o professor sugere o valor de "60".
Ola Gabriel eu arrumei o codigo como voce me mostrou , mas quando tento usar as setas para o lado o jogo trava . Diz que a funcao Xator nao foi definida . Poderia me ajudar novamente , por favor . Obrigada
Uncaught ReferenceError: XAtor is not defined (ator: line 24)