Etapa 4

Diseño y paso a paso del desarrollo de un videojuego en grupo.

Etapa 4

Notapor joksnet » Vie Ago 21, 2009 8:28 am

Hola.

Ya estamos muy cerca de tener un juego 100% jugable. Esta es la Etapa 4.

Código: Seleccionar todo
[_] % Etapa 4
   : Aquí se implementan la creación de lineas y la asignación de puntaje.
   [_] permitir que el usuario pueda hacer lineas
   [_] hacer que las piezas bajen a una determinada velocidad.
   [_] aumentar la velocidad de caida de las piezas conforme avanza
   [_] implementar un contador del lineas
   [_] imprimir un mensaje de GameOver cuando llega a la parte superior.


Yo acabo de comitear de una forma simple para verificar que hay lineas.

Pero tengo una duda. Las piezas se van dibujando en self.visual_matrix, pero no se redibujan en cada vuelta. Por lo cual, como hariamos para UnDraw o remover lo dibujado y redibujar todo de nuevo. En ningun lugar almacenamos las posiciones de las piezas dibujadas, como para saber redibujarlo.

Saludos,
Juan Manuel
joksnet
 
Mensajes: 15
Registrado: Mar Nov 28, 2006 4:28 am

Notapor hugoruscitti » Sab Ago 22, 2009 6:17 am

Saludos, recién estoy viendo los cambios y están muy
bien. Ahora cuando se completa una linea se puede
ver en consola el numero de las lineas completas. Buenisimo.

Con respecto a los siguientes pasos, voy a tratar de
escribir la documentación de cómo se podrían gestionar
las fichas en reposo para simplificarlo, a modo de propuesta.

A grandes rasgos, lo
que necesitaríamos es redibujar la matriz visual solamente
cuando se realizan lineas, esto es fácil de hacer directamente sobre
una superficie de pygame. Es como plegar un papel, de
hecho creo que pygame tiene una función llamada crop
que podriamos usar para ello:

http://www.losersjuegos.com.ar/traducci ... sform#chop

Bueno, mañana trataré de escribir el documento y te
aviso joksnet, es interesante tu consulta, pero tengo
que pensarla mejor...

Saludos.
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Notapor joksnet » Dom Ago 23, 2009 4:18 pm

Bueno. Intente hacer una prueba, no demaciado exaustiva. No se si es la manera correcta de utilizar pygame.transform.chop, pero me borra toda la visual_matrix. Lo vere mas tarde. Saludos,
Juan Manuel
joksnet
 
Mensajes: 15
Registrado: Mar Nov 28, 2006 4:28 am

Notapor hugoruscitti » Dom Ago 23, 2009 8:48 pm

joksnet escribió:Bueno. Intente hacer una prueba, no demaciado exaustiva. No se si es la manera correcta de utilizar pygame.transform.chop, pero me borra toda la visual_matrix. Lo vere mas tarde. Saludos,


Buenisimo, estaba bien excepto por el tercer parámetro de
la función:

Código: Seleccionar todo
- self.visual_matrix = pygame.transform.chop(self.visual_matrix, pygame.Rect(0, row * 20, 10 * 20, 20))
+ self.visual_matrix = pygame.transform.chop(self.visual_matrix, pygame.Rect(0, row * 20, 0, 20))


recién subí el cambio con esa modificación.

Saludos.
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Notapor joksnet » Mar Sep 01, 2009 8:47 am

Hola,

Acabo de terminar lo que faltaba de esta etapa. Incorpore un mensaje de Game Over. Creo que por ahora funciona, pero habria que testearlo un poco en el caso que se haga una linea en la ultima row y se pueda seguir el juego (aunque no por mucho, jeje).

Saludos,
Juan Manuel
joksnet
 
Mensajes: 15
Registrado: Mar Nov 28, 2006 4:28 am


Volver a Asadetris

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados