Estou desenvolvendo um Jogo 2D em Java e até agora fiz o personagem obedecer as coordenadas do teclado e a colisão para ele não ultrapassar as barreiras do cenário. Isso na biblioteca JPlay.
Como eu faço para ele recolher objetos que estão espalhados pelo cenário?
O objetivo é:
recolher os lixos dispostos e colocá-los em suas respectivas lixeiras de reciclagem
o problema é que não faço ideia de como fazer ele “segurar” esses itens e dps jogar na lixeira certa…
Supondo que você já tenha como fazer a colisão, você pode, por exemplo, ter um atributo no seu personagem que indique que ele está carregando um objeto (ou um conjunto, numa lista/array).
Seria algo como:
1 - jogador colidou com objeto;
2 - jogador aperta tecla para pegar objeto;
3 - o objeto é adicionado à uma lista de objetos que o jogador está carregando (como um inventário);
4 - jogador se move até lixeira;
5 - jogador colide com lixeira;
6 - jogador pressiona tecla para soltar o objeto;
7 - objeto vai para a lixeira se atender condição (tipo da lixeira = tipo do objeto)
Se você precisa que o objeto fique na mão do jogador (como se ele estivesse carregando nas mãoes), você pode, no passo 4, fazer um loop nos objetos que ele está carregando e atualizar a posição deles.