[NDS][Programación con Palib][2D] 1.Sprites y scroll

Suikoden77 escribió:
Plata escribió:Lo que no me gusta es que me falta algo que se me escapa... Osea, el juego mio se comporta como el original, pero como que es mucho mas facil mi juego que el original... Creo que con un pequeño retardo entre disparos y que los enemigos retrocedan al pegarles un tiro como en el original iria mejor(esto me falta por añadirlo). Haber si corrijo una lista de bugs y cosas por añadir bastante larga y saco una demo pa que veais.

salu2


queremos que salga ya!

Por mi parte yo ya estoy con las funciones finales tambien.. se puede decir que el modo una consola está casi acabado (me faltan de incluir las reglas de cada carta.. son 25 y ya llevo 6). Tambien me falta pedir permiso al autor por el copyright, alguien que sepa alemán? si no se lo pediré en ingles (mas le vale decirme que me deja.. si no no podre presentarlo). De todas formas, tendría problemas si siguiera el proyecto aunque no lo fuera a presentar a concurso?.
Tambien estoy viendo ejemplos de liblobby con lo que tambien incluire para el concurso un modo wifi.. que será el modo mas natural de jugar.
corto y cambio


puedes usar un traductor como los del google o algo por el estilo XD
Quitando que son una completa mi***da, que algunas palabras no las reconoce y que las de un modo muy español en vez de adaptarlo a la expresion alemana... Pueden servir XD
amchacon escribió:Quitando que son una completa mi***da, que algunas palabras no las reconoce y que las de un modo muy español en vez de adaptarlo a la expresion alemana... Pueden servir XD


Ya, pero en eso sabes a lo que te arriesgas, pero por lo menos, llevas algo en alemán, otra alternativa es apuntarte a una academia, o conocer a alguien que vaya a una academia, y decirle al profesor/a, que te lo traduzca.
carlo999 escribió:
Plata escribió:
carlo999 escribió:Mira mew he enterado ke ikau a abandonado el proyecto de DSme [flipa] [flipa] , necesito hablar contigo te envio un mensage con mi messenger???


Pues mal te has enterado. Mikau sigue en el proyecto, y no eres el primero que me lo pregunta.

Salu2


Pues el lo ke dice aki
http://nds.scenebeta.com/noticia/ds-me


Claro, seguro ke saben mas los del foro que yi ke estoy en el proyecto, nos ha jodido... xDDDD

Salu2
como puedo hacer que los mapas aparezcan arriba?? porque he intentado pero no soy capaz de que se desplace bien hacia la derecha hace el Michael Jackon. Pongo el Código y me decis porque esta mal o ocurre esto. Haber si me me ayudais poniendo el codigo correctamente o diciendome el error:

main.c escribió:#include <PA9.h> // Include for PA_Lib
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"

typedef struct{
s32 x, y;
s32 scrollx, scrolly;
} persotype;
persotype personaje;

// Function: main()
int main(int argc, char ** argv)
{
PA_Init(); // Initializes PA_Lib
PA_InitVBL(); // Initializes a standard VBL

// Iniciamos el texto
PA_InitText(0, 1);

//cambiamos el color
PA_SetTextCol(0,//pantalla
15, //Rojo
15, //Verde
30 //Azul
);
PA_OutputSimpleText(0, 1, 1, "Juego creado por Jesus Oliva Morales");

PA_EasyBgLoad(1, 3, mapa); //cargo el mapa



personaje.x = 50;
personaje.y = 50;
//los valores del scroll...
personaje.scrollx = 1;
personaje.scrolly = 1;

PA_LoadSpritePal(1, 0, (void*)sprite0_Pal);


PA_CreateSprite(1, 1,(void*)personaje_Sprite, OBJ_SIZE_32X32,1, 0, personaje.x, personaje.y);

while (1)
{

// todo el royo de antes...
if (Pad.Newpress.Up){

PA_SetSpriteHflip(1, 1, 1);

PA_SetSpriteAnim(1, 1, 1);

PA_StartSpriteAnim(1,1,1,2,5);
}



if (Pad.Held.Up){

personaje.y -=1;
}



else if (Pad.Released.Up){
PA_StopSpriteAnim(1, 1);


PA_SetSpriteAnim(1,1,1);
}






if (Pad.Newpress.Down){
PA_SetSpriteHflip(1, 1, 1);

PA_SetSpriteAnim(1, 1, 6);

PA_StartSpriteAnim(1, 1, 6, 8, 5);
}



if (Pad.Held.Down){
personaje.y +=1;
}



else if (Pad.Released.Down){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1,1,6);

}






if (Pad.Newpress.Left){

PA_SetSpriteHflip(1,1,1);


PA_SetSpriteAnim(1, 1, 3);

PA_StartSpriteAnim(1, 1, 3, 5, 5);

}



if (Pad.Held.Left){

personaje.x -=1;
}



else if (Pad.Released.Left){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1, 1, 3);

}






if (Pad.Newpress.Right){


PA_SetSpriteHflip(1,1, 1);


PA_SetSpriteAnim(1,1,3);

PA_StartSpriteAnim(1,1,3,5,5);
}


if (Pad.Held.Right){

personaje.x +=1;

}

else if (Pad.Released.Right){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1,1, 3);
}


/*aquí hago el scroll*/




//no le dejo salirse del margen izquierdo
if (personaje.x <1){
personaje.x = 1;
}

if (personaje.x <30 && personaje.scrollx > 1){
// hago que no se mueva de esa posicion para que no corra más que el scroll
personaje.x = 30;
personaje.scrollx -=1; // hago scroll a la velocidad que se mueve el sprite
}

if (personaje.x >194){

// hago escroll en x
personaje.x =194;
personaje.scrollx +=1; // hago scroll a la velocidad que se mueve el sprite
}

//no le dejo salirse del margen izquierdo
if (personaje.y <1){
personaje.y = 1;
}

if (personaje.y <30 && personaje.scrolly > 1){
// hago escroll en y
personaje.y = 30;
personaje.scrolly -=1;
}


if (personaje.y >130){
personaje.y =130;
// hago escroll en y
personaje.scrolly +=1;
}

//actualizamos la posicion del sprite
PA_SetSpriteXY(1, 1, personaje.x, personaje.y);

//hacemos scroll en el mapa
PA_LargeScrollXY(1, // pantalla
3, // capa
personaje.scrollx, // scroll en x
personaje.scrolly); // scroll en y


PA_WaitForVBL();
}

return 0;
} // End of main()
Jesús94 escribió:como puedo hacer que los mapas aparezcan arriba?? porque he intentado pero no soy capaz de que se desplace bien hacia la derecha hace el Michael Jackon. Pongo el Código y me decis porque esta mal o ocurre esto. Haber si me me ayudais poniendo el codigo correctamente o diciendome el error:

main.c escribió:#include <PA9.h> // Include for PA_Lib
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"

typedef struct{
s32 x, y;
s32 scrollx, scrolly;
} persotype;
persotype personaje;

// Function: main()
int main(int argc, char ** argv)
{
PA_Init(); // Initializes PA_Lib
PA_InitVBL(); // Initializes a standard VBL

// Iniciamos el texto
PA_InitText(0, 1);

//cambiamos el color
PA_SetTextCol(0,//pantalla
15, //Rojo
15, //Verde
30 //Azul
);
PA_OutputSimpleText(0, 1, 1, "Juego creado por Jesus Oliva Morales");

PA_EasyBgLoad(1, 3, mapa); //cargo el mapa



personaje.x = 50;
personaje.y = 50;
//los valores del scroll...
personaje.scrollx = 1;
personaje.scrolly = 1;

PA_LoadSpritePal(1, 0, (void*)sprite0_Pal);


PA_CreateSprite(1, 1,(void*)personaje_Sprite, OBJ_SIZE_32X32,1, 0, personaje.x, personaje.y);

while (1)
{

// todo el royo de antes...
if (Pad.Newpress.Up){

PA_SetSpriteHflip(1, 1, 1);

PA_SetSpriteAnim(1, 1, 1);

PA_StartSpriteAnim(1,1,1,2,5);
}



if (Pad.Held.Up){

personaje.y -=1;
}



else if (Pad.Released.Up){
PA_StopSpriteAnim(1, 1);


PA_SetSpriteAnim(1,1,1);
}






if (Pad.Newpress.Down){
PA_SetSpriteHflip(1, 1, 1);

PA_SetSpriteAnim(1, 1, 6);

PA_StartSpriteAnim(1, 1, 6, 8, 5);
}



if (Pad.Held.Down){
personaje.y +=1;
}



else if (Pad.Released.Down){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1,1,6);

}






if (Pad.Newpress.Left){

PA_SetSpriteHflip(1,1,1);


PA_SetSpriteAnim(1, 1, 3);

PA_StartSpriteAnim(1, 1, 3, 5, 5);

}



if (Pad.Held.Left){

personaje.x -=1;
}



else if (Pad.Released.Left){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1, 1, 3);

}






if (Pad.Newpress.Right){


PA_SetSpriteHflip(1,1, 1);


PA_SetSpriteAnim(1,1,3);

PA_StartSpriteAnim(1,1,3,5,5);
}


if (Pad.Held.Right){

personaje.x +=1;

}

else if (Pad.Released.Right){
PA_StopSpriteAnim(1, 1);

PA_SetSpriteAnim(1,1, 3);
}


/*aquí hago el scroll*/




//no le dejo salirse del margen izquierdo
if (personaje.x <1){
personaje.x = 1;
}

if (personaje.x <30 && personaje.scrollx > 1){
// hago que no se mueva de esa posicion para que no corra más que el scroll
personaje.x = 30;
personaje.scrollx -=1; // hago scroll a la velocidad que se mueve el sprite
}

if (personaje.x >194){

// hago escroll en x
personaje.x =194;
personaje.scrollx +=1; // hago scroll a la velocidad que se mueve el sprite
}

//no le dejo salirse del margen izquierdo
if (personaje.y <1){
personaje.y = 1;
}

if (personaje.y <30 && personaje.scrolly > 1){
// hago escroll en y
personaje.y = 30;
personaje.scrolly -=1;
}


if (personaje.y >130){
personaje.y =130;
// hago escroll en y
personaje.scrolly +=1;
}

//actualizamos la posicion del sprite
PA_SetSpriteXY(1, 1, personaje.x, personaje.y);

//hacemos scroll en el mapa
PA_LargeScrollXY(1, // pantalla
3, // capa
personaje.scrollx, // scroll en x
personaje.scrolly); // scroll en y


PA_WaitForVBL();
}

return 0;
} // End of main()


ya te respondi por messenjer, aver si os fijais en los errores tontos un poco mas...

saklu2
Plata escribió:aver si os fijais en los errores tontos un poco mas...
El siguiente soy yo xDDDDDDDDD, tengo k mirarme tmb este tuto
hola chicos, no se si esto ira aqui o no, pero se que por aquí pasa bastante gente, y a como tampoco quiero hacer un hilo, lo digo aquí...para los que esten preparando un buen proyecto para el scenery beta 2009, si os da tiempo a lo mejor, os podeis pasar por este otro concurso:
http://www.neoflash.com/forum/index.php?board=126.0
el plazo termina el 20 de agosto,y os aviso, por si os quereis presentar con el mismo proyecto de scenery (si es que lo teneis acabado...)

pues eso, que si os presentais a esto tambien: suerte [oki] [oki]
57 respuestas
1, 2