Ejemplo Con Animales Y Sonidos.POO


Objetivo: Ejemplo Con Animales Y Sonidos.POO
Hola!.

Con los gráficos y sonidos del juego Simón que Julio nos ha subido hace poco, he hecho otra cosa parecida.
Sin el juego del Simón hubiera sido difícil de hacer. Ademas de motivar.

En este caso, he usado clases, la clase animal y la clase por así decirla, grupoanimales.
En este ejemplo, el orden en que aparecen los animales es distinto cada vez que lo inicias. (Solo una vez)

Solo ha quedado un método en el formulario que tengo que añadir a una clase.
Con este ejemplo, había pensado hacer algo como un juego de encontrar la pareja.

Como es normal y por recomendación que nuestro compañero y administrador, Jesús. Nos dijo un día,
sera mejor dibujarlos en un control DrawingArea y no usar muchos botones.

Gracias a este ejemplo, he aprendido a usar mejor las colecciones,los contenedores y mejorar la POO.
Y naturalmente, practicar gambas que es lo más importante!.


Saludos

Objetivo: Re: Ejemplo Con Animales Y Sonidos.POO
Shell:

Citar:
había pensado hacer algo como un juego de encontrar la pareja.

Buena idea

Saludos

Objetivo: Re: Ejemplo Con Animales Y Sonidos.POO
Shell:

He detectado un bug... te cuento.

He creado el ejecutable ".gambas" y ya fuera del ide, ejecuto en la consola
$ ./AnimalesYSonidos.gambas
Y no se ejecuta bien, ya que no salen las imagenes ni los sonidos.

El error es este:
Public Sub Inicializar_variables()

ruta_imagenes = Application.Path &/ "Imagenes/"
ruta_sonidos = Application.Path &/ "Sonidos/"

End


Estas usando la ruta "Application.path", que funciona bien en el ide, pero cuando se compila a codebyte no funciona...


Solución:

Me ha pasado en otras aplicaciones, y lo resuelvo asi:
- Al iniciar el programa, lo que hago es copiar los archivos que necesito del proyecto (los de la carpeta "DATOS"), al directorio "/tmp/loquesea", y los llamos con esa ruta.

En tu programa lo que he cambiado el es "módulo"

' gambas module file

' Rutas donde se encuentras las imágenes y los sonidos

Public ruta_imagenes As String
Public ruta_sonidos As String

Public Sub Inicializar_variables()

copiaArchivo(Application.Path &/ "Imagenes/01_cat.png", "/tmp/")
copiaArchivo(Application.Path &/ "Imagenes/02_pig.png", "/tmp/")
copiaArchivo(Application.Path &/ "Imagenes/10_chicken.png", "/tmp/")
copiaArchivo(Application.Path &/ "Imagenes/04_hippopotamus.png", "/tmp/")
copiaArchivo(Application.Path &/ "Sonidos/cerdo.ogg", "/tmp/")
copiaArchivo(Application.Path &/ "Sonidos/gallina.ogg", "/tmp/")
copiaArchivo(Application.Path &/ "Sonidos/gato.wav", "/tmp/")
copiaArchivo(Application.Path &/ "Sonidos/hipopotamo.ogg", "/tmp/")

ruta_imagenes = "/tmp/" ' Application.Path &/ "Imagenes/"
ruta_sonidos = "/tmp/" ' Application.Path &/ "Sonidos/"

End

Public Sub copiaArchivo(RutayNombreOrigen As String, rutaDestino As String)

Try Copy RutayNombreOrigen To rutaDestino & File.Name(RutayNombreOrigen)

End


cambios_modulo_variables
Te adjunto el "parche", para que se vea los cambios que he hecho

Enlace

(no me deja subirlo al foro, por la extensión)

Objetivo: Re: Ejemplo Con Animales Y Sonidos.POO
Gracias Julio.

Tengo que comentarte algo sobre los archivos. En este caso son 4 por cada tipo. Sonido e imagen.
Imagina que tengo una cantidad razonable de imágenes y sonidos de animales.
No seria práctico escribir muchas lineas de código para copiarlos..

Sería mas fácil almacenar los nombres de los archivos en un array.
Y luego ir uno por uno copiandolos mediante un For Each a una ruta concreta.

No tenía ni idea de ese problema de la ruta a la hora de crear el ejecutable.
Que por cierto, el archivo que se crea es algo grande.

Saludos

Objetivo: Re: Ejemplo Con Animales Y Sonidos.POO
Shell:

Citar:
Imagina que tengo una cantidad razonable de imágenes y sonidos de animales.
No seria práctico escribir muchas lineas de código para copiarlos..

Sería mas fácil almacenar los nombres de los archivos en un array.
Y luego ir uno por uno copiandolos mediante un For Each a una ruta concreta.

En ese caso, lo mejor es comprimir todos los archivos en un solo tar.gz (o .zip) , y que el programa se encargue de descomprimirlo. Este sistema lo use en mis programas del generador de carnet, diplomas y orlas, comprimiendo las plantillas que contenian muchas imágenes y archivos .svg

Saludos


Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.0879s (PHP: 12% SQL: 88%)
Consultas SQL: 19 - Debug off - GZIP Activado