Miren estoy haciendo un travajito, pero me sale un estraño error. Aqui les dejo el codigo, la aplicacion compilada y unas imagenes de el problema, haver si alguien me puede solucionar el problem.
http://www.megaupload.com/?d=F594U9NJ
para descargarse la aplciacion compilada.
El codigo:
#include <PA9.h> #include "gfx/all_gfx.c" #include "gfx/all_gfx.h" //-------------------------------------------------------------------------------------------------- // Función main int main(int argc, char ** argv) { PA_Init(); PA_InitVBL(); //-------------------------------------------------------------------------------------------------- PA_EasyBgLoad(1, 1, BG1); PA_EasyBgLoad(1, 2, BG2); PA_EasyBgLoad(1, 3, BG3); PA_EasyBgLoad(0, 1, BG1); PA_EasyBgLoad(0, 2, BG2); PA_EasyBgLoad(0, 3, BG3); PA_InitParallaxY(0, 0, 256, 192, 128); PA_InitParallaxY(1, 0, 256, 192, 128); s32 scroll = 0; //-------------------------------------------------------------------------------------------------- PA_LoadSpritePal(0, 0, (void*)empezar_Pal); PA_LoadSpritePal(0, 0, (void*)creditos_Pal); PA_LoadSpritePal(0, 0, (void*)finalizar_Pal); PA_LoadSpritePal(0, 0, (void*)VolberMenu_Pal); // Aora los ponemos en pantalla PA_CreateSprite(0, 1,(void*)empezar_Sprite, OBJ_SIZE_64X32,1, 0, 95, 20); PA_CreateSprite(0, 2,(void*)creditos_Sprite, OBJ_SIZE_64X32,1, 0, 95, 80); PA_CreateSprite(0, 3,(void*)finalizar_Sprite, OBJ_SIZE_64X32,1, 0, 95, 140); //-------------------------------------------------------------------------------------------------- // Bucle infinito while (1) { //-------------------------------------------------------------------------------------------------- // Esto es para ael movimiento de el Fondo scroll += 1; PA_ParallaxScrollY(0, -scroll); PA_ParallaxScrollY(1, -scroll); //-------------------------------------------------------------------------------------------------- if(PA_SpriteTouched(1)){ PA_EasyBgLoad(0, 3, escritorio); PA_DeleteSprite(0, 1); PA_DeleteSprite(0, 2); PA_DeleteSprite(0, 3); // PA_CreateSprite(0, 4,(void*)cerrar_Sprite, OBJ_SIZE_32X32,1, 0, 190, 10); } //-------------------------------------------------------------------------------------------------- if(PA_SpriteTouched(2)){ PA_InitText(1, 0); PA_InitText(0, 0); PA_EasyBgLoad(1, 0, creditos1); PA_EasyBgLoad(0, 0, creditos0); s32 scrollx = 0; s32 scrolly = 0; PA_DualEasyBgScrollXY(3, scrollx, scrolly); PA_DeleteSprite(0, 1); PA_DeleteSprite(0, 2); PA_DeleteSprite(0, 3); PA_CreateSprite(0, 4,(void*)VolberMenu_Sprite, OBJ_SIZE_64X32,1, 0, 190, 160); PA_CreateSprite(0, 3,(void*)finalizar_Sprite, OBJ_SIZE_64X32,1, 0, -3, 162); } //-------------------------------------------------------------------------------------------------- if(PA_SpriteTouched(3)){ // PA_EasyBgLoad(0, 0, fondo_creditos); // PA_DeleteSprite(0, 1); // PA_DeleteSprite(0, 2); // PA_DeleteSprite(0, 3); } //-------------------------------------------------------------------------------------------------- PA_WaitForVBL(); } return 0; }
Y aqui unas imagenes:
asi es el menu asi es si le damos a la primera opcion
Las demas opciones no tienen errores, bueno, la segunda, por que la tercera, ni la he empezado.
Espero que me puedan ayudar.
Gracias, adios.
I like:
Bueno
Sobre lo de que aparezca tan raro, prueba a poner lo de PA_EasyBgLoad(bla,bla,bla...); junto con PA_DeleteBg(bla,bla,bla...); para eliminar los fondos del menu. Lo mismo con las demas opciones.
Vamos, quedaria asi:
Despues lo de PA_InitText(bla,bla,bla...); te recomiendo que lo pongas en el int main, porque si lo vas a cargar solo con ifs, lo vas a tener que cargar mas veces cada vez que lo necesites, y asi ahorras tiempo ;)
Street Fighter X Tekken Mobile CMV 2
Gracias
lo de el PA_DelateBg(); ya lo conocia, pero no savia usarlo, aora ya me as enseado a usarlo, garcias. Pero por cierto, como impido que el fondo d la primera opcion se mueva?
I like:
Seguro
Que hay varias maneras de hacerlo, aunque podrias crear una variable, como, por ejemplo:
Y sustituyes esas variables por los numeros correspondientes en PA_InitParallaxY(bla,bla,bla...); y despues, donde eliminas los bgs, pues pones que esos valores sean de 0, y asi ya no se mueven. No se si funcionara, puesto que no suelo usar Parallax, pero por lo menos te dara una idea ;)
Street Fighter X Tekken Mobile CMV 2
Pongas lo que pongas,
hagas lo que hagas, de toda la vida un fondo a velocidad 0 se queda quieto.
Anda que, que no se os ocurran estas cosas... xD.
Salu2
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.
pero no es que no
se nos ocurran, lo que pasa es que quiero que el fondo se mueba, pero que cuando le de a las opciones, que los fondos desaparezcan junto al mivimiento, osea que el fondo de la primera opcion no se mueba,p ero el de el menu si.
I like: