Tenho problemas com o jogo que estou fazendo usando MIDP 2.0
Trata-se de um jogo estilo plataforma, logo meus problemas maiores como vocês devem imaginar são os algoritmos de colisão com o cenário.
Minha técnica inicial (posso mudar/melhorar depois) é a seguinte:
1 - Dentro do loop principal, verifica-se se o personagem colide com o cenário que é um TiledLayer.
2 - Se ele não está colidindo é porque ele está suspenso no ar, logo entra em ação o método que puxa o personagem para baixo até que ele esbarre no TiledLayer.
Os problemas PRINCIPAIS são:
1 - Mesmo testando a colisão com o TiledLayer colidesWith… com o parâmetro true ou false o resultado é o mesmo! O sprite do personagem “entra” um pouco no TiledLayer. Seria problema na imagem usada? Uso uma imagem para o personagem e outra para o TiledLayer ambas no formato .PNG e creio que as duas são sólidas, não possuem transparência, muito pelo contrário, o personagem tem um quadrado ao seu redor pois não sei tirar o fundo da sua imagem.
Então, como faço para garantir que a colisão seja detectada assim que o personagem toque no TiledLayer e ele fique exatamente em cima do TiledLayer? Que técnicas me recomendam na parte de criação e edição das imagens ou na parte dos algoritmos?
2 - Como detectar a colisão de forma diferente de acordo com a posição de cada célula no TiledLayer? Meu TiledLayer só tem um bloco simples, mas o problema é que o personagem não colide apenas pisando em cima do bloco, ele colide de lado com o bloco, ou batendo a cabeça em cima do bloco. Como detectar essas diferentes posições do bloco, se o bloco é o mesmo e se trata de um único TiledLayer?
Obrigado desde já.
Até mais.