Comenzamos la etapa 2

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

Comenzamos la etapa 2

Notapor hugoruscitti » Sab Jul 18, 2009 4:18 am

Saludos, gracias al aporte de Juanxo (y la función que nos sugirió
Meldron), podemos decir que completamos la etapa 1!

Las tareas que podemos comenzar a realizar
a partir de ahora son las siguientes
(extraído del archivo 'etapas_y_tareas.html':

Código: Seleccionar todo
( ) % Etapa 2
    : Se desarrollan los movimientos básicos de las piezas, el usuario
    : tiene que poder mover una pieza por la pantalla usando los
    : direccionales del teclado y rotar las mismas con las teclas 'x' y
    : 'z'.
    :
    : Si la ficha llega abajo queda bloqueada hacia abajo, pero igualmente
    : se tiene que poder mover de izquierda a derecha.
    :
    : Se relaciona con la etapa uno porque el usuario puede pulsar
    : "Escape" y se le tiene que mostrar la pantalla del ejemplo anterior,
    : en donde pulsando una tecla se cierra toda la aplicación.
    :
    : Hay solo un tipo de pieza (la "L").
    :
    ( ) Extender el sistema de fuentes
        ( ) crear un directorio para recursos de fuentes tipográficas
        ( ) que la función de imprimir cadenas soporte saltos de linea.
    ( ) crear escena de juego
    ( ) crear una ficha
    ( ) permitir el movimiento de la ficha
    ( ) aplicar restricciones de movimiento como los bordes
    ( ) implementar las rotaciones hacia izquiera o derecha
    ( ) restringir las rotaciones en los bordes
    ( ) mejorar el sistema de escenas para permitir cambios de una a otra
    ( ) hacer que el usuario pueda ir a otra escena (la de la etapa anterior)
    pulsando la tecla ESC.
        ( ) Imprimir un mensaje que indique esto en la ventana.


¿Alguien se ofrece a realizar alguna de estas tareas?.

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

Notapor Juanxo » Sab Jul 18, 2009 11:26 am

Yo voy a mirar en cual podría aportar y me apunto a esa. Luego comentaré cual puedo hacer.

Además, me ha surgido una dudilla en cuanto a lo de la rotación:

implementar las rotaciones hacia izquiera o derecha


¿Esto significa que pueden rotar hacia ambos lados?.¿La rotación va a ser sobre su centro, o la ficha se va a mover alguna casilla al ser rotada?

Un saludo
Juanxo
Avatar de Usuario
Juanxo
 
Mensajes: 437
Registrado: Sab Ene 31, 2009 2:34 am
Ubicación: Madrid(España)

Notapor hugoruscitti » Sab Jul 18, 2009 7:55 pm

Juanxo escribió:¿Esto significa que pueden rotar hacia ambos lados?.¿La rotación va a ser sobre su centro, o la ficha se va a mover alguna casilla al ser rotada?


Si, exacto, la idea está mucho mas clara en la
documentación:

http://asadetris.googlecode.com/hg/doc/ ... #controles

y la ficha gira siempre desde el centro.
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina

Notapor joksnet » Dom Jul 19, 2009 9:27 am

Hola.

Me parece algo importante hacer el menu principal funcional, y no lo encontre en ninguna de las etapas. Quizas porque nos centramos en hacer el juego funcional primero. Pero una buena manera de llamar a las escenas que querramos es hacer un menu. Yo me ofrezco para desarrollar algo basico.

EDIT: Ya esta hecho en una version muy basica. Se mueve unicamente con las teclas.

PD: Estoy en la otra parte del mundo, en donde son 5 horas mas, por lo cual le parezca que me levanto temprano. No es asi.

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

Notapor Juanxo » Lun Jul 20, 2009 12:13 pm

Acabo de hacer un par de modificaciones al proyecto. Tengo un par de comentarios:

-A mi parecer, el tener las clases Board y Piece en engine me parece que puede dar lugar a confusiones.. ¿Por qué entonces existe utils, si se supone que esas funciones hacen las veces de mini-engine?
Yo creo que estaría mejor definir un archivo board y otro piece y meter ahí sus clases, y las constantes meterlas en utils. Pero si es mejor lo otro, pues se queda así.

-Las colisiones entre piezas y pieza-muro las verificamos en piece o con la matriz de board(self.board). En el segundo caso, como se podría hacer para actualizar la matriz y verificar colisiones?

Eso es todo..... de momento xD
Avatar de Usuario
Juanxo
 
Mensajes: 437
Registrado: Sab Ene 31, 2009 2:34 am
Ubicación: Madrid(España)

Notapor hugoruscitti » Lun Jul 20, 2009 1:29 pm

Juanxo escribió:Acabo de hacer un par de modificaciones al proyecto. Tengo un par de comentarios:

-A mi parecer, el tener las clases Board y Piece en engine me parece que puede dar lugar a confusiones.. ¿Por qué entonces existe utils, si se supone que esas funciones hacen las veces de mini-engine?


No tendríamos que tener un engine en realidad, me parece
que el juego no es tan grande como para crear algo
así. Las funciones de "utils.py" son funciones que
utilizamos con frecuencia para cargar imágenes o
fuentes, me parece útil tenerlas de esa forma por
comodidad.

Juanxo escribió:Yo creo que estaría mejor definir un archivo board y otro piece y meter ahí sus clases, y las constantes meterlas en utils. Pero si es mejor lo otro, pues se queda así.


Si, podemos hacer ese cambio: crear archivos piece.py y
board.py para representar los elementos del juego. Pero
utils.py me parece que está bien...

Juanxo escribió:-Las colisiones entre piezas y pieza-muro las verificamos en piece o con la matriz de board(self.board). En el segundo caso, como se podría hacer para actualizar la matriz y verificar colisiones?

Eso es todo..... de momento xD


Las colisiones las verificaríamos en el ambiente del objeto
Board, es decir, la pieza solamente solicita a Board si
puede colocar o no una pieza en determinada posición. Es
Board quien analiza las colisiones. Y cuando la pieza
tiene que reposar en el escenario se le indica a Board para
que actualice su matriz.

La idea del sistema de mensajes es: "cada objeto tiene
una responsabilidad, actúa sobre sus objetos y colabora
con otros a través de mensajes".

Digamos, a grandes rasgos, Board gestiona el tablero, tiene
esa responsabilidad. Solamente Board podrá tocar la
matriz de casilleros ocupados, y colabora con las piezas
indicando si se puede utilizar una posición o no.

Posiblemente hoy a la noche pueda escribir algo de esta
funcionalidad, les aviso luego de crear una estructura
general de los dos objetos.

Saludos.

PD: felicitaciones a todos, nos va a quedar un gran juego !...
Avatar de Usuario
hugoruscitti
Site Admin
 
Mensajes: 1242
Registrado: Dom Jul 30, 2006 3:57 am
Ubicación: Buenos Aires, Argentina


Volver a Asadetris

¿Quién está conectado?

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