// Includes
#include <PA9.h> // Include for PA_Lib
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"
#include "choque.h"
#include "moonlight.h"
#include "zippo.h"
// Function: main()
int main(int argc, char ** argv)
{
PA_Init(); // Initializes PA_Lib
PA_InitVBL(); // Initializes a standard VBL
PA_InitSound(); // Inicia sonido
PA_SetSoundVol(200);
PA_PlaySimpleSound (1,moonlight);
PA_InitText (0,0); // Inicia Texto
PA_SetTextTileCol (0,2); //color texto
//cargamos fondos
PA_EasyBgLoad(0,3,bg0);
PA_Init16bitBg(1,3);
PA_Load16bitBitmap(1,bg1_Bitmap);
// variables x, y para posición de sprites
s32 x=112, y=80;
bool up=true, down=false, left=false, right=false, select=false, bgs = true;
int counter = 0;
//cargamos paletas
PA_LoadSpritePal(0,0,(void*)zippopal_Pal);
//cargamos sprite inicial y animamos
PA_CreateSprite(0,0,(void*)zippo_Sprite,OBJ_SIZE_32X32,1,0,x,y);
PA_SetSpritePrio(0,0,2); // coloca el sprite en la capa 2 para que quede detrás del texto
PA_StartSpriteAnim(0,0,0,1,5);
// Infinite loop to keep the program running
while (1)
{
while (Pad.Held.Down){ // bajar
//animamos y actualizamos posición
if (down == false){
down=true;
up=false;
left=false;
right=false;
PA_StopSpriteAnim(0,0);
PA_StartSpriteAnim(0,0,0,1,5);
}
if (x<=224 && y<=160 && x>=0 && y>=0){ //evitamos que se salga de la pantalla
y+=1;
PA_SetSpriteXY(0,0,x,y);
}else{
PA_PlaySimpleSound(0,choque);
if (x>224) x=224;
if (y>160) y=160;
if (x<0) x=0;
if (y<0) y=0;
}
//salimos del while
break;
}
while (Pad.Held.Up){ // subir
//animamos y actualizamos posición
if (up == false){
down=false;
up=true;
left=false;
right=false;
PA_StopSpriteAnim(0,0);
PA_StartSpriteAnim(0,0,2,3,5);
}
if (x<=224 && y<=160 && x>=0 && y>=0){
y-=1;
PA_SetSpriteXY(0,0,x,y);
}else{
PA_PlaySimpleSound(0,choque);
if (x>224) x=224;
if (y>160) y=160;
if (x<0) x=0;
if (y<0) y=0;
}
//salimos del while
break;
}
while (Pad.Held.Left){ // izquierda
//animamos y actualizamos posición
if (left == false){
down=false;
up=false;
left=true;
right=false;
PA_StopSpriteAnim(0,0);
PA_StartSpriteAnim(0,0,4,5,5);
}
if (x<=224 && y<=160 && x>=0 && y>=0){
x-=1;
PA_SetSpriteXY(0,0,x,y);
}else{
PA_PlaySimpleSound(0,choque);
if (x>224) x=224;
if (y>160) y=160;
if (x<0) x=0;
if (y<0) y=0;
}
//salimos del while
break;
}
while (Pad.Held.Right){ // derecha
//animamos y actualizamos posición
if (right == false){
down=false;
up=false;
left=false;
right=true;
PA_StopSpriteAnim(0,0);
PA_StartSpriteAnim(0,0,6,7,5);
}
if (x<=224 && y<=160 && x>=0 && y>=0){
x+=1;
PA_SetSpriteXY(0,0,x,y);
}else{
PA_PlaySimpleSound(0,choque);
if (x>224) x=224;
if (y>160) y=160;
if (x<0) x=0;
if (y<0) y=0;
}
//salimos del while
break;
}
if (Pad.Newpress.Select){
// Mostramos creditos
if (select == false){
select=true;
x = 190; y = 73;
PA_SetSpriteXY(0,0,x,y);
PA_OutputSimpleText (0,1,1,"Musica:");
PA_OutputSimpleText (0,1,2," Walking under the Moonlight");
PA_OutputSimpleText (0,1,3," por Eglomer");
PA_OutputSimpleText (0,1,5,"Voz de Zippo:");
PA_OutputSimpleText (0,1,6," Tsuki");
PA_OutputSimpleText (0,1,8,"Graficos:");
PA_OutputSimpleText (0,1,9," Eglomer");
PA_OutputSimpleText (0,1,11,"Programacion:");
PA_OutputSimpleText (0,1,12," Eglomer");
PA_OutputSimpleText (0,1,14,"Basado en:");
PA_OutputSimpleText (0,1,15," Kaizoku no Nikki");
PA_OutputSimpleText (0,9,16," (Diario de un Pirata)");
PA_OutputSimpleText (0,1,17,"www.kaizokunonikki.blogspot.com");
}else{
select=false;
PA_ClearTextBg(0);
}
}
if (Pad.Newpress.Start){
x = 190; y = 73;
PA_SetSpriteXY(0,0,x,y);
PA_ClearTextBg(0); // por si están los créditos activos
PA_StopSpriteAnim(0,0);
PA_OutputSimpleText (0,12,11,"PAUSA");
PA_WaitFor(Pad.Newpress.Start); //pausamos hasta que vuelva a apretar y después reanudamos
if (down == true) PA_StartSpriteAnim(0,0,0,1,5);
else if (up == true) PA_StartSpriteAnim(0,0,2,3,5);
else if (left == true) PA_StartSpriteAnim(0,0,4,5,5);
else if (right == true) PA_StartSpriteAnim(0,0,6,7,5);
PA_ClearTextBg(0);
}
if (Pad.Newpress.L)
if (bgs == true){
PA_StopSound (1);
PA_SetTextTileCol (0,3);
PA_OutputSimpleText (0,1,1,"Cancion detenida"); //Bucle para esperar unos seg antes de borrar el texto
for (counter = 0; counter < 40; counter++)
PA_WaitForVBL();
PA_SetTextTileCol (0,2);
PA_ClearTextBg(0);
bgs = false;
}
if (Pad.Newpress.R)
if (bgs == false){
PA_PlaySimpleSound (1,moonlight);
PA_SetTextTileCol (0,3);
PA_OutputSimpleText (0,1,1,"Walking under the Moonlight");
for (counter = 0; counter < 40; counter++) //Bucle para esperar unos seg antes de borrar el texto
PA_WaitForVBL();
PA_SetTextTileCol (0,2);
PA_ClearTextBg(0);
bgs = true;
}
if (Pad.Newpress.A || Pad.Newpress.B || Pad.Newpress.X || Pad.Newpress.Y)
PA_PlaySimpleSound(2,zippo);
while (Stylus.Held){
// Actualizamos la posición del sprite con la del pad
PA_MoveSprite(0);
x=Stylus.X-16;
y=Stylus.Y-16;
PA_SetSpriteXY(0,0,x,y);
}
PA_CheckLid(); // Pausa el juego si se cierra la pantalla de la DS
PA_WaitForVBL();
}
return 0;
} // End of main()
judelco escribió:Para ser el PRIMERO, está bastante currado. Aunque el nombre.... xDDD Parece de estos softwares que venden en las grandes superficies para los niños pequeños.... "aprende mates con pippo!"
keda escribió:judelco escribió:Para ser el PRIMERO, está bastante currado. Aunque el nombre.... xDDD Parece de estos softwares que venden en las grandes superficies para los niños pequeños.... "aprende mates con pippo!"
Si, bueno, los nombres nunca han sido lo mio...
judelco escribió:Para ser el PRIMERO, está bastante currado. Aunque el nombre.... xDDD Parece de estos softwares que venden en las grandes superficies para los niños pequeños.... "aprende mates con pippo!"
alexpowerup escribió:Bueno da igual lo de Pipo... dejemoslo en SuperCard(Sin Comentarios) xDDD
judelco escribió:Naxer escribió:Se refiere a esto:
Justamente xDDDDDD
Tenia o no razón?