oops
authorhgn <hgodden00@gmail.com>
Wed, 23 Aug 2023 17:15:26 +0000 (18:15 +0100)
committerhgn <hgodden00@gmail.com>
Wed, 23 Aug 2023 17:15:26 +0000 (18:15 +0100)
input.h
respawn.c

diff --git a/input.h b/input.h
index c5ce1e44109427b29ab4d0da9243b45c508c2005..1fc945fdd3870d9badccd25f61a30f28dcdb3eef 100644 (file)
--- a/input.h
+++ b/input.h
@@ -28,6 +28,9 @@ enum sr_bind{
    k_srbind_replay_play,
    k_srbind_replay_freecam,
    k_srbind_replay_resume,
+   k_srbind_world_left,
+   k_srbind_world_right,
+   k_srbind_home,
    k_srbind_max,
 };
 
@@ -43,6 +46,7 @@ enum sr_axis{
    k_sraxis_mbrowse_h,
    k_sraxis_mbrowse_v,
    k_sraxis_replay_h,
+   k_sraxis_mworld_h,
 
    k_sraxis_max
 };
@@ -109,6 +113,9 @@ static const char *button_display_string( enum sr_bind button )
     [k_srbind_camera] = controller_glyph( SDL_CONTROLLER_BUTTON_RIGHTSHOULDER ),
     [k_srbind_mleft]  = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_LEFT ),
     [k_srbind_mright] = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_RIGHT ),
+    [k_srbind_world_left]  = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_LEFT ),
+    [k_srbind_world_right] = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_RIGHT ),
+    [k_srbind_home] = controller_glyph( SDL_CONTROLLER_BUTTON_Y ),
     [k_srbind_mup]    = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_UP ),
     [k_srbind_mdown]  = controller_glyph( SDL_CONTROLLER_BUTTON_DPAD_DOWN ),
     [k_srbind_mback]  = controller_glyph( SDL_CONTROLLER_BUTTON_B ),
@@ -130,6 +137,9 @@ static const char *button_display_string( enum sr_bind button )
     [k_srbind_camera] = KEYBOARD_GLYPH( "C" ),
     [k_srbind_mleft]  = KEYBOARD_GLYPH( "\x93" ),
     [k_srbind_mright] = KEYBOARD_GLYPH( "\x95" ),
+    [k_srbind_world_left]  = KEYBOARD_GLYPH( "\x93" ),
+    [k_srbind_world_right] = KEYBOARD_GLYPH( "\x95" ),
+    [k_srbind_home] = KEYBOARD_GLYPH( "H" ),
     [k_srbind_mup]    = KEYBOARD_GLYPH( "\x94" ),
     [k_srbind_mdown]  = KEYBOARD_GLYPH( "\x96" ),
     [k_srbind_mback]  = "\xa3",
@@ -152,7 +162,8 @@ static const char *axis_display_string( enum sr_axis axis )
     [k_sraxis_grab]      = "\x90",
     [k_sraxis_mbrowse_h] = "\x88",
     [k_sraxis_mbrowse_v] = "\x89",
-    [k_sraxis_replay_h]  = "\x8f\x90"
+    [k_sraxis_replay_h]  = "\x8f\x90",
+    [k_sraxis_mworld_h]  = "\x93\x95"
    };
 
    const char *keyboard_table[ k_sraxis_max ] = {
@@ -160,6 +171,7 @@ static const char *axis_display_string( enum sr_axis axis )
     [k_sraxis_mbrowse_h] = KEYBOARD_GLYPH("\x93")KEYBOARD_GLYPH("\x95"),
     [k_sraxis_mbrowse_v] = KEYBOARD_GLYPH("\x96")KEYBOARD_GLYPH("\x94"),
     [k_sraxis_replay_h]  = KEYBOARD_GLYPH("Q")KEYBOARD_GLYPH("E"),
+    [k_sraxis_mworld_h] = KEYBOARD_GLYPH("\x93")KEYBOARD_GLYPH("\x95"),
    };
 
    if( vg_input.display_input_method == k_input_method_controller )
@@ -286,6 +298,9 @@ static void skaterift_preupdate_inputs(void)
    setbtn( k_srbind_camera,  vg_getkey(SDLK_c) );
    setbtn( k_srbind_mleft,   vg_getkey(SDLK_LEFT) );
    setbtn( k_srbind_mright,  vg_getkey(SDLK_RIGHT) );
+   setbtn( k_srbind_world_left,   vg_getkey(SDLK_LEFT) );
+   setbtn( k_srbind_world_right,  vg_getkey(SDLK_RIGHT) );
+   setbtn( k_srbind_home,  vg_getkey(SDLK_h) );
    setbtn( k_srbind_mup,     vg_getkey(SDLK_UP) );
    setbtn( k_srbind_mdown,   vg_getkey(SDLK_DOWN) );
    setbtn( k_srbind_mback,   vg_getkey(SDLK_ESCAPE) );
@@ -322,9 +337,11 @@ static void skaterift_preupdate_inputs(void)
 
    if( vg_getkey( SDLK_LEFT ) ){
       srinput.axis_states[ k_sraxis_mbrowse_h ][0] -= 1.0f;
+      srinput.axis_states[ k_sraxis_mworld_h ][0] -= 1.0f;
    }
    if( vg_getkey( SDLK_RIGHT ) ){
       srinput.axis_states[ k_sraxis_mbrowse_h ][0] += 1.0f;
+      srinput.axis_states[ k_sraxis_mworld_h ][0] += 1.0f;
    }
 
    if( vg_input.active_controller_index >= 0 ){
@@ -342,6 +359,9 @@ static void skaterift_preupdate_inputs(void)
       setbtn( k_srbind_camera, buttons[ SDL_CONTROLLER_BUTTON_RIGHTSHOULDER ] );
       setbtn( k_srbind_mleft,  buttons[ SDL_CONTROLLER_BUTTON_DPAD_LEFT ] );
       setbtn( k_srbind_mright, buttons[ SDL_CONTROLLER_BUTTON_DPAD_RIGHT ] );
+      setbtn( k_srbind_world_left, buttons[ SDL_CONTROLLER_BUTTON_DPAD_LEFT ] );
+      setbtn( k_srbind_world_right,buttons[ SDL_CONTROLLER_BUTTON_DPAD_RIGHT ]);
+      setbtn( k_srbind_home, buttons[ SDL_CONTROLLER_BUTTON_Y ] );
       setbtn( k_srbind_mup,    buttons[ SDL_CONTROLLER_BUTTON_DPAD_UP ] );
       setbtn( k_srbind_mdown,  buttons[ SDL_CONTROLLER_BUTTON_DPAD_DOWN ] );
       setbtn( k_srbind_mback,  buttons[ SDL_CONTROLLER_BUTTON_B ] );
index a8727fc3e213429fb23113e5438be433978f9ace..0cee183b94755a9300bb21e69d599707acea82dc 100644 (file)
--- a/respawn.c
+++ b/respawn.c
@@ -79,9 +79,9 @@ VG_STATIC void respawn_chooser_pre_update(void){
 
    gui_helper_action( joystick_display_string(k_srjoystick_steer,2), "move" );
    if( world_static.instances[0].status == k_world_status_loaded )
-      gui_helper_action( axis_display_string(k_sraxis_mbrowse_h), "world" );
+      gui_helper_action( axis_display_string(k_sraxis_mworld_h), "world" );
    gui_helper_action( button_display_string(k_srbind_maccept), "spawn" );
-   gui_helper_action( axis_display_string(k_sraxis_mbrowse_v), "home" );
+   gui_helper_action( button_display_string(k_srbind_home), "home" );
 
    if( button_down( k_srbind_mback ) ){
       srinput.enabled = 0;
@@ -104,30 +104,23 @@ VG_STATIC void respawn_chooser_pre_update(void){
       return;
    }
 
-   if( button_down( k_srbind_mleft ) ){
+   if( button_down( k_srbind_world_left ) ){
       if( respawn_chooser.world_id > 0 )
          respawn_chooser_setworld( respawn_chooser.world_id-1 );
    }
 
-   if( button_down( k_srbind_mright ) ){
+   if( button_down( k_srbind_world_right ) ){
       u32 next = respawn_chooser.world_id+1;
       if( next < vg_list_size(world_static.instances) )
          respawn_chooser_setworld( next );
    }
 
-   if( button_down(k_srbind_mup) ){
+   if( button_down(k_srbind_home) ){
       respawn_chooser.home_select ++;
       if( respawn_chooser.home_select >= vg_list_size(respawn_homes) )
          respawn_chooser.home_select = 0;
       respawn_chooser_gohome();
    }
-   else if( button_down(k_srbind_mdown) ){
-      if( respawn_chooser.home_select == 0 )
-         respawn_chooser.home_select = vg_list_size(respawn_homes)-1;
-      else
-         respawn_chooser.home_select --;
-      respawn_chooser_gohome();
-   }
 
    world_instance *world = &world_static.instances[ respawn_chooser.world_id ];
    v3f *bbx = world->scene_geo.bbx;