X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fmenuscr.c;h=7db554217b67e3724db0af68eb6d24f9fcf752d1;hb=HEAD;hp=43b920463c518496a81d1b44532779f31b623017;hpb=5c4d558de0e36ab49283c9c529b49b8d6b62f146;p=gbajam22 diff --git a/src/menuscr.c b/src/menuscr.c index 43b9204..7db5542 100644 --- a/src/menuscr.c +++ b/src/menuscr.c @@ -6,6 +6,7 @@ #include "input.h" #include "sprite.h" #include "debug.h" +#include "scoredb.h" enum { MENU_START, @@ -67,8 +68,8 @@ static int menuscr_start(void) wait_vblank(); spr_clear(); - cur_x = pos[0][0] - CUR_XOFFS; - cur_y = pos[0][1]; + cur_x = pos[sel][0] - CUR_XOFFS; + cur_y = pos[sel][1]; running = 1; return 0; @@ -85,11 +86,24 @@ static void menuscr_frame(void) { update_keyb(); - if(KEYPRESS(BN_START) || (sel == 0 && KEYPRESS(BN_A))) { + if(KEYPRESS(BN_START)) { change_screen(find_screen("game")); return; } + if(KEYPRESS(BN_A)) { + switch(sel) { + case MENU_START: + change_screen(find_screen("game")); + return; + case MENU_CTRL: + change_screen(find_screen("controls")); + return; + default: + break; + } + } + if(KEYPRESS(BN_DOWN) && sel <= NUM_MENU_ITEMS) { cur_x = pos[++sel][0] - CUR_XOFFS; cur_y = pos[sel][1]; @@ -101,6 +115,8 @@ static void menuscr_frame(void) if((KEYPRESS(BN_LEFT) || KEYPRESS(BN_RIGHT)) && sel == MENU_COLORS) { gba_colors ^= 1; setup_palette(); + scores[10].score = (scores[10].score & ~1) | (gba_colors & 1); + save_scores(); } wait_vblank();