Hola! Como anda la comunidad??
Mi nombre es Diego, y tengo algunas dudas.
Estoy tratando de hacer un juego de Sopa de Letras, pero estoy teniendo problemas para realizar la grilla.
Que método me recomendarían para hacerlo?
Tendría que usar una lista de listas? o tendría que hacer casillero por casillero?
Desde ya muchas gracias.
Diego.
Buenas, @Diego_Giaquinta !
Disculpa por tardar en responder, pero realmente le he estado dando vueltas a este asunto, y no sé encontrar una manera “fácil” de realizar una sopa de letras.
Quizás lo más sencillo seria realizar nivel por nivel y con actores con la imagen del texto.
Lo digo por que de otra forma seria necesario construir un diccionario de posibles palabras, y comprobar combinaciones en una grilla (tampoco se me ocurre una manera sencilla de como hacer las comprobaciones en diagonal y diagonal invertida), lo que complicaria muchísimo todo.
Tienes hecho ya algo de código, alguna prueba que puedas mostrar y que nos de pié a darte ideas de como se podria continuar?
Esperamos noticias tuyas!
Un abrazo.
Hola @jordinur !
Gracias por tu respuesta. La idea es hacer algo sencillo, con palabras horizontales y verticales solamente (al menos por ahora). Estuve avanzando un poco. Lo que hice fue crear un actor para cada uno de los casilleros. Estos casilleros se completan con datos que tengo almacenados en una matriz donde se encuentran letras aleatorias, y también la/s palabra a encontrar.
Aca dejo algo para que chusmen
m es la matriz
y es la ubicacion en Y para situarlo en la altura que quiero
u es el nombre de la fila que quiero cargar
Espero sus opiniones! Gracias
def CreoGrilla(m,y,u):
Fila=[]
c0=pilas.actores.Texto()
c0.texto=m[u][0]
c0.x=-315
c0.y=y
c0.escala=0.50
c1=pilas.actores.Texto()
c1.texto=m[u][1]
c1.x=-285
c1.y=y
c1.escala=0.50
c2=pilas.actores.Texto()
c2.texto=m[u][2]
c2.x=-255
c2.y=y
c2.escala=0.50
c3=pilas.actores.Texto()
c3.texto=m[u][3]
c3.x=-225
c3.y=y
c3.escala=0.50
c4=pilas.actores.Texto()
c4.texto=m[u][4]
c4.x=-195
c4.y=y
c4.escala=0.50
c5=pilas.actores.Texto()
c5.texto=m[u][5]
c5.x=-165
c5.y=y
c5.escala=0.50
c6=pilas.actores.Texto()
c6.texto=m[u][6]
c6.x=-135
c6.y=y
c6.escala=0.50
c7=pilas.actores.Texto()
c7.texto=m[u][7]
c7.x=-105
c7.y=y
c7.escala=0.50
Fila.append(c0)
Fila.append(c1)
Fila.append(c2)
Fila.append(c3)
Fila.append(c4)
Fila.append(c5)
Fila.append(c6)
Fila.append(c7)
return Fila