Je pense être capable de programmer un jeu NeoGeo en C, le problème c'est qu'il faut de beaux sprites, et ça, c'est pas ma tasse de thé. C'est pour ça que faire le portage du jeu de Tarma ça serait cool

#define FRONT_START_X 157 #define FRONT_START_Y 24 #define FRONT_MIN_X 8 #define FRONT_MAX_X 307 #define FRONT_MIN_Y 16 #define FRONT_MAX_Y 24 #define BACK_MIN_X 8 #define BACK_MAX_X 149 #define BACK_MIN_Y 5 #define BACK_MAX_Y 8 extern BYTE ffbg_a_Palettes[]; extern WORD ffbg_a_Map[]; extern BYTE ffbg_b_Palettes[]; extern WORD ffbg_b_Map[]; extern BYTE ffbg_c_Palettes[]; extern WORD ffbg_c_Map[]; int main(void) { int i; BYTE p1, p2; int x=FRONT_START_X; int y=FRONT_START_Y; int carx=320; int cary=106; Scroller backScroll, frontScroll; Picture car; volMEMWORD(0x401ffe)=0x5f0f; //purple BG volMEMWORD(0x3c0006)=0x1c00; //autoanim speed clearFixLayer(); initGfx(); scrollerInit(&backScroll, &ffbg_a_Map[0], 1, 16, ((x-8)/2)+8, 8); palJobPut(16,ffbg_a_Palettes[PAL_SIZE],ffbg_a_Palettes); scrollerInit(&frontScroll, &ffbg_b_Map[0], 25, 25, x, y); palJobPut(25,ffbg_b_Palettes[PAL_SIZE],ffbg_b_Palettes); pictureInit(&car, &ffbg_c_Map[0],50, 50, carx, cary); palJobPut(50,ffbg_c_Palettes[PAL_SIZE],ffbg_c_Palettes); SCClose(); while(1) { wait_vblank(); for(i=0;i<4000;i++); jobMeterColor(JOB_BLUE); p1=volMEMBYTE(P1_CURRENT); p2=volMEMBYTE(P2_CURRENT); if(p1&JOY_UP) y--; if(p1&JOY_DOWN) y++; if(p1&JOY_LEFT) x--; if(p1&JOY_RIGHT) x++; if(x<FRONT_MIN_X) x=FRONT_MIN_X; else if(x>FRONT_MAX_X) x=FRONT_MAX_X; if(y<FRONT_MIN_Y) y=FRONT_MIN_Y; else if(y>FRONT_MAX_Y) y=FRONT_MAX_Y; if(x>161) { cary=106+(24-y); pictureSetPos(&car,320-(x-161),cary); } else pictureSetPos(&car,320,cary); scrollerSetPos(&frontScroll, x, y); scrollerSetPos(&backScroll, (((x-8)*141)/299)+BACK_MIN_X, (((y-16)*3)/8)+BACK_MIN_Y); jobMeterColor(JOB_GREEN); SCClose(); } }
Commentaire