judelco escribió:En vez de cambiar la prioridad del texto, prueba a cambiar la prioridad del sprite, pongo en capas mas "para atrás"
Mafmaestro escribió:Poque cuando compilo me dice:
main.c
c:/devkitPro/programas/ej01/source/main.c: In function 'main':
c:/devkitPro/programas/ej01/source/main.c:10: error: expected ')' before numeric constant
make[1]: *** [main.o] Error 1
make: *** [build] Error 2
yaguar escribió:Hola a todos e seguido todos los tutos pero tengo una duda en el ultimo tuto colgado el de funciones archivos... como hago para crear otra aplicacion lo e intentado hacer con la misma estructura que la aplicacion 1 pero no se no me sale que tengo que cambiar para que al pulsar el sprite 1 salga la aplicacion 2 por favor ayudarme. (lo del sprite lo digo porque cuando pulsas el sprite 0 sale la aplicacion 1 y tengo otro sprite con el numero 1 que quiero que habra la funcion 2 ayudarmeeeeeee)
Saludos y gracias de antemano.
Alber96 escribió:Se podría hacer una combinación de botones con PALIB??? Me explico, para que la nintendo haga una cosa cuando se le da a un botón sería este código: if (Pad.Newpress.Botón) Orden, en donde Botón sería el botón que quieres pulsar y haga esa orden y Orden es lo que quieres que haga. Pues me pregunto si se podría decir que al pulsar A y B a la vez, por ejemplo, hiciese una cosa???????
if ((Pad.Newpress.A)||(Pad.Newpress.B))
else blablabla...
Alber96 escribió:Se podría hacer una combinación de botones con PALIB??? Me explico, para que la nintendo haga una cosa cuando se le da a un botón sería este código: if (Pad.Newpress.Botón) Orden, en donde Botón sería el botón que quieres pulsar y haga esa orden y Orden es lo que quieres que haga. Pues me pregunto si se podría decir que al pulsar A y B a la vez, por ejemplo, hiciese una cosa???????
if((Pad.Newpress.A)&&(Pad.Newpress.B)){
//lo que quieras que ejecute
}
Plata escribió:Alber96 escribió:Se podría hacer una combinación de botones con PALIB??? Me explico, para que la nintendo haga una cosa cuando se le da a un botón sería este código: if (Pad.Newpress.Botón) Orden, en donde Botón sería el botón que quieres pulsar y haga esa orden y Orden es lo que quieres que haga. Pues me pregunto si se podría decir que al pulsar A y B a la vez, por ejemplo, hiciese una cosa???????if((Pad.Newpress.A)&&(Pad.Newpress.B)){
//lo que quieras que ejecute
}
Salu2
P.D: NO, no he muerto xD
Rigle escribió:Plata escribió:Alber96 escribió:Se podría hacer una combinación de botones con PALIB??? Me explico, para que la nintendo haga una cosa cuando se le da a un botón sería este código: if (Pad.Newpress.Botón) Orden, en donde Botón sería el botón que quieres pulsar y haga esa orden y Orden es lo que quieres que haga. Pues me pregunto si se podría decir que al pulsar A y B a la vez, por ejemplo, hiciese una cosa???????if((Pad.Newpress.A)&&(Pad.Newpress.B)){
//lo que quieras que ejecute
}
Salu2
P.D: NO, no he muerto xD
Mierda, pues mis conocimientos sí se han oxidao un poco xD
Rigle escribió:Plata escribió:if((Pad.Newpress.A)&&(Pad.Newpress.B)){
//lo que quieras que ejecute
}
Salu2
P.D: NO, no he muerto xD
Mierda, pues mis conocimientos sí se han oxidao un poco xD
Rigle escribió:Plata escribió:if((Pad.Newpress.A)&&(Pad.Newpress.B)){
//lo que quieras que ejecute
}
Salu2
P.D: NO, no he muerto xD
Mierda, pues mis conocimientos sí se han oxidao un poco xD
Plata escribió:Bueno, pues hay buenas y malas noticias. Las buenas, ayer saque un poco de fuerza de voluntad para sacar de un cd donde tenia guardado el primer tuto de 2d su contenido (quien me conozca sabe que eso es mucho esfuerzo para tanto vago xD), lo malo que no funciona el disco (ta rayao, error de rebundancia ciclica al intentar copiarlo), lo peor que no me acuerdo de que era lo que queria ir enseñando (lo tenia ya planeao xD), asi que una cosa mejor para todos, me contais que quereis que incluya en los tutos y a partir de hay ya hago los tutos. Solo una cosa, quien lo valla a seguir que aprenda un poco de estructuras (arrays, matrices, como quieras llamarlo, en poco se diferencian entre ellos) por su cuenta, ya que es muy util para esto (almenos yo lo uso para practicamente todo) y no me voy a parar a explicarlo.
salu2
Sebaguti escribió:Plata , aprovecho el mail para preguntarte si tenes los codigos fuentes del tutorial 10 (Ese en que se hace un pseudo-mini Windows); Justo el mas interesante y no lo puedo hacer.
Salu2
Sebaguti escribió:Hola Judelco
Lo que me interesa seria los archivos graficos en si, por que el code sigue disponible en el foro; Segun recuerdo serian como de 8 a 10 sprites que simulan las ventanas en su ejemplo. Si por ahi los consigues, mucho se agradeceria .
Salu2
judelco escribió:Sebaguti escribió:Hola Judelco
Lo que me interesa seria los archivos graficos en si, por que el code sigue disponible en el foro; Segun recuerdo serian como de 8 a 10 sprites que simulan las ventanas en su ejemplo. Si por ahi los consigues, mucho se agradeceria .
Salu2
Emmm... si estamos hablando del tutorial #10, realmente no hay sprites, plata solo a usado 2 fondos (bg), lo demás es codigo. En su día no puso ninguna imagen, solo el codigo, unas screenshots (que no las imagenes, ojo) de SU compilación y el ejemplo, que eso es lo unico que se a perdido.
PA_CreateSprite(0, 1, (void*)ventapp1_Sprite, OBJ_SIZE_64X64, 1, 0, 1, 2);
PA_CreateSprite(0, 2, (void*)ventapp2_Sprite, OBJ_SIZE_64X64, 1, 0, 64, 2);
PA_CreateSprite(0, 3, (void*)ventapp3_Sprite, OBJ_SIZE_64X64, 1, 0, 128, 2);
PA_CreateSprite(0, 4, (void*)ventapp4_Sprite, OBJ_SIZE_64X64, 1, 0, 192, 2);
PA_CreateSprite(0, 5, (void*)ventapp5_Sprite, OBJ_SIZE_64X64, 1, 0, 1, 66);
PA_CreateSprite(0, 6, (void*)ventapp6_Sprite, OBJ_SIZE_64X64, 1, 0, 64, 66);
PA_CreateSprite(0, 8, (void*)ventapp8_Sprite, OBJ_SIZE_64X64, 1, 0, 192, 66);
PA_CreateSprite(0, 7, (void*)ventapp7_Sprite, OBJ_SIZE_64X64, 1, 0, 128, 66);
Sebaguti escribió:Deberia haber sido mas especifico; Mira el code del archivo Funciones.h en "[NDS][Programación con Palib] 10. Menus, funciones y archivo" y veras las siguientes cargas :PA_CreateSprite(0, 1, (void*)ventapp1_Sprite, OBJ_SIZE_64X64, 1, 0, 1, 2);
PA_CreateSprite(0, 2, (void*)ventapp2_Sprite, OBJ_SIZE_64X64, 1, 0, 64, 2);
PA_CreateSprite(0, 3, (void*)ventapp3_Sprite, OBJ_SIZE_64X64, 1, 0, 128, 2);
PA_CreateSprite(0, 4, (void*)ventapp4_Sprite, OBJ_SIZE_64X64, 1, 0, 192, 2);
PA_CreateSprite(0, 5, (void*)ventapp5_Sprite, OBJ_SIZE_64X64, 1, 0, 1, 66);
PA_CreateSprite(0, 6, (void*)ventapp6_Sprite, OBJ_SIZE_64X64, 1, 0, 64, 66);
PA_CreateSprite(0, 8, (void*)ventapp8_Sprite, OBJ_SIZE_64X64, 1, 0, 192, 66);
PA_CreateSprite(0, 7, (void*)ventapp7_Sprite, OBJ_SIZE_64X64, 1, 0, 128, 66);
Seguramente en el directorio GFX debe haber 7 sprites que representan las ventanas.
Hay un link para bajar el ejemplo completo, pero esta vacio :
http://www.zonahomebrew.com/modules.php?name=Downloads&d_op=getit&lid=79
magic black 2009 escribió:¿plata, podrías poner nuevos tutos para el sonido, que me han dicho que ha cambiado totalmente desde que los redactastes?
judelco escribió:PLATA, podrías adaptar o crear tutos nuevos para el apartado de sonido? Las palib han cambiado muchísimo y ya no se usa las antiguas librerias, ahora hay que usar ASLIB... xD (y encima hay 3 variantes)
Suikoden77 escribió:yo tengo una duda sobre sprites, en concreto con alpha blending. La cuestion es que en mi juego quiero que un sprite se enrojezca, y para ello había pensado encima del sprite crear uno igual con el mismo contorno que el sprite a enrojecer pero de color rojo completo, y luego variar el alpha de ese ultimo sprite. Sin embargo, a la hora de correrlo en la nds, el sprite que queda detrás desaparece y el sprite completo en rojo hace alpha blending sobre el background de detras. Alguna manera de solucionar esto?
#include <PA9.h>
// PAGfx Include
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"
int main(void){
PA_Init(); //PAlib inits
PA_InitVBL();
PA_LoadSpritePal(0, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(0, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
50, 50); // X and Y position on the screen
PA_LoadSpritePal(1, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(1, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
100, 100); // X and Y position on the screen
u8 np;
u16 r, g, b;
for (np = 0; np <= 254 ; np++ )
{
r = sprite0_Pal[np]&31;
g = (sprite0_Pal[np]>>5)&31;
b = (sprite0_Pal[np]>>10)&31;
if ( !(r == 0 && g == 0 && b == 0) ) //Si no es el color transparente
{
r = r + 12; if ( r > 31 ) r = 31; //Aumenta su rojo
}
PA_SetSpritePalCol(0, 0, np, PA_RGB(r,g,b));
}
while(1) // Infinite loops
{
PA_WaitForVBL();
}
return 0;
}
Sebaguti escribió:Suikoden77 escribió:yo tengo una duda sobre sprites, en concreto con alpha blending. La cuestion es que en mi juego quiero que un sprite se enrojezca, y para ello había pensado encima del sprite crear uno igual con el mismo contorno que el sprite a enrojecer pero de color rojo completo, y luego variar el alpha de ese ultimo sprite. Sin embargo, a la hora de correrlo en la nds, el sprite que queda detrás desaparece y el sprite completo en rojo hace alpha blending sobre el background de detras. Alguna manera de solucionar esto?
Una forma seria modificando la paleta directamente. El mollusk.png de este ejemplo lo coges de los ejemplos que se instalan con las Palib.
Saludos#include <PA9.h>
// PAGfx Include
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"
int main(void){
PA_Init(); //PAlib inits
PA_InitVBL();
PA_LoadSpritePal(0, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(0, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
50, 50); // X and Y position on the screen
PA_LoadSpritePal(1, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(1, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
100, 100); // X and Y position on the screen
u8 np;
u16 r, g, b;
for (np = 0; np <= 254 ; np++ )
{
r = sprite0_Pal[np]&31;
g = (sprite0_Pal[np]>>5)&31;
b = (sprite0_Pal[np]>>10)&31;
if ( !(r == 0 && g == 0 && b == 0) ) //Si no es el color transparente
{
r = r + 12; if ( r > 31 ) r = 31; //Aumenta su rojo
}
PA_SetSpritePalCol(0, 0, np, PA_RGB(r,g,b));
}
while(1) // Infinite loops
{
PA_WaitForVBL();
}
return 0;
}
#include <PA9.h>
// PAGfx Include
#include "gfx/all_gfx.c"
#include "gfx/all_gfx.h"
int main(void){
PA_Init(); //PAlib inits
PA_InitVBL();
PA_LoadSpritePal(0, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_LoadSpritePal(0, // Screen
1, // Palette number , se esta creando una 2da. paleta en la pantalla 0
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(0, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
50, 50); // X and Y position on the screen
PA_CreateSprite(0, // Screen
1, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
1, // Para el Sprite 1 uso la paleta 1, no la 0
150, 150); // X and Y position on the screen
PA_LoadSpritePal(1, // Screen
0, // Palette number
(void*)sprite0_Pal); // Palette name
PA_CreateSprite(1, // Screen
0, // Sprite number
(void*)mollusk_Sprite, // Sprite name
OBJ_SIZE_32X32, // Sprite size
1, // 256 color mode
0, // Sprite palette number
100, 100); // X and Y position on the screen
u8 np;
u16 r, g, b;
for (np = 0; np <= 254 ; np++ )
{
r = sprite0_Pal[np]&31;
g = (sprite0_Pal[np]>>5)&31;
b = (sprite0_Pal[np]>>10)&31;
if ( !(r == 0 && g == 0 && b == 0) ) //Si no es el color transparente
{
r = r + 12; if ( r > 31 ) r = 31; //Aumenta su rojo
}
PA_SetSpritePalCol(0, 0, np, PA_RGB(r,g,b)); //Afecta solo a la paleta del Sprite 0 en la Pantalla 0, que es la paleta 0.
}
while(1) // Infinite loops
{
PA_WaitForVBL();
}
return 0;
}
judelco escribió:magic black 2009 escribió:¿plata, podrías poner nuevos tutos para el sonido, que me han dicho que ha cambiado totalmente desde que los redactastes?
Si ya lo he dicho yo antes, más arriba.... aqui:judelco escribió:PLATA, podrías adaptar o crear tutos nuevos para el apartado de sonido? Las palib han cambiado muchísimo y ya no se usa las antiguas librerias, ahora hay que usar ASLIB... xD (y encima hay 3 variantes)