Hola a todos.
He de decirlo: me he cansado de sdl... todo el rato has de usar librerias externas, algunas de ellas que no funcionan bien o almenos yo no se usarlas, como ttf, asi que me he decidido por allegro. Lo que llevo hecho es simplon, la nave se mueve como antes pero ahora sale un mapa aleatorio, un mar con islas. Deberian salir 3 tipos de islas pero por alguna razon la funcion rand() no hace el resultado esperado. Ruego que alguien pueda mirar esa funcion a ver que hay mal. Tambien se nota un tintineo de la pantalla, si alguien ve el motivo...
Como siempre estoy abierto a criticas y sugerencias, sobretodo criticas, ;)
Un saludo
El archivo:
http://www.mundosgm.com/Allegro-0.01a.rar
Mi WinRar no consigue descomprimir ese archivo, como si estuviera corrupto.
Es solo a mi?
C:\WUTemp>unrar e Allegro-0.01a.rar
UNRAR 3.00 beta 7 freeware Copyright © 1993-2002 Eugene Roshal
Extracting from Allegro-0.01a.rar
alleg40.dll already exists. Overwrite it ?
[Y]es, [N]o, [A]ll, n[E]ver, [R]ename, [Q]uit A
Extracting alleg40.dll OK
Extracting main.cpp OK
Extracting main.o OK
Extracting SS2DLFrame.cpp OK
Extracting SS2DLFrame.h OK
Extracting SS2DLFrame.o OK
Extracting SS2DLMakeGameContext.cpp OK
Extracting SS2DLMakeGameContext.h OK
Extracting SS2DLMakeGameContext.o OK
Extracting SS2DLSprite.cpp OK
Extracting SS2DLSprite.h OK
Extracting SS2DLSprite.o OK
Extracting Final project.dev OK
Extracting Final project.exe OK
Extracting Final project.ico OK
Extracting Final project.layout OK
Extracting Final_project_private.h OK
Extracting Final_project_private.rc OK
Extracting Final_project_private.res OK
Extracting Makefile.win OK
Extracting avion.bmp OK
Extracting chip1.bmp OK
Extracting chip2.bmp OK
Extracting chip3.bmp OK
Extracting chip4.bmp OK
All OK
C:\WUTemp>
pero no me rula, arranca y se va la pantalla
Puede ser que este corrupto el rar, :S, muy raro, os pongo un zip:
http://www.mundosgm.com/Allegro-0.01a.zip
Definitivamente el fichero RAR no esta muy bien.
Yo he conseguido descomprimirlo con el Total Commander, pero me ha hecho cosas raras.
Funcionar me funciona.
Respecto a pq Rand te falla.... ni idea, pero podria ser pq solo te devuelve valores entre 0 y 1, y por eso solo sale agua y la isla 1. Lo has debugeado?
Y los parpadeos negros tambien me los pega.... aunque solo al principio... no tengo ni idea de que puede ser.... ¿te los pega tambien aunque pongas el juego en modo ventana?
Ya se pq te falla lo de las islas
Citar
if(randn == 1)
{
map- [y] = chip1;
}
if(randn == 2)
{
map - [y] = chip2;
}
if(randn == 3)
{
map - [y] = chip3;
}
else
{
map - [y] = chip4;
}
Al final le estas diciendo que si no es 3 es agua.
Por eso te saca siempre la isla 3 y el agua.
Podrias solucionarlo asi...
Citar
if(randn == 1)
{
map- [y] = chip1;
}
else if(randn == 2)
{
map - [y] = chip2;
}
else if(randn == 3)
{
map - [y] = chip3;
}
else
{
map - [y] = chip4;
}
He hecho esto:
if(randn == 1)
{
map
- [y] = chip1;
}
else if(randn == 2)
{
map - [y] = chip2;
}
else if(randn == 3)
{
map - [y] = chip3;
}
else if(randn != 1 && randn != 2 && randn != 3)
{
map - [y] = chip4;
}
Y ya funciona bien, mil gracias LordTrancos. Ahora he puesto la version corregida y ademas de 24bits en ventana, parpadea menos pero igualmente parpadea... sigo escuchando criticas. Gracias y un saludo a todos
http://www.mundosgm.com/Allegro-0.01a.zip
Mejor utiliza un switch:
switch( randn ) {
case 1: map[x][y] = chip1; break;
case 2: map[x][y] = chip2; break;
case 3: map[x][y] = chip3; break;
default: map[x][y] = chip4;
}
== Edit ==
Te sobra el último if. Está claro que si ha llegado ahí es porque no es ninguno de los valores anteriores.
Ya lo he puesto con el codigo de ses, funciona bien igualmente. Me he fijado que los parpadeos se deben ni mas ni menos que al messenger, :S, o en su defecto, a la actualizacion del escritorio producida por el parpadeo de la barra de tareas cuando una aplicacion hace algo y no tiene el foco... no lo entiendo pero parece asi. Probar a ejecutarlo con el messenger apagado y vereis...
Un saludo
Cita de: StraTYa lo he puesto con el codigo de ses, funciona bien igualmente. Me he fijado que los parpadeos se deben ni mas ni menos que al messenger, :S, o en su defecto, a la actualizacion del escritorio producida por el parpadeo de la barra de tareas cuando una aplicacion hace algo y no tiene el foco... no lo entiendo pero parece asi. Probar a ejecutarlo con el messenger apagado y vereis...
Un saludo
Me imaginaba algo asi.... por eso te preguntaba si te pasaba al tener el programa en una ventana.
Yo no tengo el messenger; pero tengo el zonealarm y el taskmanager que tienen iconos que se actualizan en el tray.
EDIT: la ultima version que has puesto no me va.
Yo tambien tengo el zonealarm y sin embargo ese no me da problemas... es un error un poco extraño, por cierto, la ultima version si que me va, he probado de descargala y todo, que problema tienes?
Un saludo
Pos algo raro pasa, pq la vieja (la del rar) tampoco me va ahora <_<
Basicamente lo que sucede es que el programa arranca y cuando a duras penas se ha puesto a pantalla completa se cierra. Vamos dura un parpadeo.
:S, borra las que tengas y vuelvela a descargar de 0 a ver... no sea que se este sobreescribiendo mal o algo
Un saludo
No, no era problemas de sobreescribir mal algo.
De hecho, he reiniciado, me lo he vuelto a bajar, lo he descomprimido en una carpeta nueva y sigue sin ir :huh:
Cita de: sésTe sobra el último if. Está claro que si ha llegado ahí es porque no es ninguno de los valores anteriores.
Ciertamente, Strat, parece que necesitas un poco más de base algorítima antes de ponerte a programar.
A mí me funciona perfectamente ;)
Mars: Si todo fuera base algorítmica tú estarías programando siempre :P
La ultima version:
http://geocities.com/stratdes/v0.01a.zipEspero sugerencias, criticas, insultos.... etc, :P
Un saludo
Funciona bien.
Cosas "malas" (algunas supongo que será porque aún no está acabado y otras no sé).
El avión se mueve muy rápido.
La ventana parpadea. Es como si otra ventana que hubiera detrás la estuviera jodiendo (nunca mejor dicho :lol:).
Finalmente, las balas traspasan los aviones (que no explotan, claro), cuando en realidad las balas deberían desaparecer del mapa al colisionar.
Y nada más... ¡ah si!, Keep up the good work. ;)
Saludos.
Las balas no traspasan los aviones, :S, lo que pasa es que si disparas 10 balas a la vez y explota un avion, pues como mucho desaparecen 2 balas, :S.
Un saludo
PD: Prueba a apretar muy poco el boton, que solo salga una bala por cañon, y veras que desaparece, ;)
Otra version, esta vez con una tabla de datos arriba, mas lento el avion (por ti bers, :P), ya no parpadea tampoco (esto era culpa de la dll de allegro, he metido la version 4.0.30 en vez de la 4.0.0 y va bien), y ya no eres inmortal, cuando se te agotan las vidas pone "TERMINADO" y has de pulsar escape (cosa que te hace abandonar amablemente el juego).
http://geocities.com/stratdes/v0.01a.zipAle me voy a la piltra
PD: Si, la tabla marron es horriblemente horrible, pero si alguien la hace mejor estoy abierto a aportaciones, :P
Saludos
Ehh Ehhh!
Solo le falta la musiquilla! :D
Un Saludete (uoh)
Muy buenas.
La verdad no te esta quedando nada mal. Como dicen por ahi ahora solo te queda musiquita e irle poniendo "picholondreces" que digo yo xDD (mas armas, en vez de numero de vidas quedaría guapo barra de energía).......
Lo que si al ser un juego de aviones, dale movimiento un poco al avion. Demomento lo tienes con un tile estático que se mueve por la pantala, pero nada mas. No se si me explico.
Weno, q te esta quedando muy bien xDD
SALUDOS ^^