Estoy trabajando en un juego de tipo boggle para Android, usando libgdx. Al usuario se le presenta una cuadrícula de letras 4x4 y debe encontrar palabras arrastrando el dedo sobre las letras.
A diferencia de boggle, quiero que las letras usadas desaparezcan. Las letras restantes caerán (en la parte inferior del tablero, la orientación de la pantalla es fija) y el tablero se rellenará desde la parte superior. Los usuarios pueden rotar el tablero para tratar de poner letras difíciles de usar en un lugar mejor mediante la selección estratégica de palabras.
Un ejemplo:
d g a o
u o r T
h v R I
d G n a
Si seleccionara la palabra GRIT, esas letras desaparecerían y el resto se caería:
d
u g a
h o r o
d v n a
y luego ser reemplazado por nuevas letras
d w x y
u g a z
h o r o
d v n a
Estoy atrapado descubriendo cómo representar el tablero y las fichas.
Intenté representar el tablero como una matriz para hacer un seguimiento de los mosaicos seleccionados y los movimientos válidos y los mosaicos almacenados en una matriz también para que hubiera un mapeo fácil. Esto funciona, pero tuve que escribir un código complicado para rotar el tablero.
¿Cómo otros juegos manejan este problema?
EDITAR: Entonces, al pensarlo, realmente debería procesar mi punto de contacto de acuerdo con la rotación del tablero para que las celdas se mantengan constantes. Adjunto una imagen de lo que estoy pensando.