#include "gui.h"
#include "shaders/model_menu.h"
-struct global_menu menu;
+struct global_menu menu = { .skip_starter = 0 };
/*
* Attaches memory locations to the various items in the menu
}
mdl_close( &menu.model );
+
+ vg_console_reg_var( "skip_starter_menu", &menu.skip_starter,
+ k_var_dtype_i32, VG_VAR_PERSISTENT );
+}
+
+void menu_at_begin(void)
+{
+ if( menu.skip_starter ) return;
+
+ skaterift.activity = k_skaterift_menu;
+ menu.page = 0xffffffff;
+ menu_open_page( "Starter", k_ent_menuitem_stack_append );
}
/*
/*
* activate a pressable type
*/
-static void menu_trigger_item( ent_menuitem *item ){
+static void menu_trigger_item( ent_menuitem *item )
+{
if ( item->type == k_ent_menuitem_type_event_button ){
u32 q = item->button.pstr;
else if( MDL_CONST_PSTREQ( &menu.model, q, "prem_nevermind" ) ){
menu_close();
}
+ else if( MDL_CONST_PSTREQ( &menu.model, q, "starter_enter" ) )
+ {
+ if( network_client.auto_connect )
+ network_client.user_intent = k_server_intent_online;
+
+ menu_close();
+ }
}
- else if( item->type == k_ent_menuitem_type_page_button ){
+ else if( item->type == k_ent_menuitem_type_page_button )
+ {
menu_open_page( mdl_pstr( &menu.model, item->button.pstr ),
item->button.stack_behaviour );
}
- else if( item->type == k_ent_menuitem_type_toggle ){
+ else if( item->type == k_ent_menuitem_type_toggle )
+ {
if( item->pi32 ){
*item->pi32 = *item->pi32 ^ 0x1;
}