Genie no solo se puede ejecutar con una inteface como GTK también acepta otras como SDL que es un conocido motor de juegos en 2 dimensiones. Existen también la posibilidad de usar Cairo de GTK.
Este es un ejemplo de como Genie puede ayudarnos a hacer nuestros juegos. En cuanto a las posibilidades, sencillez y velocidad no hay nada comparado a vala. Realizar juegos con pygame es sencillo, con Genie también. ¿La diferencia? Tarde o temprano Python y Pygame te resultaran leeeeeeennnnnttooooooosssssss.
Una pelotita rebota por la pantalla es un buen puerto para zarpar con SDL como bandera y Genie como navío. Descubran nuevos mundos!!!!
Si quereís consultar los comandos de Genie + SDL no dudeis en consultar Valadoc en la sección de SDL. Alli encontrareis los primos SDLGraphics, Mixer, Image, Net,etc. Para buscar comandos en Valadoc se inserta la palabra clave SDL en el buscador superior izquierdo y hay se va desplegando la ayuda.
Para compilar este juego no olvideis que se necesitan instalar las librerias de SDL y SDL graphics para C.
$ sudo apt-get install libsdl1.2-dev
$ sudo apt-get install libsdl-gfx1.2-4
valac --pkg sdl --pkg sdl-gfx -X -lSDL_gfx juego_pelotita.gs
[indent=4]
uses SDL
uses SDLGraphics
screen: unowned SDL.Screen
alto: int16=400
ancho:int16 =600
init
SDL.init(InitFlag.VIDEO)
screen = SDL.Screen.set_video_mode (ancho, alto, 30, SurfaceFlag.FULLSCREEN | SurfaceFlag.DOUBLEBUF | SurfaceFlag.HWACCEL | SurfaceFlag.HWSURFACE)
var fin = false
var y=110
var x=100
var radius=10
var color=1003232242
var mov_x=1
var mov_y=3
while fin == false
event: SDL.Event
while (Event.poll (out event))== 1
if event.type ==SDL.EventType.QUIT
print "adios"
fin= true
break
else if event.type == EventType.KEYDOWN
fin=true
break
if x>ancho do mov_x=-mov_x
if x<0 do mov_x=-mov_x
if y>alto do mov_y=-mov_y
if y<0 do mov_y=-mov_y
x=x+mov_x
y=y+mov_y
Circle.fill_color (screen, x, y, radius, color);
Circle.outline_color_aa (screen, x, y, radius, color);
Rectangle.fill_color(screen,0, 0,ancho, alto,1801222)
screen.flip()
SDL.quit()
Este comentario ha sido eliminado por el autor.
ResponderEliminarbuen dia amigo aqui yo otra vez probe este pero me da el siguiente error
ResponderEliminarjuegoGenie.vala.c:7:17: fatal error: SDL.h: No existe el fichero o el directorio
#include <SDL.h>
^
compilation terminated.
error: cc exited with status 256
queria preguntarte por que arriba sale lo siguiente
juegoGenie.vala.c:7:17: ¿por que salen 2 numeros 7 y 17 me imagino que 17 es la linea pero el 7?
Seguramente no tengas instalados los vapis de SDL los tienes en la página Valadoc.
ResponderEliminarLos números corresponden a la linea y columna de error pero del archivo .c generado no de nuestro código genie.
Gracias por lo de la fila y columna ya que no sabia bien de que eran esos numeros, por lo otro de seguro me falta instalar algo, gracias.
ResponderEliminar