• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Darks

Ajuda na correcção de bug

10 mensagens neste tópico

Olá, neste momento estou a trabalhar na minha PAP (prova de aptidão profissional), projecto este que conta para 25% da minha média final de curso.

O meu projecto baseia-se num tetris em 3D com opção 2 jogadores, totalmente feito em Java etc...

Acontece que já o tenho praticamente feito em 2D mas deparei-me com um bug 'estranho', e digo 'estranho' pois não consigo perceber a sua origem, isto é, tanto podemos passar 30 mins a jogar e ele nao aparecer, como este pode aparecer no 1º segundo, é totalmente aleatório e gostaria de conseguir corrigi-lo antes da aplicação em 3D mas não consigo descobrir a origem do bug :/

Deixo assim o meu projecto (open source) aqui disponível:

http://rapidshare.com/files/31539773...layer.rar.html

Tentei comentar o código de modo a conseguir ajudar-vos na compreensão deste.

Em caso de dúvidas postem que responderei o mais rápido possivel.

Desde já agradeço.

Cumps.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nao resolvi ainda...

Ando a investigar openGL em java para adiantar trabalho.

O Bug aparece aleatoriamente, do tipo tas a jogar e de repente a peça que está caindo deixa "rasto" ou seja deixa 2 ou 3 quadriculas imóveis no meio da tela de jogo, mas isto tanto pode ocorrer no 1º segundo como pode nunca acontecer é totalmente aleatório  ;)

Deixo aqui novo link se quiserem fazer download:

http://rapidshare.com/files/316748230/dual_player.rar.html

Agradecia imenso que me ajudassem, pois este trabalho é para apresentação (toda a escola vai assistir) e não gostava mesmo que acontecesse o bug durante a apresentação :(

Cumps  :(

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não consigo replicar o erro. Por mais vezes que tente acabo sempre por jogar sem que surja qualquer erro desse tipo. Não tenho mensagens de vitória ou derrota, e o jogo pára simplesmente, mas não tenho o erro que descreveste.

Vou tentando exporadicamente mas não prometo nada. Já experimentaste fazer debug do código e ver se corre normalmente?

Para piorar, estás a usar Java como se fosse C, e a usar coisas que nunca devias usar, como o método repaint() das JFrames, ou o stop() das Threads. Com o código algo caótico como está, e sem qualquer seguimento das boas regras de Java é algo desencorajador tentar ajudar ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Acontece que a 1ª linguagem que aprendi foi C daí que muitas das vezes eu hierarquize as coisas como fazia em C....

E essa versão foi simplesmente feita para posteriormente aproveitar o motor de jogo e passar para OpenGL (3D)

mas queria corrigir o bug entretanto.

Mas obrigado na mesma :/

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tive agora a jogar e consegui replicá-lo 2 vezes lol

tipo no Main comenta a linha 207

s[0].start();

assim jogas só de um lado eu joguei durante 5 minutos e apareceu o bug 2 vezes...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora