diff --git a/project/jni/application/pachi/AndroidAppSettings.cfg b/project/jni/application/pachi/AndroidAppSettings.cfg index 283d6f08a..839d83046 100644 --- a/project/jni/application/pachi/AndroidAppSettings.cfg +++ b/project/jni/application/pachi/AndroidAppSettings.cfg @@ -16,7 +16,7 @@ AppHandlesJoystickSensitivity=n AppUsesMultitouch=n NonBlockingSwapBuffers=n RedefinedKeys="SPACE RETURN" -AppTouchscreenKeyboardKeysAmount=2 +AppTouchscreenKeyboardKeysAmount=1 AppTouchscreenKeyboardKeysAmountAutoFire=0 MultiABI=n AppVersionCode=101 diff --git a/project/jni/application/pachi/src/fx.h b/project/jni/application/pachi/src/fx.h index 0cc7f45fc..21841f050 100644 --- a/project/jni/application/pachi/src/fx.h +++ b/project/jni/application/pachi/src/fx.h @@ -6,50 +6,52 @@ SDL_Rect fadingpos; // posicion del objeto que esta desvaneciendose SDL_Rect realfadingpos; // posicion del objeto que esta desvaneciendose en el area de juego float fade_y; -float scanpos_y=R_gamearea_y - (P_h*P_h); +int scanpos_y=0; void respawn() // rutina que hace reaparecer a Pachi { int scanspeed=1500; - SDL_Rect P_oldscansrect[P_h]; - SDL_Rect P_scansrect[P_h]; - SDL_Rect P_srcscan[P_h]; + SDL_Rect P_scansrect; + SDL_Rect P_srcscan; //imprimimos los scans - for(int a=P_h-1;a>=0;a--) - { - P_scansrect[a].x=int(mplayer[dificulty].x+R_gamearea_x);P_scansrect[a].w=mplayer[dificulty].w;P_scansrect[a].h=1; - P_scansrect[a].y=int(scanpos_y+(a*P_h)); - P_srcscan[a].h=1;P_srcscan[a].w=mplayer[dificulty].w;P_srcscan[a].x=(mplayer[dificulty].w*(mplayer[dificulty].frame));P_srcscan[a].y=0+a; - P_oldscansrect[a]=P_scansrect[a]; + SDL_BlitSurface(background,NULL,screen,NULL); + print_room(); - if((P_scansrect[a].yR_gamearea_y)) - { - SDL_BlitSurface(player,&P_srcscan[a],screen,&P_scansrect[a]); - //SDL_UpdateRect(screen,P_scansrect[a].x,P_scansrect[a].y,P_scansrect[a].w,P_scansrect[a].h); - } + P_srcscan.h=1; + P_srcscan.y=P_h - scanpos_y; + P_srcscan.w=mplayer[dificulty].w; + P_srcscan.x=(mplayer[dificulty].w*(mplayer[dificulty].frame)); + P_scansrect.x=mplayer[dificulty].start_x+R_gamearea_x; + P_scansrect.w=mplayer[dificulty].w; + P_scansrect.h=1; + + for(int a=0;a<=R_gamearea_y + mplayer[dificulty].start_y + P_h - scanpos_y;a++) + { + P_scansrect.y=a; + SDL_BlitSurface(player,&P_srcscan,screen,&P_scansrect); } - if(scanpos_y=0;a--) - { - bakscansrect[a]=P_oldscansrect[a]; - P_oldscansrect[a].x-=R_gamearea_x; - P_oldscansrect[a].y-=R_gamearea_y; - SDL_BlitSurface(screenbak,&P_oldscansrect[a],screen,&bakscansrect[a]); - } } @@ -74,15 +76,15 @@ float fade_object(float alpha) SDL_SetAlpha(fadeobject,SDL_SRCALPHA,fadealpha); realfadingpos.x=R_gamearea_x+fadingpos.x;realfadingpos.y=R_gamearea_y+fadingpos.y;realfadingpos.w=fadingpos.w;realfadingpos.h=fadingpos.h; - SDL_BlitSurface(screenbak,&fadingpos,screen,&realfadingpos); + //SDL_BlitSurface(screenbak,&fadingpos,screen,&realfadingpos); SDL_BlitSurface(fadeobject,NULL,screen,&realfadingpos); //SDL_UpdateRect(screen,realfadingpos.x,realfadingpos.y,realfadingpos.w,realfadingpos.h+2); if(fadealpha<5) { fadingobject=0; - SDL_BlitSurface(screenbak,&fadingpos,screen,&realfadingpos); - print_room(); - SDL_Flip(screen); + //SDL_BlitSurface(screenbak,&fadingpos,screen,&realfadingpos); + //print_room(); + //SDL_Flip(screen); } else { @@ -107,10 +109,10 @@ void screen_fx() { Mix_PlayChannel(7,storm,0); blinkscreen(220,220,255,128); - load_room(); - print_room(); - } - } + //load_room(); + //print_room(); + } + } } } @@ -137,7 +139,7 @@ void bright_obj(int bright_x, int bright_y) objdstreal.y=bright_y*R_tileside+R_gamearea_y; objdstreal.w=R_tileside;objdst.h=R_tileside; - SDL_BlitSurface(screenbak,&brdst,screen,&brdstreal); + //SDL_BlitSurface(screenbak,&brdst,screen,&brdstreal); // SDL_BlitSurface(tiles,&objsrc,screen,&objdstreal); SDL_BlitSurface(bright,&brsrc,screen,&brdstreal); //SDL_UpdateRect(screen,brdstreal.x,brdstreal.y,brdstreal.w,brdstreal.h); @@ -156,8 +158,8 @@ void show_arrow(int arrow, int show) src.x=dst.x-R_gamearea_x; if(show==1) SDL_BlitSurface(left, NULL, screen, &dst); - else - SDL_BlitSurface(screenbak, &src, screen, &dst); + //else + //SDL_BlitSurface(screenbak, &src, screen, &dst); //SDL_UpdateRect(screen, dst.x, dst.y, dst.w, dst.h); break; @@ -166,8 +168,8 @@ void show_arrow(int arrow, int show) src.x=dst.x-R_gamearea_x; if(show==1) SDL_BlitSurface(right, NULL, screen, &dst); - else - SDL_BlitSurface(screenbak, &src, screen, &dst); + //else + //SDL_BlitSurface(screenbak, &src, screen, &dst); //SDL_UpdateRect(screen, dst.x, dst.y, dst.w, dst.h); break; diff --git a/project/jni/application/pachi/src/game.h b/project/jni/application/pachi/src/game.h index cb05a9a5a..20baaaad6 100644 --- a/project/jni/application/pachi/src/game.h +++ b/project/jni/application/pachi/src/game.h @@ -344,6 +344,7 @@ void chk_sequence() void game_loop() { + SDL_BlitSurface(background,NULL,screen,NULL); print_room(); delta_time(); do_gametimer(); // esta rutina decrementa e imprime el timer diff --git a/project/jni/application/pachi/src/intro.h b/project/jni/application/pachi/src/intro.h index ade77e558..5c372405e 100644 --- a/project/jni/application/pachi/src/intro.h +++ b/project/jni/application/pachi/src/intro.h @@ -56,58 +56,65 @@ void intro() int n=1; while(escape_exit==0) { - if(n<=4) // 4 son los pasos a realizar en la primer parte de la intro + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); + //if(n<=4) // 4 son los pasos a realizar en la primer parte de la intro { - if(title_alpha<255) { switch(n) { - case 1: - title_alpha=intro_blit(dragontech, 160, 100, 480, 170, title_alpha, 80, 1); - break; + default: + if(n==3) + title_alpha=intro_blit(line2, 160, 350, 600, 40, title_alpha, 80, 1); + else + intro_blit(line2, 160, 350, 600, 40, 255, 80, 1); case 2: - title_alpha=intro_blit(line1, 60, 300, 600, 40, title_alpha, 80, 1); - break; - case 3: - title_alpha=intro_blit(line2, 160, 350, 600, 40, title_alpha, 80, 1); - break; - case 4: - if(introtime>15) - title_alpha=intro_blit(black, 0,0,800,600, title_alpha, 80, 0); - break; + if(n==2) + title_alpha=intro_blit(line1, 60, 300, 600, 40, title_alpha, 80, 1); + else + intro_blit(line1, 60, 300, 600, 40, 255, 80, 1); + case 1: + if(n==1) + title_alpha=intro_blit(dragontech, 160, 100, 480, 170, title_alpha, 80, 1); + else + intro_blit(dragontech, 160, 100, 480, 170, 255, 80, 1); } } - else + if(title_alpha>=255) { title_alpha=0; n++; } } + SDL_Flip(screen); credits_events(); delta_time(); introtime+=imove; SDL_Delay(1); - if(introtime>20) + if(introtime>15) escape_exit=1; } escape_exit=0; n=1; title_alpha=0; introtime=0; while(escape_exit==0) { - if(title_alpha<255) + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); { - title_alpha=intro_blit(comic_01, 0, 0, 800, 600, title_alpha, 60, 0); + if(n == 1) + title_alpha=intro_blit(comic_01, 0, 0, 800, 600, title_alpha, 60, 0); + else + intro_blit(comic_01, 0, 0, 800, 600, 255, 60, 0); } - else + if(title_alpha>=255) { title_alpha=0; n++; } + SDL_Flip(screen); credits_events(); delta_time(); introtime+=imove; SDL_Delay(1); - if(introtime>25) + if(introtime>15) escape_exit=1; } diff --git a/project/jni/application/pachi/src/menu.h b/project/jni/application/pachi/src/menu.h index b3e52ac44..bfd53a0b6 100644 --- a/project/jni/application/pachi/src/menu.h +++ b/project/jni/application/pachi/src/menu.h @@ -102,7 +102,7 @@ void do_menu() if(menuvalue == 7) font = menufont1; else font = menufont; print_text(font, screen, 32, 32 ,305, menustartpos+(6*40), " EXIT"); - SDL_UpdateRect(screen, 300, 160, 240, 300); + //SDL_UpdateRect(screen, 300, 160, 240, 300); } void menu_loop() @@ -119,15 +119,18 @@ void menu() float alpha=0; while(alpha<255) { - alpha=intro_blit(background,0,0,800,600,alpha,200,0); - delta_time(); + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); + alpha=intro_blit(background,0,0,800,600,alpha,200,0); + SDL_Flip(screen); + delta_time(); } - SDL_Flip(screen); menuvalue=1; while(gameexit==0 && startgame==0 && help==0 && hiscores==0) { + SDL_BlitSurface(background, NULL, screen, NULL); menu_events(); - menu_loop(); + menu_loop(); + SDL_Flip(screen); } unload_menudata(); stop_music(); diff --git a/project/jni/application/pachi/src/monsters.h b/project/jni/application/pachi/src/monsters.h index 5d8d57ebf..f9eafb706 100644 --- a/project/jni/application/pachi/src/monsters.h +++ b/project/jni/application/pachi/src/monsters.h @@ -206,7 +206,7 @@ void print_monsters() monsterposreal.x = monsterpos.x + R_gamearea_x; monsterposreal.y = monsterpos.y + R_gamearea_y; - SDL_BlitSurface(screenbak, &oldmonsterpos, screen, &oldmonsterposreal); + //SDL_BlitSurface(screenbak, &oldmonsterpos, screen, &oldmonsterposreal); SDL_BlitSurface(monsters, &monstersrc, screen, &monsterposreal); //SDL_UpdateRect(screen,oldmonsterposreal.x,oldmonsterposreal.y,M_w,M_h); //SDL_UpdateRect(screen,monsterposreal.x,monsterposreal.y,M_w,M_h); diff --git a/project/jni/application/pachi/src/output.h b/project/jni/application/pachi/src/output.h index 0d358ea7b..81c49da4f 100644 --- a/project/jni/application/pachi/src/output.h +++ b/project/jni/application/pachi/src/output.h @@ -20,12 +20,12 @@ void screen_mode() { if(fullscreen) { - screen = SDL_SetVideoMode(screen_w,screen_h,screen_bpp,0); + screen = SDL_SetVideoMode(screen_w,screen_h,screen_bpp, SDL_HWSURFACE|SDL_DOUBLEBUF /* SDL_SWSURFACE */); fullscreen = 0; } else { - screen = SDL_SetVideoMode(screen_w,screen_h,screen_bpp,SDL_FULLSCREEN); + screen = SDL_SetVideoMode(screen_w,screen_h,screen_bpp, SDL_SWSURFACE); fullscreen = 1; } } @@ -148,8 +148,8 @@ void blinkscreen(int R,int G, int B, int A) { SDL_FillRect(screen,NULL,SDL_MapRGBA(screen->format,R,G,B,A)); SDL_Flip(screen); - setback(); - SDL_Flip(screen); + //setback(); + //SDL_Flip(screen); } void print_room() @@ -213,6 +213,10 @@ void print_room() void showcode(char *str) { + escape_exit=0; + while(escape_exit==0) + { + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); SDL_Rect code; code.x=280; code.y=220;code.w=240;code.h=50; SDL_FillRect(screen,&code,SDL_MapRGB(screen->format,255,255,255)); @@ -223,9 +227,6 @@ void showcode(char *str) print_text(scorefont1,screen,16,16,code.x+90,code.y+27,"%s",str); //SDL_UpdateRect(screen, code.x, code.y, code.w, code.h); SDL_Flip(screen); - escape_exit=0; - while(escape_exit==0) - { credits_events(); SDL_Delay(1); } @@ -244,13 +245,14 @@ void fadesurface(SDL_Surface *surface, int x, int y, int speed) float alpha=0; while(alpha<255) { - //SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); delta_time(); SDL_SetAlpha(surface, SDL_SRCALPHA, int(alpha)); SDL_BlitSurface(surface, NULL, screen, &dst); SDL_Flip(screen); alpha+=(speed*imove); } + SDL_FillRect(screen, NULL, SDL_MapRGB(screen->format,0,0,0)); SDL_SetAlpha(surface, 0, 0); SDL_BlitSurface(surface, NULL, screen, &dst); SDL_Flip(screen); @@ -266,7 +268,8 @@ float intro_blit(SDL_Surface *surface, int x, int y, int w, int h, float blit_al SDL_SetAlpha(surface, SDL_SRCALPHA, alpha); blit_alpha+=(speed*imove); SDL_BlitSurface(surface, NULL, screen, &dst); - SDL_UpdateRect(screen, dst.x, dst.y, dst.w, dst.h); + //SDL_UpdateRect(screen, dst.x, dst.y, dst.w, dst.h); + /* if(back==1) { if(blit_alpha<255) @@ -281,11 +284,13 @@ float intro_blit(SDL_Surface *surface, int x, int y, int w, int h, float blit_al { SDL_SetAlpha(surface, 0, 0); SDL_BlitSurface(surface, NULL, screen, &dst); - SDL_Flip(screen); + //SDL_Flip(screen); } + */ return(blit_alpha); } +/* float fade(SDL_Surface *surface, int x, int y, int w, int h, int R, int G, int B, int speed, float blit_alpha) { SDL_Rect dst; @@ -298,6 +303,7 @@ float fade(SDL_Surface *surface, int x, int y, int w, int h, int R, int G, int B SDL_UpdateRect(screen, dst.x, dst.y, dst.w, dst.h); return(blit_alpha); } +*/ void showposter(int num) { diff --git a/project/jni/application/pachi/src/player.h b/project/jni/application/pachi/src/player.h index cb01013f4..3689cd136 100644 --- a/project/jni/application/pachi/src/player.h +++ b/project/jni/application/pachi/src/player.h @@ -335,7 +335,7 @@ void clean_player() oldplayerposreal.x = oldplayerpos.x + R_gamearea_x; oldplayerposreal.y = oldplayerpos.y + R_gamearea_y; - SDL_BlitSurface(screenbak,&oldplayerpos,screen, &oldplayerposreal); + //SDL_BlitSurface(screenbak,&oldplayerpos,screen, &oldplayerposreal); } void print_player() {