projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
update helpers/location to 'frosted' ui
[carveJwlIkooP6JGAAIwe30JlM.git]
/
menu.c
diff --git
a/menu.c
b/menu.c
index d5c8d5ed1d11401a3c5aac45a1635b7cc5d0f800..ed69945eaebd64cb9ba8b8f85122fcec967a043e 100644
(file)
--- a/
menu.c
+++ b/
menu.c
@@
-217,10
+217,16
@@
void menu_open_page( const char *name,
*/
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 ){
+ audio_lock();
+ audio_oneshot( &audio_ui[0], 1.0f, 0.0f );
+ audio_unlock();
+
+ if ( item->type == k_ent_menuitem_type_event_button )
+ {
u32 q = item->button.pstr;
u32 q = item->button.pstr;
- if( MDL_CONST_PSTREQ( &menu.model, q, "quit" ) ){
+ if( MDL_CONST_PSTREQ( &menu.model, q, "quit" ) )
+ {
vg.window_should_close = 1;
}
else if( MDL_CONST_PSTREQ( &menu.model, q, "map" ) ){
vg.window_should_close = 1;
}
else if( MDL_CONST_PSTREQ( &menu.model, q, "map" ) ){
@@
-298,20
+304,32
@@
static void menu_setitem_type( ent_menuitem *item,
*/
void menu_update(void)
{
*/
void menu_update(void)
{
+ static f32 repeater = 0.0f;
+ if( repeater > 0.0f )
+ repeater -= vg.time_frame_delta;
+
if( workshop_form.page != k_workshop_form_hidden ){
return;
}
if( workshop_form.page != k_workshop_form_hidden ){
return;
}
- int escape = button_down( k_srbind_mback );
- if( menu.credits_open || vg.settings_open ){
- if( escape ){
+ bool escape = 0;
+
+ if( menu.credits_open || vg.settings_open )
+ {
+ vg_exec_input_program( k_vg_input_type_button_u8,
+ input_button_list[k_srbind_mback], &escape );
+ if( escape )
+ {
menu.credits_open = 0;
if( vg.settings_open )
vg_settings_close();
menu.credits_open = 0;
if( vg.settings_open )
vg_settings_close();
+
+ srinput.state = k_input_state_resume;
}
return;
}
}
return;
}
+ escape = button_down( k_srbind_mback );
if( button_down( k_srbind_mopen ) ){
if( skaterift.activity == k_skaterift_default ){
if( button_down( k_srbind_mopen ) ){
if( skaterift.activity == k_skaterift_default ){
@@
-469,7
+487,8
@@
void menu_update(void)
menu_back_page();
}
else if( menu.loc ){
menu_back_page();
}
else if( menu.loc ){
- if( ui_click_down( UI_MOUSE_LEFT ) ){
+ if( ui_click_down( UI_MOUSE_LEFT ) )
+ {
menu_trigger_item( menu.loc );
}
}
menu_trigger_item( menu.loc );
}
}
@@
-510,16
+529,21
@@
void menu_update(void)
mh = 0;
}
mh = 0;
}
- if( escape ){
+ if( escape )
+ {
menu_back_page();
menu_back_page();
+ audio_lock();
+ audio_oneshot( &audio_ui[3], 1.0f, 0.0f );
+ audio_unlock();
}
}
- else if( enter ){
+ else if( enter )
+ {
menu_trigger_item( menu.loc );
}
else if( mh||mv ){
v3f opt;
v3_zero( opt );
menu_trigger_item( menu.loc );
}
else if( mh||mv ){
v3f opt;
v3_zero( opt );
- f32 best = 0.
707
f;
+ f32 best = 0.
5
f;
ent_menuitem *nextpos = NULL;
opt[0] += mh;
ent_menuitem *nextpos = NULL;
opt[0] += mh;
@@
-543,8
+567,13
@@
void menu_update(void)
}
}
}
}
- if( nextpos ){
+ if( nextpos && (repeater <= 0.0f) )
+ {
menu.loc = nextpos;
menu.loc = nextpos;
+ audio_lock();
+ audio_oneshot( &audio_ui[3], 1.0f, 0.0f );
+ audio_unlock();
+ repeater += 0.1f;
}
}
}
}
}
}