couple fixes
[carveJwlIkooP6JGAAIwe30JlM.git] / menu.h
diff --git a/menu.h b/menu.h
index 21fa313e5edc9e6613c23ca64ad39c595969bd80..b407f4a6477d50147ce9ddee2b73b74c6055b751 100644 (file)
--- a/menu.h
+++ b/menu.h
@@ -16,7 +16,7 @@ VG_STATIC float       menu_input_cooldown = 0.0f;
 VG_STATIC float       menu_fov_target = 97.0f;
 VG_STATIC v2f         menu_extra_angles;
 
-VG_STATIC int         menu_loc = 1,
+VG_STATIC int         menu_loc = 0xb,
                       menu_loc_last = 1;
 VG_STATIC u32         menu_page     = 0;
 
@@ -35,6 +35,7 @@ VG_STATIC void menu_btn_map_a( int event );
 VG_STATIC void menu_btn_map_b( int event );
 VG_STATIC void menu_btn_map_c( int event );
 VG_STATIC void menu_btn_fuckoff( int event );
+VG_STATIC void menu_btn_reset( int event );
 
 struct menu_button
 {
@@ -50,19 +51,17 @@ struct menu_button
 VG_STATIC menu_buttons[] = 
 {
 /*0*/{"text_paused",     1, menu_btn_paused },
-/*1*/{"text_quit",       9, menu_btn_quit,    {3,-1,4,2}},
-/*2*/{"text_skater",     3, menu_btn_skater,  {3,1,4,-1}},
-/*3*/{"text_map",        5, menu_btn_map, {-1,-1,2,-1}},
+/*1*/{"text_quit",       9, menu_btn_quit,    {3,-1,4,0xb}},
+/*2*/{"text_skater",     3, menu_btn_skater,  {3,0xb,4,-1}},
+/*3*/{"text_map",        5, NULL, {-1,-1,2,-1}},
 /*4*/{"text_about_game", 1, NULL, {2,-1,-1,-1}},
 /*5*/{"skater_left",     2, NULL, {-1,-1,-1,-1}},
 /*6*/{"skater_right",    2, NULL, {-1,-1,-1,-1}},
-/*7*/{"map_a",           4, menu_btn_map_a,{8, -1, 9, 9 }},
-/*8*/{"map_b",           4, menu_btn_map_b,{-1,7,7,-1}},
-/*9*/{"map_c",           4, menu_btn_map_c,{7,7,-1,8}},
-/*a*/{"g_map",           5, NULL },
-/*b*/{"g_controls",      1, NULL },
-/*c*/{"text_quitty",     8, NULL },
-/*d*/{"text_yes",        8, menu_btn_fuckoff,{-1,-1,-1,-1} },
+/*7*/{"g_map",           5, NULL },
+/*8*/{"g_controls",      1, NULL },
+/*9*/{"text_quitty",     8, NULL },
+/*a*/{"text_yes",        8, menu_btn_fuckoff,{-1,-1,-1,-1} },
+/*b*/{"text_reset",      1, menu_btn_reset,{3,1,4,2} },
 };
 
 VG_STATIC void menu_btn_map_a( int event ){}
@@ -74,6 +73,15 @@ VG_STATIC void menu_btn_paused( int event )
 
 }
 
+VG_STATIC void menu_btn_reset( int event )
+{
+   reset_player(0,NULL);
+   world_routes_clear();
+
+   cl_menu_go_away = 1;
+   menu_page = 0;
+}
+
 VG_STATIC void menu_btn_fuckoff( int event )
 {
    glfwSetWindowShouldClose( vg.window, 1 );
@@ -82,7 +90,7 @@ VG_STATIC void menu_btn_fuckoff( int event )
 VG_STATIC void menu_btn_quit( int event )
 {
    menu_page = 0x8;
-   menu_loc = 0xd;
+   menu_loc = 0xa;
 }
 
 VG_STATIC void menu_btn_map( int event )
@@ -233,6 +241,10 @@ VG_STATIC void menu_page_skater(void)
 
    if( (fabsf(h) > 0.7f) && (menu_input_cooldown <= 0.0f) )
    {
+      audio_lock();
+      audio_play_oneshot( &audio_rewind[4], 1.0f );
+      audio_unlock();
+
       if( h < 0.0f )
       {
          cl_playermdl_id --;